首页 > 其他 > 详细

Engine中如何获取面的中心点?并且保证该点位于面内

时间:2020-05-14 17:45:56      阅读:69      评论:0      收藏:0      [点我收藏+]

【解决办法】:
将IPolygon转为IArea,使用IArea.LabelPoint 获取标注位置的点,该点肯定位于面内,而IArea.Centroid方法则是获取面的重心,但不一定位于面内。

IPolygon polygon = feature.Shape as IPolygon;
IArea area = polygon as IArea;
var PolygonPoint = area.LabelPoint; //获取面的中心点,并且保证该点位于面内?将IPolygon转为IArea,使用IArea.LabelPoint 获取标注位置的点,该点肯定位于面内,而IArea.Centroid方法则是获取面的重心,但不一定位于面内。
xpolygon = PolygonPoint.X.ToString();//面的中心点的x坐标
ypolygon = PolygonPoint.Y.ToString();

Engine中如何获取面的中心点?并且保证该点位于面内

原文:https://www.cnblogs.com/774249302com/p/12890244.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!