0

所以我设法在点击时在 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
4

1 回答 1

0

我在这里错过了什么吗,这条线......

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

应该是

new OpenLayers.Geometry.Point(lon,lat)

或者反过来(纬度,经度),我永远记不得了。据我所知,您正在使用的代码是在坐标“100,100”处创建的,并且您永远不会使用您抓取的 lon 和 lat 变量。

于 2012-08-13T10:14:04.597 回答