viernes, 18 de enero de 2013

Generar el DERROTERO a partir de una poligonal

Hola amigos de gvSIG tal y como les comenté, en el post anterior, en esta ocasión realizaremos el proceso inverso al de generar la poligonal basados en su derrotero.
 
Este es un caso particular, en el que no contamos con el plano del predio o finca y solamente existe un shape (tipo polígono) de la misma.
Por lo tanto es necesario contar con un procedimiento que nos permita obtener el derrotero (coordenadas polares), el cual podrá ser utilizado para labores de "replanteo" en campo" y presentación de informes.
 
Este tutorial estará basado en el uso de Sextante, especificamente en el uso del Modelizador.
La razón fundamental radica en el hecho de que todos los algoritmos quedarán "concatenados" en uno solo, el cual he llamado "POLIG_DERROTERO".
 
Debo además indicar que para una clara comprensión de este tutorial, el usuario deberá preferiblemente:
  • Conocer los fundamentos matemáticos sobre coordenadas rectangulares, coordenadas polares, teorema de Pitágoras y las razones trigonométricas.
  • Dominar los conceptos involucrados con las geometrías vectoriales.
  • Tener un nivel medio como usuario gvSIG.
  • Conocer bien los algoritmos vectoriales de Sextante.
  • Contar con experiencia en el uso del Modelizador de Sextante.
Mi intención no es desanimar a nadie, todo lo contrario, si no dominas algún aspecto de los indicados, entonces comienza hoy mismo a investigar, a probar el uso de los algoritmos Sextante y su Modelizador.

Ahora vamos al tema:

PASO No.1: Preparamos nuestra vista de trabajo
 
Paso fundamental para comprobación de la geolocalización del shape y ubicación del entorno.
Para esto es importante, si se tiene acceso, utilizar cartografía raster.
 



PASO No.2: Ejecuto el modelo Sextante
 
Note que el modelo tiene una única entrada vectorial (Polígono), además genera dos salidas vectoriales (Derrotero y Vértices).  Al final se presenta el esquema del modelo.


En la vista tendremos las capas vectoriales generadas, he ubicado los puntos (Vértices) arriba y las líneas (Derrotero) abajo, además de modificar sus tamaños y colores:


Veamos sus tablas de atributos, el modelo nos ha ayudado en la creación de los campos para enumerar tanto los vértices como las líneas.
Esto es algo que todavía no he logrado que haga el modelo, sin embargo a nivel de un script si será posible.



PASO No.3: Numerar los registros a nivel de tablas

Esta es una labor sumamente sencilla a través de la calculadora de campos de gvSIG.
TIPS:
  1. VÉRTICES (campo: PUNTO), utiliza el comando rec( )+1
  2. DERROTERO (campo: DE_PUNTO): utiliza el comando rec( )+1
  3. DERROTERO (campo: HASTA_PUNTO): utiliza el comando rec( )+2
  4. DERROTERO (campo: HASTA_PUNTO): último registro, numerar como 1, ya que esta línea es la que une el último vértice con el primero


A partir de aquí en adelante, podrás hacer "Consultas espaciales", enlazar las tablas y realizar consultas, en fin lo que demanden tus requerimientos en cuanto a explotar los resultados obtenidos, tanto del derrotero como de los vértices.
 
Consulta espacial de los vértices que tocan una línea seleccionada:

 
 


Consulta basada en el enlace de las tablas Vértices y Derrotero:

 

Podemos además, generar las vistas de resultados y las composiciones (mapas) que necesitemos, según sean las exigencias:




Para finalizar quiero dejarles algunos enlaces e insumos de interés.
Enlaces:
Insumos:

Puedes comprobar los resultados del derrotero, utilizando una hoja electrónica y aplicando los conceptos de las razones trigonométricas y las formulas entre tipos de coordenadas:


Para aquellos usuarios familiarizados con los algoritmos de Sextante y el uso del Modelizador, aquí les dejo el esquema del modelo POLIG_DERROTERO:


Algunas notas finales:

  1. Este modelo ha sido creado recientemente, por lo que el esquema presentado podría variar.
  2. He detectado algunos pequeños problemas al ejecutarlo repetidamente en la misma sesión de gvSIG.  Esto ha sido consultado a los expertos para saber con certeza cuál es la casua.
  3. En las diferentes versiones de Sextante, el campo llamado "Dirección" toma diferentes nombres (inserta caracteres especiales), yo he trabajado sobre la versión actualizada en gvSIG 1.11.0 y 1.12.0 haciendo los cambios necesarios.
  4. Sobre gvSIG 1.11.0 he utilizado Codificación por defecto del DBF = Cp1252, ya que ha sido la codificación que me permite usar la calculadora y renombrar sin dificultad el campo mencionado.
Bueno mis amigos, espero que este post les anime a involucrarse con Sextante, ya que es una poderosa herramienta de geoprocesamiento dentro de gvSIG.
 
Ahora solo queda a esperar que nuestro buen amigo Victor Acevedo nos colabore con el script de este modelo.
Saludos desde Costa Rica y Feliz Año Nuevo 2013.