加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

AGS FLEX 求线/面的中心点

发布时间:2020-12-15 04:15:06 所属栏目:百科 来源:网络整理
导读:在API中用线/面元素.extent.center拿到的中心点实际上是线面元素围成的矩形框的内点,这个点往往不在线/面上面,下面的方法就能算出线/面的中心点。 private function getGeomCenter(gra:Graphic):MapPoint ??????????? { ??????????????? var pt:MapPoint;


在API中用线/面元素.extent.center拿到的中心点实际上是线面元素围成的矩形框的内点,这个点往往不在线/面上面,下面的方法就能算出线/面的中心点。

private function getGeomCenter(gra:Graphic):MapPoint
??????????? {
??????????????? var pt:MapPoint;
?????????????????? switch (gra.geometry.type)
?????????????????? {
?????????????????? case Geometry.MAPPOINT:
?????????????????? {
??????????????????????? pt = gra.geometry as MapPoint;
??????????????????????? break;
?????????????????? }
?????????????????? case Geometry.POLYLINE:
?????????????????? {
?????????????????????????? var pl:Polyline = gra.geometry as Polyline;
?????????????????????????? var pathCount:Number = pl.paths.length;
?????????????????????????? var pathIndex:int = int((pathCount / 2) - 1);
?????????????????????????? var midPath:Array = pl.paths[pathIndex];
?????????????????????????? var ptCount:Number = midPath.length;
?????????????????????????? var ptIndex:int = int((ptCount / 2) - 1);
?????????????????????????? pt = pl.getPoint(pathIndex,ptIndex);
?????????????????????????? break;
?????????????????? }
?????????????????? case Geometry.POLYGON:
?????????????????? {
??????????????????????? var poly:Polygon = gra.geometry as Polygon;
??????????????????????? var RingCount:Number = poly.rings.length;
?????????????????????????? var ringIndex:int = int((RingCount / 2) - 1);
?????????????????????????? var midRing:Array = poly.rings[ringIndex];
?????????????????????????? var ptRingCount:Number = midRing.length;
?????????????????????????? var ptRingIndex:int = int((ptRingCount / 2) - 1);
?????????????????????????? pt=poly.getPoint(ringIndex,ptRingIndex);
??????????????????????? break;
?????????????????? }
??????????????? }
??????????????? return pt;
??????????? }???????????

0
0
0
(请您对文章做出评价)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读