有没有办法用曲线拆解折线,以便我可以检查每条切线之间的角度?

问题描述 投票:0回答:1

我是 AutoCAD 插件编程和 C# 的新手。我正在尝试在 C# 中为我正在编写的函数沿折线放置点,我需要知道何时放置该点,它是否位于弯曲部分,以及两端切线之间的角度是多少的弯曲部分。一条折线可能有多条曲线,但它们之间总是有切线。

我当前的函数(没有附加功能)从模型空间获取折线输入,并使用 GetPointAtDist 以设定的间隔计算沿折线的点。我不太确定从哪里开始获取我需要的附加信息。我想也许我可以沿着折线构建直线和曲线,这样我就可以为每个线段/曲线分配一个变量,但这似乎效率低下。

autocad autocad-plugin
1个回答
0
投票

你可以得到切向量,然后你可以得到向量之间的角度

Point3d p0 = axis.GetPointAtDist(d0);
Vector3d v0 = axis.GetFirstDerivative(p0);    
Point3d px = axis.GetPointAtDist(curentDist);    
Vector3d v = axis.GetFirstDerivative(px);    
double angle = v.GetAngleTo(v0);
© www.soinside.com 2019 - 2024. All rights reserved.