OpenLayers圆始终显示在原点

OpenLayers circle always appears at origin

本文关键字:原点 显示 OpenLayers      更新时间:2023-09-26

所以我成功地在点击时在OpenLayers中创建了一个圆圈。但是,圆圈总是出现在地图的原点,我希望它出现在我单击的任何位置。这是我的代码-

 circleStyle = {
      strokeColor: "#FF0000",
      strokeOpacity: 1,
      strokeWidth: 3,
      fillOpacity: 0.8
    }
lon = mapApp.get("mapModel").get("mouse").get("longitude")
    lat = mapApp.get("mapModel").get("mouse").get("latitude")
    circleLayer = new OpenLayers.Layer.Vector "Alpr GeoSearch"
    circle = new OpenLayers.Geometry.Polygon.createRegularPolygon(
      new OpenLayers.Geometry.Point(100,100),
      10000,
      60
      )
    feature = new OpenLayers.Feature.Vector(circle,testPoint,circleStyle)
    circleLayer.addFeatures(feature)
    console.log(circleLayer)
    mapApp.map.openLayersMap.addLayer circleLayer

我这里遗漏了什么吗,这一行。。。

new OpenLayers.Geometry.Point(100,100),

肯定应该是

new OpenLayers.Geometry.Point(lon,lat)

或者反过来(lat,lon),我永远记不起来了。据我所见,您正在使用的代码是在坐标"100100"处创建的,并且您从未使用您获取的lon和lat变量。