Archivo de la categoría: DigiNG

Sincronizando el factor de zoom con la ventana fotogramétrica

Podemos configurar Digi3D.NET para que se cambie automáticamente el factor de zoom de la ventana de dibujo cuando cambiamos el factor de zoom de la ventana fotogramétrica, de esta manera ambas ventanas mostrarán de forma aproximada la misma extensión de modelo.

Para ello tan solo tenemos que seguir los siguientes pasos:

  1. Selecciona la opción del menú Herramientas/Configuración. Aparecerá el cuadro de diálogo Configuración.
  2. Localiza y despliega la sección Rueda del ratón.
  3. Establece el valor de la variable Sincronizar zooms con Digi3D a Si.
  4. Pulsa el botón Aceptar.

A partir de ese momento se cambiará automáticamente el factor de zoom en la ventana de dibujo cada vez que cambies el factor de zoom en la ventana fotogramétrica.

[youtube:http://youtu.be/Ky0FGIINZ5E%5D

Recortar polígonos

Recortar simultáneamente varios polígonos en su intersección con una línea de límite es muy sencillo con la orden RECORTAR_POLIGONOS de Digi3D.NET.

Esta orden solicita que selecciones la línea que define el límite de recorte y recorta todos los polígonos que interseccionen con esa línea, eliminando partes de los polígonos o dividiéndolos si es necesario.

[youtube:http://youtu.be/A6fr_abxa1Q%5D

Recortar polígono

Recortar polígonos en Digi3D.NET es muy sencillo con la orden RECORTAR_POLIGONO.

Tan solo tienes que seleccionar el polígono a recortar y la línea que actúa de límite. La orden recortará el polígono generando tantas partes como sea necesario.
El polígono a recortar puede ser o una línea cerrada o una entidad de tipo polígono y la línea que actúa de límite debe estar cerrada.

Si además pasamos a la orden un parámetro, el que sea, se eliminará automáticamente la línea que actúa de límite.

[youtube:http://youtu.be/FVQ9kSOTKPg%5D

Importación de códigos de un archivo .dgn

Hemos añadido una nueva funcionalidad al Editor de tablas de códigos para crear de forma automática en una tabla de códigos tantos códigos como capas se localicen en un archivo .dgn.

Además, es posible especificar opcionalmente un archivo de células (.cel). Si se especifica este archivo, se generarán automáticamente tantos códigos puntuales como células aparezcan en dicho archivo.

Todos los códigos generados tendrán asociado su propio estilo de visualización, con los mismos colores y grosores que en el archivo original.

Para ejecutar esta funcionalidad, tenemos que seguir los siguientes pasos:

  1. Ejecutar el programa Editor de tablas de códigos.
  2. Seleccionar la opción del menú Códigos/Importar códigos de archivo .dgn…
  3. Aparecerá el cuadro de diálogo Importar códigos de archivo .dgn:.
    Importar códigos de archivo .dgn
  4. Indicamos la ruta del archivo .dgn que queremos importar.
  5. Opcionalmente indicamos la ruta del archivo .cel con células para la extracción de códigos puntuales.
  6. Indicamos el tipo de entidad con el que se almacenarán las entidades lineales.
  7. Indicamos el tipo de entidad con el que se almacenarán las entidades puntuales.
  8. Pulsamos el botón Importar.

Puedes aprender más en la página de ayuda para este importador en la ayuda online de Digi3D.NET.

Importación de símbolos de archivos de células de MicroStation

El programa Editor de Tablas de códigos cada día incorpora más funcionalidades.
En esta ocasión, hemos añadido una herramienta que ayudará a los usuarios que trabajen habitualmente con archivos en formato MicroStation.

Esta herramienta que permite importar los símbolos contenidos en un archivo de células (.cel) en formato .bin. De esta manera tenemos disponibles en Digi3D.NET todos símbolos contenidos en el archivo de células.

Para realizar esta tarea tendremos que seguir los siguientes pasos:

  1. Ejecutamos el programa Editor de tablas de códigos.
  2. Seleccionamos la opción del menú Herramientas/Símbolos/Importar símbolos de archivo .cel de MicroStation.
  3. Aparecerá el cuadro de diálogo Importar símbolos de un archivo .cel.
  4. Indicamos la ruta al archivo .cel a importar y el directorio de salida (por defecto el directorio de salida mostrado coincidirá con el directorio de símbolos configurado en el programa).

    Importar símbolos de un archivo .cel

  5. Pulsamos el botón Importar y se importarán los símbolos.

Limitando el factor de zoom en la ventana de dibujo

Línea que llega al borde de hora pero que al realizar un factor de zoom importante parece que están separadas. El ancho total de la pantalla en terreno no llega al centímetro

Línea que llega al borde de hora pero que al realizar un factor de zoom importante parece que están separadas. El ancho total de la pantalla en terreno no llega al centímetro


Digi3D nos permite realizar zooms ilimitados en la ventana de dibujo.

El programa muestra una rejilla cuando considera que el usuario ha realizado un zoom lo suficientemente grande, pero hasta hoy el usuario era libre de seguir haciendo zoom y más zoom hasta conseguir ver un efecto en el que dos líneas que están conectadas aparecen como desconectadas.

Es un efecto de representación de la tarjeta gráfica. De hecho si medimos la distancia entre dónde está representando la tarjeta gráfica el extremo de la línea y dónde debería estar la distancia es cero.

Este efecto es debido a que las tarjetas gráficas no trabajan con doble precisión, trabajan con precisión simple (lo que complica muchísimo la programación de Digi3D, pues éste para solucionar estos problemas de redondeo se las tiene que apañar para recortar los modelos en teselas, tarea nada fácil cuando tenemos texturas, polígonos, fuentes, …).

A pesar del esfuerzo de Digi3D.NET para minimizar este problema llega un momento en el que se ve este efecto.

Para solucionar el problema de que el usuario amplíe tanto, hemos añadido dos opciones en la configuración de Digi3D.NET, en el menú Herramientas/Configuración/DigiNG:

Opción Descripción Valor por defecto
Limitar el zoom máximo Si lo activamos, Digi3D.NET limitará los factores de zoom en la ventana fotogramétrica. Deshabilitado
Tamaño de ventana Tamaño mínimo que podrá tener la ventana de dibujo 1 metro.

Podemos configurar un factor de zoom máximo en la ventana de dibujo de DigiNG.

Dos modos de trabajo: dos interfaces de usuario

DigiNG.NET permite trabajar con dos paradigmas de codificación distintos:

  1. Podemos trabajar con el paradigma de código único (como en versiones anteriores o como hacen los programas de CAD y SIG del mercado)
  2. Podemos trabajar con el novedoso sistema de multi-codificación.

Cuando liberamos Digi3D.NET, decidimos realizar un cambio en el interfaz de usuario que permitiera trabajar con multi-codificación.

Este cambio consistió en eliminar la barra de herramientas Código y en la aparición en escena de un nuevo panel acoplable denominado Códigos Activos.

Panel de códigos activos mostrando dos códigos simultáneamente: Muro y carretera estatal

Panel de códigos activos mostrando dos códigos simultáneamente: Muro y carretera estatal

Este panel permite seleccionar una serie de códigos que serán los que se asignen a las entidades que se van a digitalizar.

Por ejemplo, en esta captura podemos comprobar que tenemos seleccionados como códigos activos el código 040523 (muro) y el código 060126 (carretera estatal), de modo que si digitalizamos una nueva geometría, ésta será simultáneamente un muro y una carretera estatal.

Este panel dispone además de una barra de herramientas propia que nos permite añadir códigos a la lista de códigos, eliminar los códigos seleccionados en la lista de códigos, buscar un nuevo código, clonar los códigos de una geometría existente o añadir a la lista de códigos activos los códigos de una geometría existente.

Este panel de códigos es muy cómodo y es increíble si trabajamos con multi-codificación, pero tiene dos problemas:

  1. Ocupa más espacio que la antigua barra de herramientas Código.
  2. Su aparición provocó la desaparición de la barra de herramientas Código lo que es chocante para usuarios de Digi3D que llevan 20 años trabajando con el programa.

Varios usuarios que no trabajan con un modelo de datos de multi-codificación han solicitado la posibilidad de recuperar la antigua barra de herramientas códigos y como resultado tenemos una actualización de Digi3D.NET con la siguiente característica:

En el menú Herramientas/Configuración/DigiNG tenemos una nueva opción titulada Interfaz de multi-codificación que por defecto viene configurada con la opción Si.

Barra de herramientas mostrando como código activo el código  (curva de nivel fina)

Barra de herramientas mostrando como código activo el código (curva de nivel fina)

Si la cambiamos a No, tras reiniciar el programa comprobaremos que aparece la barra de herramientas Código que nos va a permitir seleccionar un único código. El panel acoplable Códigos activos sigue existiendo si activamos esta opción, pero deshabilitado, así que somos libres de cerrarlo para que no ocupe espacio en la aplicación.

Si activamos esta barra se pierden las características de multi-codificación de Digi3D.NET, así que no podremos seleccionar más de un código a asignar a las nuevas geometrías.

Cargando archivos MDS en formato TIFF

DigiNG permite cargar archivos (mediante la orden CARGA_F) con extensión .TIF que representan o una ortofoto o un modelo digital de superficies.

  • Si el archivo cargado representa una imagen, esta se mostrará en la ventana de dibujo como cualquier archivo de referencia normal. Si desplegamos las opciones del archivo en el panel Archivos de dibujo podremos activar/desactivar la visualización de la imagen así como el tipo de interpolación al interpolar/extrapolar.
  • Si por el contrario el archivo cargado representa un modelo digital de superficies, no se visualizará información en la ventana de dibujo, sin embargo podremos utilizarlo como fuente de coordenadas Z para órdenes como CAL_ORTO o para los flags que puedes encontrar en el menú Ventana fotogramétrica/Proyectar la coordenada Z usando los MDT cargados o el menú MDT/Proyectar la coordenada Z al mover sobre un MDT cargado.

Los MDS tienen que estar geo-referenciados, lo que significa que en algún sitio tiene que aparecer información que le haga saber al programa la posición de la imagen así como su orientación y tamaño.

Si el MDS está almacenado en un archivo GeoTiff, no será necesario ningún archivo adicional (siempre y cuando el archivo GeoTiff informe tanto de la posición/tamaño de la imagen como del sistema de coordenadas).
Si no es un archivo GeoTiff, será necesario un archivo .tfw (más información en World File para la geo-referenciación y un archivo .prj (más información en Shapefile Projection Format)

Es decir, exactamente igual que al cargar una ortofoto en DigiNG pero con una diferencia: Los sistemas de coordenadas de referencia de la ventana de dibujo y del archivo MDS no tienen por qué coincidir. Pueden ser distintos siempre y cuando exista alguna transformación de uno al otro.

DigiNG.NET permite cargar archivos MDS en Tiff de 32 bits y de 64 bits.

Si quieres aprender más sobre este tema, lee la entrada ¿El TIFF contiene una imagen o por el contrario contiene un MDT/MDS? en el blog de desarrollo de Digi3D.NET.

Novedades con archivos LIDAR (.las)

DigiNG mostrando un modelo LIDAR

Hoy presentamos dos novedades importantes relacionadas con archivos LIDAR:

  • Ya es posible visualizar en la ventana de dibujo las nubes de estos archivos de dibujo. Hasta ahora únicamente se podían visualizar en la ventana fotogramétrica.
  • Ahora los archivos LIDAR se consideran un modelo digital del terreno, lo que significa que Digi3D.NET puede utilizarlos para proyectar en tiempo real o para calcular una ortofoto.

    Gracias a este punto, es posible restituir monoscópicamente con uno (o varios) archivos .las cargados bajo la ortofoto o la foto.

Se han añadido varias opciones para controlar la visualización de los archivos LIDAR tanto en el cuadro de diálogo Configuración como en el panel acoplable Archivos de dibujo.

En el cuadro de diálogo Configuración tenemos una nueva opción titulada Importador/Exportador de archivos LIDAR (*.las) con las siguientes opciones:

Variable Descripción Valor por defecto
Mostrar por defecto en ventana de dibujo Si se activa, cuando se cargue un archivo LIDAR, este se mostrará inmediatamente en la ventana de dibujo. Podremos ocultarlo con posterioridad mediante las opciones del archivo en el panel Archivos de dibujo Desactivado
Consumir memoria de la tarjeta gráfica Si está activo, se almacenarán los puntos que se muestran en la ventana de dibujo en la memoria de la tarjeta gráfica. Esto puede hacer que se consuma la memoria de la tarjeta (por ahora Digi3D.NET no optimiza la carga de puntos), pero hará que la visualización sea inmediata. Si se deshabilita, no se consumirá memoria de la tarjeta gráfica pero los zooms serán más lentos. Activado
Mostrar por defecto en la ventana fotogramétrica Si se activa, cuando se cargue un archivo LIDAR, este se mostrará inmediatamente en la ventana fotogramétrica. Podremos ocultarlo con posterioridad mediante las opciones del archivo en el panel Archivos de dibujo Desactivado

Podemos controlar la visualización de los archivos LIDAR cargados mediante el panel Archivos de dibujo. Si desplegamos el menú de opciones del archivo .las aparecen varias opciones que nos van a permitir activar/desactivar la visualización de un determinado archivo LIDAR tanto en la ventana fotogramétrica como en la ventana de dibujo, además de poder indicar el color con el que se visualizarán los puntos en función de la categoría en la que esté clasificado.

Propiedades archivo LIDAR en el panel Archivos de Dibujo

Una vez cargado el archivo LIDAR (o los archivos, puedes cargar simultánemanete tantos como quieras), podemos activar la opción del menú Ventana fotogramétrica/Proyectar la coordenada Z usando los MDTs cargados. De esta manera podremos restituir monoscópicamente con la garantía de estar utilizando una coordenada Z válida. Activar esta opción no relentiza el programa ya que la proyección se realiza mediante algoritmos que permiten el movimiento en tiempo real.

Si no vas a utilizar la ventana fotogramétrica, sino que vas a realizar edición de una cartografía existente en la ventana de dibujo, puedes activar la opción del menú MDT/Proyectar la coordenada Z al mover sobre un MDT cargado.

Además ahora se pueden utilizar los archivos LIDAR para calcular ortofotos. Ya no es necesario cargar un archivo .MDT de MDTopX para calcular la ortofoto si tienes archivos LIDAR de la zona (aunque el rendimiento a la hora de calcular una ortofoto es muy superior si los modelos digitales del terreno son archivos de MDTopX que si son archivos LIDAR).

Cálculo de ortofotos con Digi3D.NET

Cuadro de diálogo Calcula Ortofoto

Digi3D.NET permite calcular ortofotos mediante la orden CAL_ORTO.

Esta orden ha evolucionado con respecto a versiones anteriores de Digi3D, incorporando las siguientes novedades:

  1. Multi-procesamiento. El cálculo de la ortofoto se realiza en paralelo, de manera que cuantos más núcleos dispongamos más rápido se calculará la ortofoto. En la captura de pantalla que encabeza esta entrada, puedes ver que el cuadro de diálogo de cálculo de ortofotos permite indicar el número de hilos de ejecución con los que se realizará el cálculo. El desplegable varía en función del número de procesadores que disponga el ordenador donde se está ejecutando la orden. En la captura de pantalla puedes ver que se ha seleccionado 12 hilos de ejecución. Esto significa que si lo comparamos con versiones anteriores de Digi3D o de OrthoBatch, el cálculo de la ortofoto se generará 12 veces más rápido en la misma máquina.
  2. GeoTIFF. La ortofoto se va a crear en el mismo sistema de coordenadas que la ventana de dibujo. Como Digi3D.NET sabe en todo momento el sistema de coordenadas de la ventana de dibujo, va a almacenar esa información en la cabecera del GeoTIFF junto con la geo-referenciación de la ortofoto. De esta manera, cualquier programa que permite cargar ortofotos (como Digi3D.NET, GlobalMapper) no es necesario siquiera generar un archivo .Tfw asociado.
  3. Canal alfa. Podemos indicar si queremos que se genere un canal de transparencia que es un mecanismo estándar para los píxeles que están fuera de la orfototo (fuera del modelo digital del terreno o de la imagen original) en vez del sistema que utilizan Digi3D 2007 y OrthoBatch de indicar que un determinado color se debe considerar como transparente. Así programas como Photoshop considerarán los píxeles transparentes como transparentes.
  4. Tamaño de las teselas. La imagen resultante va a estar teselada (con tiles), de esta manera los programas que carguen nuestra ortofoto podrán optimizar la memoria. El cuadro de diálogo de cálculo de ortofotos nos va a permitir indicar el tamaño de las teselas.
  5. Niveles piramidales. Podemos también indicar si queremos que se generen niveles piramidales, el nivel piramidal máximo y si queremos o no que estén auto-contenidos dentro de la propia imagen.
  6. Geo-referenciación adicional. Además podemos indicar si queremos que se generen archivos de geo-referenciación adicionales. Los archivos GeoTIFF ya están geo-referenciados, pero es posible que queramos activar la generación de archivos Tiff World File para programas como versiones anteriores de Digi3D que no sean capaces de leer GeoTIFF. Además tenemos la opción de generar una capa de superposición para Google Earth, de modo que al hacer doble clic sobre el archivo de la capa, se abrirá Google Earth y nos mostrará nuestra flamante ortofoto.

A continuación tienes un vídeo en el que puedes ver todo esto en acción.