当前位置: 首页> 文旅> 艺术 > ArcGIS Pro SDK (九)几何 8 线段

ArcGIS Pro SDK (九)几何 8 线段

时间:2025/8/26 16:56:04来源:https://blog.csdn.net/szy13323042191/article/details/140551296 浏览次数:0次

ArcGIS Pro SDK (九)几何 8 线段

文章目录

  • ArcGIS Pro SDK (九)几何 8 线段
    • 1 使用两个地图点构造线段
    • 2 更改线段坐标

环境:Visual Studio 2022 + .NET6 + ArcGIS Pro SDK 3.0

1 使用两个地图点构造线段

// 使用 builderEx 的便捷方法或使用 builderEx 构造函数。MapPoint startPt = MapPointBuilderEx.CreateMapPoint(1.0, 1.0);
MapPoint endPt = MapPointBuilderEx.CreateMapPoint(2.0, 1.0);// BuilderEx 的便捷方法不需要在 MCT 上运行。
LineSegment lineFromMapPoint = LineBuilderEx.CreateLineSegment(startPt, endPt);// coordinate2D
Coordinate2D start2d = (Coordinate2D)startPt;
Coordinate2D end2d = (Coordinate2D)endPt;LineSegment lineFromCoordinate2D = LineBuilderEx.CreateLineSegment(start2d, end2d);// coordinate3D
Coordinate3D start3d = (Coordinate3D)startPt;
Coordinate3D end3d = (Coordinate3D)endPt;LineSegment lineFromCoordinate3D = LineBuilderEx.CreateLineSegment(start3d, end3d);// lineSegment
LineSegment anotherLineFromLineSegment = LineBuilderEx.CreateLineSegment(lineFromCoordinate3D);// builderEx 的构造函数不需要在 MCT 上运行
LineBuilderEx lbEx = new LineBuilderEx(startPt, endPt);
lineFromMapPoint = lbEx.ToSegment() as LineSegment;lbEx = new LineBuilderEx(start2d, end2d);
lineFromCoordinate2D = lbEx.ToSegment() as LineSegment;lbEx = new LineBuilderEx(start3d, end3d);
lineFromCoordinate3D = lbEx.ToSegment() as LineSegment;lbEx = new LineBuilderEx(startPt, endPt);
lineFromMapPoint = lbEx.ToSegment() as LineSegment;lbEx = new LineBuilderEx(lineFromCoordinate3D);
anotherLineFromLineSegment = lbEx.ToSegment() as LineSegment;

2 更改线段坐标

// builderEx 的构造函数不需要在 MCT 上运行
LineBuilderEx lbuilderEx = new LineBuilderEx(lineSegment);
// 查找现有的坐标
lbuilderEx.QueryCoords(out startPt, out endPt);// 或者使用
//startPt = lbuilderEx.StartPoint;
//endPt = lbuilderEx.EndPoint;// 更新坐标
lbuilderEx.SetCoords(GeometryEngine.Instance.Move(startPt, 10, 10) as MapPoint, GeometryEngine.Instance.Move(endPt, -10, -10) as MapPoint);// 或者使用
//lbuilderEx.StartPoint = GeometryEngine.Instance.Move(startPt, 10, 10) as MapPoint;
//lbuilderEx.EndPoint = GeometryEngine.Instance.Move(endPt, -10, -10) as MapPoint;LineSegment segment2 = lbuilderEx.ToSegment() as LineSegment;
关键字:ArcGIS Pro SDK (九)几何 8 线段

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: