Colocar árboles en su ubicación exacta en InfraWorks

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

Nota: Este artículo está escrito y publicado en inglés y es una versión traducida del original aquí.  

 

¿Alguna vez ha deseado mostrar árboles en su ubicación exacta en InfraWorks? ¡Es fácil! Veamos cómo automatizar este procedimiento. La mayoría de las veces, cuando recibimos una encuesta, los árboles son bloques. Hay una rutina de Lisp que he adjuntado llamada Blocks2Points. De este modo, se creará un punto de AutoCAD donde están los bloques. Esto es lo que tengo actualmente...

 

DmytroMukhin_0-1762264661059.png

 

Estos árboles son bloques y los voy a convertir en un punto de AutoCAD mediante la rutina Lisp mencionada anteriormente. Tiene la opción de suprimir los bloques o conservarlos. Me los voy a quedar. Esta rutina Lisp creaba los puntos en el punto de inserción de los bloques del árbol. A continuación puede ver los puntos. Los aislé para mayor claridad y facilidad de selección...

 

DmytroMukhin_1-1762264661059.png

 

Puede cambiar el estilo y el tamaño de estos puntos, si lo desea, escribiendo PTYPE.

 

A continuación, escriba MAPEXPORT. Cambie el tipo de archivo a ESRI Shapefile (*.shp), asígnele un nombre y una ubicación para guardar el archivo. Aparecerá el cuadro de diálogo de exportación. Para el Tipo de objeto, active o desactive el botón de opción de Punto. Ahora alterne el botón de opción para Seleccionar manualmente y elija el botón de selección...

 

DmytroMukhin_2-1762264661059.png

 

Seleccione todos los puntos como ventana. Debería ver en la parte inferior del cuadro de diálogo cuántos seleccionó y cuántos (si corresponde) se filtraron...

 

DmytroMukhin_3-1762264661059.png

 

Ahora pasamos a InfraWorks. Abra la tarjeta de elemento Conexiones de datos. Seleccione SHP en la lista.

 

DmytroMukhin_4-1762264661059.png

 

Busque el archivo que ha exportado de Civil 3D. Ahora aparecerá en la lista. Ahora podemos hacer doble clic en él para configurarlo. En Tipo, elija Árboles...

 

DmytroMukhin_5-1762264661059.png

 

Haga clic en la ficha Origen y, en Opciones de recubrimiento, establezca en Cobertura.  He escrito un script que pegaré a continuación para aleatorizar los árboles. Haga clic en la ficha Secuencia de comandos, luego haga clic en el botón Editar y copie y pegue el siguiente código en el texto existente que se muestra en esa ficha...

 

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;
}

 

A continuación, haga clic en Cerrar y actualizar. Si utiliza una versión más reciente de InfraWorks, aparecerá una advertencia sobre las secuencias de comandos. Continúe y haga clic en Continuar con la actualización. Eso es todo. Los árboles se ubicarán en la ubicación correcta. Si desea utilizar árboles diferentes, reemplace el nombre del árbol que desea utilizar en la secuencia de comandos para los ÁRBOLES. RULE_STYLE.

 

Nota: Este artículo está escrito y publicado en inglés y es una versión traducida del original aquí.