如何获取多边形的中心点坐标

0 投票
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);

  通过坐标点绘制一个多边形,如果计算多边形的中心点。有没有具体的算法
7月 19, 2017 分类:  1621次浏览 | 用户: 陈晓东1 才疏学浅 (18 分)

2 个回答

0 投票

您好,您可以使用getCentroid。

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

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

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