Archivo de la etiqueta: trucos

Truco: Elimina una orden de la ventana de dibujo en Digi3D.NET

En Digi3D.NET podemos anular órdenes para que no se puedan utilizar. Hoy te voy a explicar cómo eliminar órdenes de la ventana de dibujo.

Los motivos pueden ser varios: quizás estemos haciendo un trabajo en el que no queremos que se pueda ejecutar la orden COMPRIMIR, quizás queremos que se anule SALIR, o cualquier motivo.

Digi3D.NET no implementa la órdenes que ejecutas a diario, sino que estas están implementadas en distintas extensiones. A continuación te muestro las extensiones que instala el instalador de Digi3D.NET y el tipo de órdenes que implementa cada extensión:

Extensión Tipos de órdenes
DigiNG.OrdenesStandard Órdenes habituales como LINEA, ARCO, COMPRIMIR, etc.
DigiNG.OrdenesBaseDatos Órdenes relacionadas con bases de datos.
DigiNG.OrdenesMDT Órdenes relacionadas con Modelos Digitales del Terreno.
DigiNG.OrdenesRaster Órdenes relacionadas con imágenes.
DigiNG.OrdenesTopologia Órdenes relacionadas con topología.

La mayoría de órdenes que conoces están implementadas en la extensión DigiNG.OrdenesStandard. Puedes ver dónde está implementadas las órdenes en la ayuda, pues la referencia de cada orden muestra al final en una tabla en la que se indica la extensión en la que se implementa esa orden en particular (en el vídeo de al final de esta entrada te lo muestro).

Bien, pues todas estas extensiones publican los nombres de las órdenes en un archivo .XML que puedes encontrar en %ProgramFiles%\Digi21.net\Digi3D.NET\es-ES.

La última carpeta se llama es-ES pues es donde están las cosas de Español. Podrás comprobar que también hay una carpeta llamada en-US. Ahí tienes los mismos archivos que en la es-ES, pero todo el contenido que encuentres en esa carpeta es para el idioma inglés.

En esa carpeta te encontrarás unos archivos que se llaman igual que las extensiones enumeradas en la tabla anterior con extensión .xml.

Si abres una de ellas con tu editor de texto favorito, te encontrarás con todas las órdenes que implementa la extensión.

Ahora tan solo nos queda comentar o eliminar el nodo que representa a la orden que queremos eliminar. Para ello tenemos que buscar lo siguiente:

name=”orden”

Por ejemplo:

name=”salir”

Nuestro editor nos llevará al nodo XML en el que se publica la orden.

Podemos hacer dos cosas: o eliminamos el nodo completamente o lo comentamos mediante un comentario XML.

En el vídeo de a continuación te muestro como hacerlo.

Truco: Haz que Digi3D.NET consuma menos memoria y arranque más deprisa

Cuando instalas Digi3D.NET en tu equipo el instalador activa el 100% de las funcionalidades de éste activando todas las extensiones disponibles. Esto hace que el programa cargue muchas DLLs que posiblemente nunca has utilizado y que jamás vas a utilizar, y repercute en el tiempo de carga de la aplicación y en el consumo de memoria de éste.

Afortunadamente podemos deshabilitar los componentes que no utilizamos y configurar el programa a nuestra medida para hacer que éste cargue más rápido y que consuma menos memoria.

Digi3D.NET al arrancar busca en el registro de Windows las extensiones a cargar y carga todas las que estén habilitadas.

Vamos a ver las distintas familias de extensiones disponibles y cómo podemos indicar en el registro que no se cargue una extensión en particular.

Extensiones para la ventana fotogramétrica:

Cuando carga el módulo de Digi3D, éste se pone a cargar extensiones, y sus extensiones son los distintos sensores. Algunos sensores a su vez pueden tener sus propias extensiones.

Veamos en la siguiente tabla la ubicación de cada una de estas extensiones:

Extensión Clave del registro ¿Tiene extensiones propias?
Sensor ADS HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.ADS40Sensor No
Sensor cónico HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.ConicSensor Si
Sensor Ortofoto HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.Orthophoto  No
Sensor satelital HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.Rpc Si
Sensor VM Quasi Panoramic HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.VMQuasiPanoramic  No
Web Map Service HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.WMS No
Web Map Tile Service HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.WMTS No

Los sensores Cónico y Satelital tienen sus propias extensiones, que son las extensiones encargadas de importar orientaciones de distintos formatos de archivo.

Veamos la ubicación de las extensiones del sensor cónico:

Extensión Clave del registro
AeroOffice HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.ConicSensor\Extensiones\Camaras\AeroOffic
Digi3D HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.ConicSensor\Extensiones\Camaras\Digi3D
Dvp HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.ConicSensor\Extensiones\Camaras\Dvp
EspaKernel HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.ConicSensor\Extensiones\Camaras\EspaKernel
Imu HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.ConicSensor\Extensiones\Camaras\Imu
Lps HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.ConicSensor\Extensiones\Camaras\Lps
PatB HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.ConicSensor\Extensiones\Camaras\PatB
Pix4D HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.ConicSensor\Extensiones\Camaras\Pix4D
RapidCal HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.ConicSensor\Extensiones\Camaras\RapidCal
Summit Evolution HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.ConicSensor\Extensiones\Camaras\Summit

y a continuación las extensiones del sensor satelital:

