全,
我使用ArcGIS组件来显示地图。我想让给定的位置显示在我的浏览器页面的中心。我有左侧导航栏/顶部导航栏,其余空间由ArcGIS地图组件占用。
有人能帮我这个忙吗?
提亚
发布于 2012-08-24 02:46:16
假设你已经将你的地图命名为" map ":
map.extent = map.extent.centerAt(new MapPoint(myX, myY));注意,centerAt()不会更改地图范围,它会创建一个新的地图范围,您可以将地图的范围设置为该范围。
编辑:
这比较复杂,但它将找到您传递给您的控制的真正中心:
public function centerAtXY(relativeTo:DisplayObject, x:Number, y:Number):void
{
//Get the center of the displayobject's position on the map
var offsetPoint:MapPoint = map.toMapFromStage(relativeTo.width /2, relativeTo.height /2);
//Find the distance between the map's center and the display's center in map units
var offsetX:Number = map.extent.center.x - offsetPoint.x;
var offsetY:Number = map.extent.center.y - offsetPoint.y;
//Recenter the map so x,y is at the center of the displayobject
var centerPoint:MapPoint = new MapPoint(x + offsetX, y + offsetY);
map.extent = map.extent.centerAt(centerPoint);
}https://stackoverflow.com/questions/12097946
复制相似问题