Você está aqui: Revit Python Shell ::: Dicas & Truques ::: Element, Class Element |
Como retornar a caixa delimitadora (BoundingBox) de um elemento do Revit usando a função get_BoundingBox() da API do Revit e o Revit Python ShellQuantidade de visualizações: 290 vezes |
Cada elemento do Revit (aqueles que descendem da classe Element) possuem uma caixa retângular 3D associada a eles. Esta caixa delimitadora (ou BoundingBox) tridimensional apresenta as coordenadas de localização e orientação do elemento. Um uso muito interessante da caixa delimitadora de um elemento do Revit é quando queremos calcular a área ou volume de uma parede via programação. Nas dicas de Revit Python Shell aqui do site você encontrará exemplos de como isso pode ser feito. Para retornar a BoundingBox associada a um elemento, nós só precisamos efetuar uma chamada à função get_BoundingBox() do elemento desejado. Isso vai nos retornar um objeto da classe BoundingBoxXYZ. Veja um trecho de código Revit Python Shell no qual pedimos para o usuário selecionar uma parede e retornamos a caixa delimitadora associada. Note o uso das propriedades Max e Min para retornar os pontos máximos e mínimos da BoundingBoxXYZ retornada: # faz o import necessário from Autodesk.Revit.UI.Selection import ObjectType # precisamos ocultar a janela do Revit Python Shell __window__.Hide() # agora mostramos uma mensagem para o usuário selecionar uma # parede TaskDialog.Show("Aviso", "Selecione uma parede") # obtemos uma referência ao objeto Selection do # UIDocument ativo selecao = uidoc.Selection # e finalmente esperamos que o usuário selecione o elemento selecionado = selecao.PickObject(ObjectType.Element, "Selecione uma parede") # agora testamos se o usuário realmente selecionou um # elemento if selecionado != None: # vamos obter o elemento selecionado a partir da # referência parede = doc.GetElement(selecionado) # vamos obter o elemento BoundingBoxXYZ bounding_box = parede.get_BoundingBox(None) # vamos obter as informações da BoundingBoxXYZ # primeiro o ponto mínimo (canto esquerdo inferior e # a parte de trás da caixa delimitadora) Ao executar este código Revit Python Shell nós teremos o seguinte resultado: Você selecionou uma parede. O ponto geométrico mínimo da caixa é: X = 11.18515491529932; Y = 4.5868046877840216; Z = 18.044619422573337 O ponto geométrico máximo da caixa é: X = 25.292766463855756; Y = 5.2429726667866916; Z = 44.291338582678321 |
![]() |
Veja mais Dicas e truques de Revit Python Shell |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
1º lugar: Java |