Você está aqui: AutoCAD .NET API C# ::: Dicas & Truques ::: Layer, Layers |
Como listar todas as layers de um documento do AutoCAD usando a coleção LayerTable da AutoCAD .NET API C#Quantidade de visualizações: 489 vezes |
|
Em algumas situações nós precisamos exibir os nomes das layers de um documento do AutoCAD. Para isso nós podemos usar a coleção LayerTable da AutoCAD .NET API C#. Esta coleção é obtida a partir de uma chamada à função GetObject() da classe Transaction passando como argumento o LayerTableId da classe Database. Veja como usamos um laço foreach para percorrer todos os elementos da LayerTable. Dentro do laço nós obtemos cada layer de forma individual usando a classe LayerTableRecord e mostramos o seu nome a partir da propriedade Name. Veja o código AutoCAD .NET C# API completo para o exemplo: ----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------
using System;
using Autodesk.AutoCAD.Runtime;
using Autodesk.AutoCAD.ApplicationServices;
using Autodesk.AutoCAD.DatabaseServices;
using Autodesk.AutoCAD.Geometry;
using Autodesk.AutoCAD.EditorInput;
[assembly: CommandClass(typeof(PluginEstudos.Class1))]
namespace PluginEstudos {
public class Class1 {
[CommandMethod("estudos")]
public void Estudos() {
// vamos obter o documento atual
Document doc = Application.DocumentManager.MdiActiveDocument;
// vamos obter a base de dados
Database db = doc.Database;
// iniciamos uma transação
using (Transaction trans = db.TransactionManager.StartTransaction()) {
// vamos obter a tabela de layers
LayerTable tabela_layers;
tabela_layers = trans.GetObject(db.LayerTableId,
OpenMode.ForRead) as LayerTable;
// agora percorremos todas as layers e mostramos os seus nomes
foreach (ObjectId id_layer in tabela_layers) {
LayerTableRecord layer;
// obtemos a layer a partir do seu id
layer = trans.GetObject(id_layer, OpenMode.ForRead) as
LayerTableRecord;
// e exibimos o nome da layer
doc.Editor.WriteMessage("\n" + layer.Name);
}
doc.Editor.WriteMessage("\n");
}
}
}
}
Ao executar este código AutoCAD .NET C# API nós teremos o seguinte resultado na janela de comandos: 0 PAREDES JANELAS COLUNAS PORTAS |
|
|
Veja mais Dicas e truques de AutoCAD .NET API C# |
Dicas e truques de outras linguagens |
|
Java - Como testar se um ponto está dentro de um círculo em Java - Desenvolvimento de Games com Java Python - Como excluir e retornar um item da lista Python baseado em seu índice usando a função pop() |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |







