1

我是 catia 和 vba 编程的新手。

我试图从边缘获取起始端点,以计算截取点。

它很容易,因为RectilinearTriDimFeatEdge它提供了一个 GetOrigin 和 GetDirection 方法,其中端点可以通过origin + length * direction. 但是对于像我这样的其他类型,BiDimFeatEdge我什至没有得到原点。

有没有办法从每种类型的边缘获取起点和终点?谢谢

4

1 回答 1

2

对于开放曲线,您可以简单地将点放在曲线的每一侧,函数如下所示,其中 iCurve 是您的输入,iBeginEnd 是从您想要的一侧切换。

Private Function endPoint(iCurve As Reference, Optional iBeginEnd As Boolean = False) As HybridShapePointOnCurve
    Set endPoint = CATIA.ActiveDocument.Part.HybridShapeFactory.AddNewPointOnCurveFromDistance(iCurve, 0#, iBeginEnd)
End Function

或者您可以在所需方向使用极值

这当然不适用于闭合曲线,因为它们没有起点和终点,但是如果您需要解决方案,请询问..

如果您只是想获得物体的长度,那么有更简单的测量方法。

于 2016-03-29T08:38:45.187 回答