Está en la página 1de 12

Creacin de una carretera de montaa

Cuando le coment a mi buen amigo Alberto Areta que iba a preparar una serie de tutoriales sobre modelado por subdivisin,
enseguida me propuso una idea para uno de ellos: cmo crear una carretera y su relieve circundante, de modo que pudiramos
obtener una malla limpia y perfectamente preparada para texturizar por UVs y para poder aadir detalles superficiales con
comodidad (esculpir el terreno, aadir arcenes, cunetas y taludes, etc).
Para disear una obra civil existen diferentes aplicaciones dedicadas (Cartomap, MDT, In-Roads, Clip) que son capaces de recoger
los datos reales, capturados por topografa clsica o fotogrametra. A partir de estos datos (si es por topgrafia clsica, una nube
de puntos) estas aplicaciones permiten crear una malla triangular o MDT del terreno previo que origina el curvado. Sobre esta
malla se plantea el desarrollo, primero en planta y luego en alzado (altura) del proyecto de carretera, presa, etc. Dentro del
programa de clculo puede obtenerse el MDT del terreno antes y despus, el MDT que genera la carretera, cunetas, desmontes
y terraplenes (aparte de perfiles longitudinales, transversales).
El problema de las mallas generadas por este tipo de programas es que no suelen ser muy limpias. Muchas veces son mallas de
tringulos, lo que ya de entrada impide su subdivisin. Y tambin resulta muy difcil extraer buenos mapas UV a partir de ellas,
cuando resulta que este sistema de texturizado sera el ideal para mapear una larga carretera o conjunto de viales.
Por todo ello es muy probable que, incluso aunque consigamos importar a nuestro programa 3D favorito unas mallas directas desde
alguna de las aplicaciones mencionadas anteriormente, tengamos que limpiarlas o hasta rehacerlas para poder trabajar con
comodidad.
En el siguiente tutorial vamos a ver cmo abordar este proceso usando un buen modelador poligonal por subdivisin de
superficies:Modo. Pero confo en que la mayor parte de los procedimientos explicados aqu puedan llevarse a cabo con cualquiera
de las otras aplicaciones comunmente usadas en la visualizacin 3D 3DSMax, Maya, Softimage, Cinema4D, Lightwave, etc.
Como siempre, creo que lo realmente importante es la metodologa, y no tanto las herramientas X o Y ;-)

1. NUESTRA MATERIA PRIMA


Segn me explic Alberto, hay ocasiones en que para definir un terreno el material con el que contamos es una nube de puntos
(creada a partir de las capturas realizadas por un topografo sobre el terreno) y a partir de ah se puede extraer todo: curvas de
nivel, archivos DEM, mallas, etc. En otras ocasiones (cartografa a partir de fotogrametra aerea) se parte de las curvas de nivel,
etc.

No se cmo ser en otros programas (Max, Maya, Softimage, etc) pero desde luego usando Modo, con unas curvas de nivel no
vamos a llegar muy lejos: no tenemos herramientas internas para construir una buena malla de terreno a partir de ellas

Para crear este tuto vamos a considerar que partimos de dos cosas, lo que podramos llamar nuestra materia prima:
Una malla triangular. Que es un tipo de malla relativamente fcil de obtener (por cualquier programa dedicado) a partir de una
nube de puntos, y que podremos importar a nuestra aplicacin.
Los perfiles bsicos, en planta, de nuestra carretera su eje central y sus lmites laterales y de sus taludes, as como la
informacin de alturas en cada punto de inflexin. Estos perfiles tambin los podremos importar para trabajar sobre ellos.
Esto es todo con lo que contamos. Pero claro, me podis plantear: y qu pasa si ni siquiera contamos con esta informacin?, y si
lo nico que tengo es un archivo PDF con las curvas de nivel como aparecen en la ilustracin anterior?, o lo que es an peor: un
plano impreso en papel y nada ms?. Pues entonces os dira que estamos apaaos :-))
Mi consejo es que hablis con vuestro cliente y le exijis ms informacin y en otros formatos ms prcticos: hoy en da TODO el
mundo y ms dentro de los estudios de ingeniera y topografa trabaja con ordenadores y aplicaciones dedicadas, as que
seguro que os podrn exportar la informacin que ellos tengan en un formato (DXF, DWG, IGN) que conseguiris abrir desde
vuestro programa para poder usar como referencia.

Nos centramos en los perfiles de la propia carretera en planta:


Lo ms importante sera el perfil central (en amarillo), que se podra considerar como el eje de la carretera.
Luego nos es de ayuda contar con los perfiles laterales (en azul), los lmites de la carretera. Aunque si nos facilitan la anchura,
en este caso 5 metros por carril, podemos extrapolar esta informacin a partir del eje.
Es muy importante contar con las lneas de cabeza y pie de talud (en morado): estos perfiles nos indican los puntos de
contacto entre los taludes y el terreno original. Para trazar una carretera hay puntos en los que hay que quitar tierra desmonte
y otros en los que hay que aportarla terrapln.
Y los cambios entre las diferentes partes del trazado (en blanco). A continuacin lo veris mejor:

En el trazado de toda carretera vamos a encontar zonas de rectas y zonas de curvas.


Las zonas de rectas son eso rectas Las tenis en verde. Poco ms hay que explicar ;-)
Pero en las zonas de curva de una carretera y tambin de unas vas de tren encontramos a su vez dos sub-zonas, y esto ya no
es algo tan evidente para los no familiarizados [ gracias de nuevo a Alberto por sus explicaciones Os haba dicho que es ingeniero
tcnico topgrafo? ]:
Hay una parte de toda curva que es un arco de circunferencia (marcadas en azul). Ya sabis: un centro y su arco, algo
sencillo.
Pero hay otra parte, a la entrada y a la salida de cada curva y coloreadas en rojo, que no se disea como un arco de
circunferencia, sino como una clotoide [ en el link buscar Cornu Spiral. Veris que siempre suelo poner los links a la Wikipedia en
ingls, ya que considero que estn ms completos que en espaol. De todos modos en la columna de la izquierda del artculo
tenis los links a nuestro idioma o al afrikaans o al suomi ]. La funcin bsica de estos segmentos es evitar que acte de golpe
la fuerza centrpeta (impidiendo que nos estrellemos) haciendo ms cmoda la transicin entre las rectas y las curvas durante la
conduccin.
Y recordad que estos perfiles estn en PLANTA, en la coordenada Y=0 [ bueno, o Z=0 en segn qu programas, ya
algunos consideran la vertical como Y y otros como Z ]. As pues necesitamos tener las cotas de altura para cada
puntos de transicin, y eso es lo que indican las magnitudes que aparecen en la ilustracin en gris. Hay situaciones
se podra complicar: podramos tener ascensos y descensos en un nico tramo recto o incluso en una sla curva, si
deberamos contar con esa informacin. Aqu lo hemos simplificado un poquito, para no alargarnos demasiado.

sabis que
uno de estos
en las que esto
es as

Tambin podramos tener la suerte de contar con este conjunto de perfiles, pero ya puestos a su cota, en su altura correcta de un
modo directo tras la importacin. Si es as, fabuloso: nos ahorraremos una buena cantidad de trabajo. Pero vamos a seguir
considerando que slo los tenemos en planta ok?

Para tratar de ser lo ms fieles posible al diseo original trataremos de usar los perfiles importados, operando sobre ellos
directamente. En el caso de los tramos rectos y los arcos de circunferencia hemos tenido suerte porque nos han llegado con un
nmero de puntos muy razonable. En cambio las curvas clotoides nos han pasado con un nmero excesivo de puntos: podramos
aplicar un script para optimizarlas y poder usarlas del mismo modo que los arcos, pero no va a hacer falta, ya veris.
Desde luego lo ideal sera que al importar estos perfiles se nos abrieran como splines (bzier, NURBS, paramtricas, etc) porque de
ese modo podramos decidir la resolucin, el nmero de puntos que les queremos dar. Pero esto depende de muchos factores: el
software dedicado en el que haya sido originalmente diseada la carretera, el formato de exportacin (y cmo exporta esa
determinada aplicacin en ese formato), y por supuesto nuestro programa de trabajo: probablemente un mismo DXF sea
importado de un modo distinto por Modo que por Max o por Maya. En mi caso, con Modo, lo que tenis aqu arriba es lo que me ha
llegado [ se trata de un caso real que me envi Alberto, para trabajar sobre ello ].
As que vamos a ver qu podemos hacer con todo esto.

2. CREACIN DE LA CORTINA CENTRAL


Lo primero que vamos a crear es la propia carretera, lo que podramos llamar la cinta de la calzada. Pero para poder llegar a ello
vamos a realizar un proceso previo que nos permita elevar el eje central a su cota de un modo que nos haga sencillo generar a
continuacin esa cinta. Toda esta segunda parte nos la podramos ahorrar si tuvramos ya los perfiles a su altura.

Como primer paso nos construimos unos perfiles de referencia elevados. Se trata de subir cada uno de los puntos a su cota
magnitudes que nos tendrn que haber facilitado y de unirlos despus mediante simples tramos rectos (fijaos que en las zonas
de clotoides y arcos tambin hemos dejado unos segmentos rectos). Repito que estos son slo unos perfiles de REFERENCIA, para
facilitarnos la comprobacin visual de que los siguientes pasos estn correctamente realizados.

A continuacin extruimos verticalmente los perfiles originales en


