"Erase" de uma entidade.
A explicação desta operação está explicada no código para melhor perceção do funcionamento.
Temos então o código:
Imports ZwSoft.ZwCAD.ApplicationServices
Imports ZwSoft.ZwCAD.DatabaseServices
Imports ZwSoft.ZwCAD.Runtime
Imports ZwSoft.ZwCAD.Geometry
Public Class EraseObject
Dim ZWDoc As Document = Application.DocumentManager.MdiActiveDocument
Dim ZWCurDb As Database = ZWDoc.Database
< CommandMethod("NewErase")> _
Public Sub NewErase()
Using ZWTrans As Transaction = ZWCurDb.TransactionManager.StartTransaction()
Dim ZWBlkTbl As BlockTable = ZWTrans.GetObject(ZWCurDb.BlockTableId, OpenMode.ForRead)
Dim ZWBlkTblRec As BlockTableRecord = ZWTrans.GetObject(ZWBlkTbl(BlockTableRecord.ModelSpace), OpenMode.ForWrite)
'Criação da Linha de código para ser posteriormente apagada com a ordem erase.
Dim ZWLine As New Line
ZWLine = New Line(New Point3d(1, 2, 0), New Point3d(6, 7, 0))
ZWLine.SetDatabaseDefaults()
ZWBlkTblRec.AppendEntity(ZWLine)
ZWTrans.AddNewlyCreatedDBObject(ZWLine, True)
'Linha de comando com a ordem erase para apagar a linha criada (ZWLine)
ZWLine.Erase() 'Erase
ZWTrans.Commit()
End Using
End Sub
Após escrever o código, deve-se criar o dll. No ZWCad, na linha de comando: netload carregar o dll criado. na linha de comando chamamos então o comando criado neste caso: NewErase.
Vamos lá experimentar.
Cumprimentos.
Sem comentários:
Enviar um comentário