1.首先要获取多边形的一个中心点(因为地图定位中心点map.center(mapPoint) 需要一个点)
var sGeometry = feature.geometry;//获取图形
var centerPoint = sGeometry.getCentroid();//获取多边形中心点
获取多边形中心点另一种方法
feature.geometry.getExtent().getCenter()没弄全主要就一句
sGeometry.getCentroid();
sGeometry 就是你获取的这个多边形图形
getCentroid() 获取多边形中心点方法
2.至于定位就简单了
/*---------------------定位----------------------*/
function setCenter(results) {
map.graphics.clear();
// var symbolHere = new esri.symbols.FillSymbol();
// symbolHere.setColor(new esri.Color("red"));
var feature = results.features[0];//获取要素
if (isEmpty(feature)) {
alert('未找到该点信息');
return;
}
var sGeometry = feature.geometry;//获取图形
var centerPoint = sGeometry.getCentroid();//获取多边形中心点
var cPoint = new esri.geometry.Point();
cPoint.x = centerPoint.x;
cPoint.y = centerPoint.y;
map.centerAt(cPoint);
// feature.setSymbol(polygonSymbol);
var graphic = new esri.Graphic(sGeometry, polygonSymbol);
map.graphics.add(graphic);
}
本文介绍了如何在地图应用中定位一个多边形的中心点。通过两种方法获取多边形中心点:一是使用sGeometry.getCentroid()直接获取;二是通过获取多边形范围再求中心。接着详细展示了如何利用获取到的中心点进行地图定位。
741

被折叠的 条评论
为什么被折叠?