planta. Tanto los segmentos rectos, con slo dos puntos cada
uno, como los arcos de cirfunferencia, con un nmero razonable
de puntos.
Los segmentos correspondientes a las clotoides no los extruimos
porque recordad que tenan un nmero excesivo de vrtices.
Pero si hubieramos simplificado esos tramos, tambin los
extruiramos.
En un primer paso no es necesario que lo ajustemos todo con
los perfiles que habamos colocado como referencia a su cota.
Lo dejamos un poco por debajo, en este caso lo extruimos todo
a un valor constante: 250 metros.

Y despues movemos los vrtices superiores de nuestra cortina


para igualarlos con los perfiles de referencia que habamos
creado.
Pero cuidado, los tramos rectos son muy sencillos: basta con
ajustar las cotas de los dos nicos vrtices por cada tramo (y
podemos y deberamos hacerlo numricamente, para
asegurarnos de su exactitud); pero en cambio los tramos curvos
ya no son tan simples. No podemos ir vrtice a vrtice porque
en ese caso no acabaramos nunca y encima sera poco exacto.
No os dejis engaar por el ejemplo que estamos viendo, donde
realmente casi parece que el perfil superior est todo a la
misma cota: en realidad hay pendientes, y eso ocurre tambin
en los tramos curvos.

En este procedimiento el alzado a su cota de los tramos curvos plantea un pequeo problema extra que tendremos que resolver.
Como en el ejemplo real de la carretera con la que estamos trabajando no es muy evidente, vamos a verlo sobre un ejemplo ms
extremo:

En el recuadro blanco podis ver la vista en alzado de nuestra carretera: fijaos cmo realmente s que existen ligeras pendientes,
incluso en los tramos curvos (mirad dentro del crculo verde). En los otros dos grficos vemos una situacin mucho ms exagerada
del problema con el que nos encontramos: cmo elevar los vrtices superiores en los tramos curvos de manera que obtengamos
una pendiente suave si los observamos frontalmente pero sin destrozar la curvatura al ser observados en planta?
Vamos a ver un par de procedimientos: uno aproximado y otro ms exacto. Y para ambos casos ciertamente vamos a emplear
herramientas muy caractersticas de Modo, que no se si se encuentran disponibles en otras aplicaciones. Pero estoy seguro de que
habr otros medios para conseguirlo. Veamos estos dos mtodos:

Mtodo 1. Usando un Linear Falloff (aproximado)

Tenemos nuestro segmento curvo visto en alzado. Inicialmente


todos los puntos superiores estn en la misma cota.
Primero elevamos todos los vrtices hasta la cota ms baja
de nuestra pendiente. Podemos hacerlo a ojo o como aqu
usando un mtodo ms preciso, mediante una alineacin de
coordenadas (ilustracin superior).
Vamos con las ilustraciones de la derecha: trazamos
unLinear Falloff [ esto creo que es bastante expecfico de
Modo ]para mover todos los puntos de manera que asciendan
siguiendo una transicin: el punto de un extremo asciende al
mximo, el del otro extremo se queda donde estaba y el resto
describen la pendiente.

Mtodo 2. Usando el script Super Taut (ms exacto)

Para este segundo mtodo empezamos igual que antes:


Primero hacemos coincidir todos los vrtices con el punto
ms bajo de la pendiente.
Pero despus elevamos el vrtice del extremo
correspondiente hasta el punto ms alto. Igual que antes,
usamos sistemas de alineacin por parmetros para hacerlo lo
ms exacto posible (no lo desplazamos a ojo).

Y a continuacin aplicamos la magia del script Super Taut del


grandsimo y generoso Seneca Menard:
Seleccionanos primero el vrtice de un extremo, luego el del
otro, y finalmente todos los intermedios, con una lazada.
Invocamos el script a travs de su interface y voil, ah lo
tenemos resuelto. [ Un procedimiento 100% Modo ].

[ NOTA: desde un punto de vista estrictamente geomtrico, ninguno de estos dos sistemas es realmente preciso ya que una
pendiente constante que discurre sobre las paredes de un cilindro un arco de circunferencia extruido realmente origina una
helicoide. Y si encima la pendiente no es constante, la cosa an se complicara ms. Podramos ser mucho ms precisos empleando
VertexMap Falloffs definidos a partir de las coordenadas UV del cilindro, pero no vamos a entrar en tanta exactitud ]

Bien, ya tenemos ajustados todos los vrtices superiores de los tramos rectos y los arcos de circunferencia. Recordad que habamos
dejado sin extruir los tramos correspondientes a las clotoides. Ahora podemos realizar unas sencillas operaciones de bridge para
ensamblar todas las piezas. Nuevamente: desde un punto de vista purista, la curva que nos originar este bridge no va a ser una
clotoide pero os aseguro que se le parece mucho.
As que por fin tenemos nuestra cortina que, en su cresta superior, va definiendo el eje central de la carretera ajustado a su cota.
A continuacin veremos cmo crearemos la cinta que define la propia carretera [ una de las formas de hacerlo, claro, porque
habra muchas, dependiendo de las herramientas concretas y del programa en particular que usemos para trabajar ].

Seguir con la parte 2 del tutorial