Você está aqui: AutoCAD Civil 3D .NET C# ::: Dicas & Truques ::: Parcels (Parcelas, Lotes, Loteamento) |
Como exibir a área de um lote no Civil 3D usando a propriedade Area da classe Parcel da AutoCAD Civil 3D .NET APIQuantidade de visualizações: 354 vezes |
Em algumas situações, quando estamos trabalhando com loteamento no Civil 3D, queremos percorrer todos os lotes, ou seja, os parcels, contidos em um site e calcular ou exibir suas áreas via programação. Para isso nós podemos usar a propriedade Area da classe Parcel da AutoCAD Civil 3D .NET API. Esta propriedade retorna um valor double contendo a área do lote selecionado ou sendo acessado no momento. Nesta dica mostrarei como podemos pedir para o usuário selecionar um lote no loteamento escolhido e, em seguida, exibir sua área. Veja o código AutoCAD Civil 3D .NET C# completo para o exemplo: using Autodesk.AutoCAD.Runtime; using Autodesk.Civil.ApplicationServices; using Autodesk.AutoCAD.DatabaseServices; using Autodesk.AutoCAD.ApplicationServices; using Autodesk.AutoCAD.EditorInput; using Autodesk.Civil.DatabaseServices; namespace Estudos { public class Class1 : IExtensionApplication { [CommandMethod("Lotes")] public void Lotes() { // vamos obter uma referência ao documento atual do Civil 3D CivilDocument doc = CivilApplication.ActiveDocument; Editor editor = Application.DocumentManager.MdiActiveDocument.Editor; using (Transaction ts = Application.DocumentManager.MdiActiveDocument. Database.TransactionManager.StartTransaction()) { try { // vamos pedir para o usuário selecionar um lote PromptEntityOptions opt = new PromptEntityOptions( "\nSelecione um lote"); opt.SetRejectMessage("\nO objeto precisa ser um lote.\n"); opt.AddAllowedClass(typeof(Parcel), false); // vamos obter o id do lote selecionado ObjectId id_lote = editor.GetEntity(opt).ObjectId; // obtém o lote a partir do id do objeto selecionado Parcel lote = id_lote.GetObject(OpenMode.ForRead) as Parcel; // vamos obter a área do lote selecionado double area = lote.Area; // e mostramos o resultado editor.WriteMessage("\nA área do lote selecionado é: " + lote.Area + " m2"); } catch (System.Exception e) { // handle bad file path editor.WriteMessage("Erro: {0}", e.Message); } } } public void Initialize() { // pode deixar em branco } public void Terminate() { // pode deixar em branco } } } Ao executar este código AutoCAD Civil 3D C# .NET nós teremos o seguinte resultado: Selecione um lote: [Selecione um parcel na área de desenho] A área do lote selecionado é: 0.0947258711424344 m2 |
![]() |
Veja mais Dicas e truques de AutoCAD Civil 3D .NET C# |
Dicas e truques de outras linguagens |
GNU Octave - Como calcular o comprimento da hipotenusa em GNU Octave dadas as medidas do cateto oposto e do cateto adjascente Delphi - Como retornar o índice do item selecionado em um ComboBox do Delphi usando a propriedade ItemIndex |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |