你没有直接提到这个例程是否能适应3D,但这一行:
myLine3d=新几何体。Line3d(myMainLine.StartPoint,myMainLine.EndPoint)
这表明它可能。
如果是这样的话(在任何一种情况下都允许使用3d,这不是一个坏主意),那么我会尝试使用这个事件序列。
- myMainLine3d = New Geometry.Line3d(myMainLine.StartPoint, myMainLine.EndPoint)
- myNextLine3d = New Geometry.Line3d(myNextLine.StartPoint, myNextLine.EndPoint)
- [u]//Comment Determine where on mainline a perpline should originate (end, middle, etc.) and set it to perpPoint.//Comment[/u]
- myPlane3D = New Plane(perpPoint, myMainLine3d.Direction)
在下一条线上得到罪犯分数。
- perpNextPt = myNextLine3d.IntersectWith(myPlane3D)
现在可以从perpPoint到perpNextPt创建一条线。 |