未测试:
-
- 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'~ |