Você está aqui: Revit C# ::: Dicas & Truques ::: Paredes - Walls |
Como criar paredes no Revit usando a função Create() da classe Wall da Revit C# APIQuantidade de visualizações: 342 vezes |
Nesta dica mostrarei como podemos criar uma nova parede no Revit usando a API C# do Revit. Para isso usaremos a função Create() da classe Wall e forneceremos uma referência ao documento atual, a linha geométrica, o id do nível no qual a nova parede será inserida e informaremos se a parede será do tipo parede estrutural. Em outras dicas no site eu mostrei como podemos pesquisar um nível no documento Revit e retornar o seu id. Revise estas dicas caso tiver dúvidas a respeito disso. Nesse exemplo eu coloquei o id do nível como um inteiro fixo e o usei para criar um novo ElementId. A linha geométrica para posicionar a parede foi criada a partir de dois elementos XYZ, com suas coordenadas x, y e z. Finalmente, após a criação da nova parede nós exibiremos o seu id. Se a parede não puder ser criada o id -1 (ElementId.InvalidElementId) é retornado para nos avisar de que a operação não foi bem sucedida. A versão da função Create() da classe Wall que usei neste exemplo vai usar o tipo padrão de parede, a saber, o Parede básica Generic - 200mm. Veja o código Revit C# completo para o exemplo: using System; using Autodesk.Revit.UI; using Autodesk.Revit.DB; using Autodesk.Revit.DB.Structure; using Autodesk.Revit.UI.Selection; using System.Collections.Generic; using System.Linq; namespace Estudos { [Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes. TransactionMode.Manual)] [Autodesk.Revit.DB.Macros.AddInId("ED8EC6C4-9489-48F7-B04E-B45B5D1BEB12")] public partial class ThisApplication { private void Module_Startup(object sender, EventArgs e) { // vamos obter uma referência ao Document ativo Document doc = this.ActiveUIDocument.Document; // o primeiro passo é obter o id do nível no qual a parede // vai ser colocada ElementId id_nivel = new ElementId(694); // agora criamos a linha geométrica na qual a parede será // alinhada XYZ ponto_a = new XYZ(0, 0, 0); XYZ ponto_b = new XYZ(50, 0, 0); // criamos a linha Curve linha = Line.CreateBound(ponto_a, ponto_b) as Curve; // iniciamos a transação Transaction transacao = new Transaction(doc); transacao.Start("Criação de paredes no Revit"); // finalmente criamos a parede usando o tipo de // parede padrão Wall parede = Wall.Create(doc, linha, id_nivel, false); // fazemos o commit da transação transacao.Commit(); // a parede foi criada com sucesso? Ao executar este código Revit C# API nós teremos o seguinte resultado: [Uma nova parede é desenhada nas coordenadas indicadas] A nova parede foi criada com o ID 5281 |
![]() |
Veja mais Dicas e truques de Revit C# |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |