Tal y como se explica en Relaciones geométricas entre entidades, para que dichos análisis funcionen correctamente, es necesario que siempre que una entidad (punto, línea, polígono) cruce otra entidad exista un vértice en la intersección de ambas entidades.
Hasta hoy teníamos dos formas de insertar vértices en las intersecciones:
- Activando la variable booleana: TENTATIVO_INSERTA.
- Ejecutando la orden: INSERTAR_VERTICE_INTERSECCION_LINEAS_VISIBLES
Pero estas órdenes tienen sus inconvenientes:
- La orden tentativo inserta únicamente introduce vértices en las entidades en las que hemos tentativado (líneas y polígonos desde hace unos pocos días).
- La orden de insertar vértice en la intersección de líneas visibles analiza todo el archivo, de modo que si éste tiene muchas entidades, puede demorarse. Además, trabaja únicamente con líneas. Si una línea se cruza con un polígono, no añade vértice alguno a las entidades que formen el polígono.
Acabamos de añadir a Digi3D.NET la variable booleana: AUTO_INSERTAR_VERTICE_INTERSECCION_AL_FINALIZAR_LINEA, que como su nombre indica, inserta automáticamente vértices en las intersecciones de la línea que acabas de digitalizar con el resto de intersecciones.
Esta orden tiene la característica de que sí que es capaz de añadir vértices en polígonos (en la línea que hace de límite del polígono o en cualquiera de las líneas que forman los huecos de éste), y además está optimizada pues únicamente analiza las líneas que se cruzan con la línea que acabas de digitalizar.
Esta orden no sabe de códigos, es decir que añadirá vertices a todas las líneas o polígonos que se crucen con la línea que acabas de digitalizar (y obviamente también añadirá esos vértices a la propia línea), independientemente de los códigos que tengan dichas líneas.
En el siguiente vídeo te muestro en acción esta nueva característica de Digi3D.NET.