CaveMan 发表于 2022-7-6 22:33:01

VB。Net定义UCS到线条

很好的一天
 
寻求帮助
 

 
如上图所示
我想让用户选择线来插入选定的部分,并根据线将其挤出
 
必须使UCS垂直于线的端点,插入截面,然后将其挤出到与所选线长度相同的位置。
 
只需要帮助定义线路的UCS??
 
非常感谢您的帮助
 
提前感谢

fixo 发表于 2022-7-6 22:58:17

未测试:

Public Shared Sub UcsByLine(ln As Line)
Dim pt1 As Point3d = ln.StartPoint
Dim pt2 As Point3d = ln.EndPoint
Dim ed As Editor = Application.DocumentManager.MdiActiveDocument.Editor
Dim zAxis As Vector3d = ed.CurrentUserCoordinateSystem.CoordinateSystem3d.Zaxis
Dim xAxis As Vector3d = pt1.GetVectorTo(pt2).GetNormal()
Dim yAxis As Vector3d = zAxis.CrossProduct(xAxis).GetNormal()
Dim mat As Matrix3d = Matrix3d.AlignCoordinateSystem(Point3d.Origin, Vector3d.XAxis, Vector3d.YAxis, Vector3d.ZAxis, pt1, xAxis, _
yAxis, zAxis)
ed.CurrentUserCoordinateSystem = mat
'ed.UpdateTiledViewportsFromDatabase();
End Sub

 
~'J'~

BIGAL 发表于 2022-7-6 23:06:30

也许旋转3D更容易吗?

CaveMan 发表于 2022-7-6 23:24:18

谢谢你
 
我(我们)的申请很顺利
再次确认您的输入
 
享受这一天

fixo 发表于 2022-7-6 23:41:09

很抱歉反应太晚
我把这条线索丢了
不客气
快乐编码
当做
 
奥列格
页: [1]
查看完整版本: VB。Net定义UCS到线条