建立直線(Line),PolyLine,及三維多線段(PolyLine3d)
阿新 • • 發佈:2019-02-13
Imports ZwSoft.ZwCAD.Runtime
Imports ZwSoft.ZwCAD.ApplicationServices
Imports ZwSoft.ZwCAD.DatabaseServices
Imports ZwSoft.ZwCAD.Geometry
Public Class Class1
Dim ZcDoc As Document = Application.DocumentManager.MdiActiveDocument
Dim ZcDB As Database = ZcDoc.Database
Using ZcTran As Transaction = ZcDB.TransactionManager.StartTransaction
Dim ZcBLT As BlockTable = ZcTran.GetObject(ZcDB.BlockTableId, OpenMode.ForRead)
Dim ZcBLTR As BlockTableRecord = ZcTran.GetObject(ZcBLT(BlockTableRecord.ModelSpace), OpenMode.ForWrite)
Dim line As Line = New Line(New Point3d(0, 0, 0), New Point3d(10, 10, 0))
ZcBLTR.AppendEntity(line)
ZcTran.AddNewlyCreatedDBObject(line, True)
Dim LWline As Polyline = New Polyline()
LWline.AddVertexAt(0, New Point2d(20, 20), 0, 0, 0)
LWline.AddVertexAt(1, New Point2d(15, 210), 0, 0, 0)
LWline.AddVertexAt(2, New Point2d(120, 320), 0, 0, 0)
ZcBLTR.AppendEntity(LWline)
ZcTran.AddNewlyCreatedDBObject(LWline, True)
Dim pts As Point3dCollection = New Point3dCollection
pts.Add(New Point3d(15, 15, 0))
pts.Add(New Point3d(125, 135, 0))
pts.Add(New Point3d(115, 515, 0))
Dim ThrDline As Polyline3d = New Polyline3d(Poly3dType.SimplePoly, pts, True)
ZcBLTR.AppendEntity(ThrDline)
ZcTran.AddNewlyCreatedDBObject(ThrDline, True)
ZcTran.Commit()
End Using
ZcDoc.SendStringToExecute("_.ZOOM _E ", True, False, False)
End Sub
End Class
Imports ZwSoft.ZwCAD.ApplicationServices
Imports ZwSoft.ZwCAD.DatabaseServices
Imports ZwSoft.ZwCAD.Geometry
Public Class Class1
<CommandMethod("AddLines")> _
Public Sub AddLines()Dim ZcDoc As Document = Application.DocumentManager.MdiActiveDocument
Dim ZcDB As Database = ZcDoc.Database
Using ZcTran As Transaction = ZcDB.TransactionManager.StartTransaction
Dim ZcBLT As BlockTable = ZcTran.GetObject(ZcDB.BlockTableId, OpenMode.ForRead)
Dim ZcBLTR As BlockTableRecord = ZcTran.GetObject(ZcBLT(BlockTableRecord.ModelSpace), OpenMode.ForWrite)
Dim line As Line = New Line(New Point3d(0, 0, 0), New Point3d(10, 10, 0))
ZcBLTR.AppendEntity(line)
ZcTran.AddNewlyCreatedDBObject(line, True)
Dim LWline As Polyline = New Polyline()
LWline.AddVertexAt(0, New Point2d(20, 20), 0, 0, 0)
LWline.AddVertexAt(1, New Point2d(15, 210), 0, 0, 0)
LWline.AddVertexAt(2, New Point2d(120, 320), 0, 0, 0)
ZcBLTR.AppendEntity(LWline)
ZcTran.AddNewlyCreatedDBObject(LWline, True)
Dim pts As Point3dCollection = New Point3dCollection
pts.Add(New Point3d(15, 15, 0))
pts.Add(New Point3d(125, 135, 0))
pts.Add(New Point3d(115, 515, 0))
Dim ThrDline As Polyline3d = New Polyline3d(Poly3dType.SimplePoly, pts, True)
ZcBLTR.AppendEntity(ThrDline)
ZcTran.AddNewlyCreatedDBObject(ThrDline, True)
ZcTran.Commit()
End Using
ZcDoc.SendStringToExecute("_.ZOOM _E ", True, False, False)
End Sub
End Class