首页 / 浏览问题 / / 问题详情
如何获取多边形的中心点坐标
陈晓东1  (18分)  才疏学浅
7月19日, 2017
var vector = new SuperMap.Layer.Vector("vector");

 var points=new Array();

 points.push(new SuperMap.Geometry.Point(data[i].LON,data[i].LAT))

 var line =  new SuperMap.Geometry.LinearRing(points);
 var lineVector = new SuperMap.Feature.Vector(line);
 lineVector.style={
             strokeColor:"red",
             fill:false,
             strokeWidth:2};
  vector.addFeatures(lineVector);
  map.addLayer(vector);

  通过坐标点绘制一个多边形,如果计算多边形的中心点。有没有具体的算法

2 个回答

您好,您可以使用getCentroid。

李熙y  (4,524分)  名扬四海
7月19日, 2017
谢谢 我试一下
1、如果中心点指的是线对象的质心,那么geometry类的getCentroid()的方法就可以直接获取到质心。

2、如果中心点指的是组成线对象的结点中最中间的那个,那么可以从线对象的geometry中获取到构成该对象的结点数组,然后取中间的那个即可。

3、如果中心点指的是按照线对象的长度划分,长度一半的时候的那个点,请参考iClient for js的示范程序中的里程定点。
郑雅琳  (1,603分)  名扬四海
7月19日, 2017
...