ArcGIS Engine计算两条线夹角

可以将形成夹角的两条线简化成三个点,Point1、Point2、Point3;第一条线Point1-Point2,第二条线Point2-Point3

以Point2为起始点 构建两条ILine(pLine21、pLine23),分别计算两条ILine的角度angle1、angle2

            ESRI.ArcGIS.Geometry.ILine pLine21 = new ESRI.ArcGIS.Geometry.LineClass();
            pLine21.PutCoords(pPoint2.Shape as ESRI.ArcGIS.Geometry.IPoint, pPoint1.Shape as ESRI.ArcGIS.Geometry.IPoint);

            double angle1 = (pLine21.Angle * 180 / Math.PI);
            if (Math.Abs(angle1) > 90)
                angle1 = 180 - Math.Abs(angle1);
            else
                angle1 = Math.Abs(angle1);

            ESRI.ArcGIS.Geometry.ILine pLine23 = new ESRI.ArcGIS.Geometry.LineClass();
            pLine23.PutCoords(pPoint2.Shape as ESRI.ArcGIS.Geometry.IPoint, pPoint3.Shape as ESRI.ArcGIS.Geometry.IPoint);

            double angle2 = (pLine23.Angle * 180 / Math.PI);
            if (Math.Abs(angle2) > 90)
                angle2 = 180 - Math.Abs(angle2);
            else
                angle2 = Math.Abs(angle2);

pLine21、pLine23夹角

double angle = 180 - angle1 - angle2;

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值