Extensión Clave del registro
Ikonos HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.Rpc\Extensions\Digi3D.Rpc.Ikonos
Inpho HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.Rpc\Extensions\Digi3D.Rpc.Inpho
Isd HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.Rpc\Extensions\Digi3D.Rpc.Isd
Lps HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.Rpc\Extensions\Digi3D.Rpc.Lps
Nitf HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.Rpc\Extensions\Digi3D.Rpc.Nitf
Pleyades HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.Rpc\Extensions\Digi3D.Rpc.Pleyades
Socet Set HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.Rpc\Extensions\Digi3D.Rpc.SocetSet
Summit Evolution HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.Rpc\Extensions\Digi3D.Rpc.SummitEvolution

Extensiones para la ventana de dibujo:

DigiNG tiene dos familias de extensiones:

  • Proveedores de órdenes.
  • Importadores/exportadores de archivos de dibujo.

Veamos la ubicación para los distintos proveedores de órdenes:

Extensión Clave del registro
Motor de órdenes .NET HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\Extensiones\DigiNG.Interop
Bases de datos HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\Extensiones\DigiNG.OrdenesBaseDatos
Modelos digitales del terreno HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\Extensiones\DigiNG.OrdenesMDT
Raster HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\Extensiones\DigiNG.OrdenesRaster
Topologia HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\Extensiones\DigiNG.OrdenesTopologia
Pleyades HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.Rpc\Extensions\Digi3D.Rpc.Pleyades
Socet Set HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\

y a continuación la ubicación de los distintos importadores de archivos de dibujo:

Extensión Clave del registro
DEMS de ArcGis HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.ArcGis.Dem
Archivos ASCII clásicos de Digi HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.AsciiDigi
Archivos binarios clásicos de Digi HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.Bin
Archivos binarios de doble precisión HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.BinDouble
Archivos separados por comas HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.Csv
Archivos DGN HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.DGN
Archivos DWG HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.DWG
Archivos Geo JSON HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.GeoJSON
Archivos KML HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.KML
Archivos Kork HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.Kork
Archivos LAS HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.Las
Archivos MDTopX HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.Mdt
Imágenes (ortofotos, etc) HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.Raster
Archivos Shapefile HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.Shp
Archivos Scalable Vector Graphics HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.Svg
Conexiones con Web Map Service HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.Wms
Archivos XYZ HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\DigiNG\IO\Digi21.Io.Xyz

¿Cómo deshabilitar la carga de una extensión?

Todas las claves enumeradas en las tablas anteriores tienen un valor denominado Activated. Si este valor tiene asignado un 0 la extensión en particular no se carga, de manera que para hacer que Digi3D.NET no cargue el sensor VM Quasi Panoramic, lo único que tenemos que hacer es asignar el valor 0 al valor: HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NET\Digi3D\Extensiones\Digi3D.VMQuasiPanoramic\Activated.

Puedes ver cómo deshabilito casi todas las extensiones de Digi3D.NET en el siguiente vídeo:

Truco: Haz que el formato de archivo por defecto en Digi3D.NET sea .bin en vez de .bind

El formato de archivo de dibujo .bind incorporado en Digi3D.NET tiene muchas ventajas con respecto al clásico .bin como por ejemplo:

  • Identificación dentro del propio archivo del Sistema de Referencia de Coordenadas de las entidades.
  • Doble precisión en las coordenadas.
  • Sistema nativo para multi-codificación.
  • Admite tipos de entidades de terceros.
  • Versionable.
El problema es que aún hay mucha base de usuarios que utiliza versiones antiguas del programa que no reconocen este formato.

Por defecto Digi3D.NET muestra archivos .bind en los cuadros de diálogo que solicitan archivos de dibujo, y esto puede ser una molestia si colaboramos con usuarios de versiones anteriores, pues tenemos que cambiar el tipo de archivo en el desplegable de los cuadros de diálogo.

Digi3D.NET dispone de un truco que nos va a permitir cambiar el orden de los archivos por defecto, y nos va a permitir hacer que el formato por defecto sea el formato .bin.
El truco va a involucrar tocar el registro, pero siempre que lo hagas con cuidado, no vas a encontrarte con ningún problema.
Cuando ejecutas Digi3D.NET, éste en el proceso de inicialización se pone a cargar extensiones.
¿Cómo sabe Digi3D.NET el nombre de las extensiones que debe cargar?
Hay varias familias de extensiones, una de las cuales son las extensiones de importadores/exportadores de archivos de dibujo. En caso de ser extensiones de importadores/exportadores de archivos de dibujo, extrae los nombres de las extensiones a cargar de las sub-claves de la calve del registro:
HKEY_LOCAL_MACHINE\SOFTWARE\Digi21\Digi3D.NETBeta2016\DigiNG\IO
Cada una de las sub-claves de esta clave representa una extensión de importadores de archivos de dibujo.
Entre ellas están las claves:
  • Digi21.Io.BinDouble
  • Digi21.Io.Bin
Que como te podrás imaginar representan la primera al importador de archivos .bind y la segunda al importador de archivos .bin.
Bien, pues todas estas claves tienen un valor denominado Order.
Por defecto el valor de Order para Digi21.Io.BinDouble es 0, y el valor de Order para Digi21.Io.Bin es 1.
El truco consiste en cambiar estos valores, y hacer que el valor de Order para Digi21.Io.BinDouble sea 1 y para Digi21.Io.Bin sea 0.
Puedes verlo en el siguiente vídeo: