Coloque as árvores em sua localização exata em InfraWorks

2025-05-19_14-30-50-4.png

Nota: Este artigo foi escrito e publicado em inglês e é uma versão traduzida do original aqui.  

 

Sempre quis mostrar árvores na localização exata em InfraWorks? É fácil! Vejamos como automatizar esse procedimento. Na maioria das vezes, quando recebemos uma vistoria, as árvores são bloqueadas. Há uma rotina em Lisp anexada chamada Blocks2Points. Isso criará um ponto no AutoCAD onde os blocos estão. Isso é o que eu tenho atualmente…

 

DmytroMukhin_0-1763148652881.png

 

Essas árvores são blocos e vou convertê-las em um ponto AutoCAD usando a rotina lisp mencionada acima. Você tem a opção de excluir os blocos ou mantê-los. Vou mantê-los. Esta lisp rotina cria os pontos no ponto de inserção dos blocos em árvore. Abaixo você pode ver os pontos. Eu os isolei para clareza e seleção mais fácil…

 

Você pode alterar o estilo e o tamanho desses pontos, se desejar, digitando PTYPE.

 

Em seguida, digite MAPEXPORT. Altere o tipo de arquivo para ESRI Shapefile (*.shp), atribua-lhe um nome e uma localização para salvar. A caixa de diálogo "Exportar" será exibida. Para o tipo de objeto, alternar o botão de opção para Ponto. Agora, altere o botão de opção para Selecionar manualmente e escolha o botão de seleção…

 

DmytroMukhin_2-1763148652881.png

 

Selecione todos os pontos por janela. Você deve ver na parte inferior da caixa de diálogo quantos você selecionou e quantos (se houver) foram filtrados

 

DmytroMukhin_3-1763148652881.png

 

Agora passamos para InfraWorks. Abra o cartão de recurso Conexões de dados. Escolha SHP na lista.

 

ToddRogersWPM_4-1747682066699.png

 

Procure o arquivo exportado de Civil 3D. Agora ele aparecerá na lista. Agora podemos clicar nele duas vezes para configurá-lo. Para o Tipo, selecione Árvores

 

DmytroMukhin_4-1763148652882.png

  

Clique na guia Origem e, em Opções de modelagem, defina Modelagem.  Eu escrevi um script que vou colar abaixo para randomizar as árvores. Clique na guia Script e, em seguida, clique no botão Editar e copie e cole o código abaixo sobre o texto existente que aparece nessa guia

 

function Process(SOURCE, TREES) {

TREES.EXTERNAL_ID = SOURCE.FeatId;
var scaleFactor = 0.3;
var scaleVariationMax = 0.15;

if (Math.random() > 0.5) {

TREES.RULE_STYLE = "3D Model/Vegetation/Populus Nigra";

//Set baseline scale and randomize by variation
scaleFactor = 2;
scaleVariationMax = 1;
var variation = scaleVariationMax * Math.random() * 2 - scaleVariationMax;
TREES.MODEL_SCALE_X = scaleFactor + variation;
TREES.MODEL_SCALE_Y = scaleFactor + variation;
TREES.MODEL_SCALE_Z = scaleFactor + variation;

} else {

TREES.RULE_STYLE = "3D Model/Vegetation/Adaptive Trees/Beech Tree";

//Set baseline scale and randomize by variation
scaleFactor = 0.8;
scaleVariationMax = 0.3;
var variation = scaleVariationMax * Math.random() * 2 - scaleVariationMax;
TREES.MODEL_SCALE_X = scaleFactor + variation;
TREES.MODEL_SCALE_Y = scaleFactor + variation;
TREES.MODEL_SCALE_Z = scaleFactor + variation;

}
return true;
}

 

DmytroMukhin_5-1763148652882.png

 

Agora, clique em Fechar e em Atualizar. Se você estiver usando uma versão mais recente do InfraWorks, receberá um aviso sobre scripts. Continue e clique em "Continuar com a atualização". É isso. Suas árvores estarão no local correto. Se você quiser usar árvores diferentes, substitua o nome da árvore que deseja usar no script por "ÁRVORES". RULE_STYLE.

 

ToddRogersWPM_7-1747682869119.png

 
Nota: Este artigo foi escrito e publicado em inglês e é uma versão traduzida do original
aqui.