Nubes de puntos georeferenciadas

Transformación de coordenadas georreferenciadas a coordenadas locales

Conversión de nubes de puntos georreferenciadas a coordenadas locales de Revit

Objetivos

  1. Aprender a transformar nubes de puntos georreferenciadas a las coordenadas locales de nuestro proyecto en Revit.
  2. Evitar los problemas de gestión de coordenadas grandes de Revit.

Prerrequisitos

  1. El usuario tiene acceso a los siguientes programas:
  1. Autodesk ReCap. Puedes descargar una versión de prueba aquí.
  2. CloudCompare, para procesar y transformar las nubes de puntos.
  3. Autodesk Revit 2020 o superior
  1. El usuario tiene nubes de puntos georreferenciadas y un modelo de Revit con coordenadas compartidas alineados. Descarga un modelo y nube de ejemplo aquí.

Descripción

Cuando los valores de coordenadas son demasiado grandes (básicamente siempre que nos salimos del límite de 30 kilómetros desde el origen interno de Revit) el motor de render de nubes de puntos de Revit no resuelve correctamente la transformación de cada punto de la nube desde sus coordenadas UTM a las coordenadas locales del proyecto, dando lugar a un baile de puntos alrededor de cada coordenada.

En esta guía mostramos el procedimiento para determinar la transformación geométrica que tenemos que aplicar a las nubes georeferenciadas para pasarlas a las coordenadas internas de nuestro proyecto de Revit.

Procedimiento

Preparación de las nubes de puntos en ReCap

El formato de nubes de puntos .rcp / .rcs de ReCap es propietario y CloudCompare no puede abrirlo. Para poder procesar los archivos, tendremos que exportar las nubes desde ReCarp en alguno de estos formatos:

  • pts (formato de texto legible ASCII, ocupa una barbaridad de espacio)
  • e57 (formato binario estructurado)

Usaremos el formato binario e57

El procedimiento a seguir será:

  1. Exportar la nube original desde ReCap usando el menú o el atajo Ctrl + E
  2. Exportamos la nube con las ediciones que haya tenido marcando la opción “3d-only”
  3. Guardamos el fichero e57 en disco para trabajar con CloudCompare

Extracción de información del modelo necesaria

Mediante la definición de Dynamo que se encuentra en los archivos de soporte de esta guía, podemos extraer la información que necesitaremos para procesar las nubes de puntos en CloudCompare

La definición requiere que especifiquemos los siguientes inputs:

  1. Una carpeta en disco en la que guardar los archivos .txt que contendrán las matrices de traslación y rotación que usaremos en CloudCompare
  2. Marcar “True” para que se guarden los archivos al ejecutar la definición
  3. Especificar el Global Shift o desplazamiento global a utilizar para truncar las coordenadas de cada punto de la nube y que CloudCompare pueda procesarlos. La matriz de traslación que crea la definición tendrá en cuenta este desplazamiento global.

La definición trabaja en metros.


Procesado en CloudCompare

Abrimos las nubes en formato e57

En el cuadro de diálogo introducimos el global shift (1), desmarcando la opción “Preserve global shift on save” y aplicando el shift a todas las nubes con “Yes to All”. El objetivo es que las coordenadas UTM (3) se trunquen para (4) para poder ajustar las nubes a nuestro sistema de coordenadas local.

Si vamos a realizar este proceso con muchas nubes, el shift por defecto se puede configurar antes para que aparezca con un nombre identificativo en el cuadro de dialogo tal y como se ve en la imagen.

Puede suceder que el global shift no se haya aplicado a todas las nubes. Podemos comprobarlo visualizando coordenadas y haciendo zoom a cada una. En la versión de CloudCompare que utilizamos al redactar esta guía, la primera nube de la selección no se queda con el global shift registrado.

TIP

Podemos mostrar las coordenadas de un punto activando la opción en

Display > Show cursor coordinates.

Nube con el shift erróneo (aún tiene las coordenadas georreferenciadas

Nube con el shift correcto

Para corregirlo, editamos el shift de la nube incorrecta para recolocarla en su sitio. Lo importante es que sus coordenadas en el sistema local de coordenadas sean consistentes con las del resto de nubes:

Seleccionamos de nuevo el global shift por su nombre (1) si lo hemos guardado, y si no nos aparecerá la sugerencia de utilizar el último valor guardado.

Marcamos “Keep original position fixed” (2) y nos aseguramos de que las coordenadas locales cuadren. El cuadro de diálogo nos mostrará el desplazamiento a aplicar.

Comprobamos que la nube recolocada se registra correctamente con el resto y sus coordenadas se han truncado como esperábamos.

El siguiente paso es muy importante: debemos poner a cero el global shift de todas las nubes para que al guardar el archivo transformado, CloudCompare restaure el desplazamiento y mueva las nubes a su ubicación original.

Seleccionamos todas las nubes en el DB Tree (1), y en el menú edición (2), seleccionamos “Edit Global Shift and Scale” (3). Ponemos a cero el desplazamiento global (4) y desmarcamos “Keep original position fixed” (5). Veremos que en el panel izquierdo (que muestra como quedarán las coordenadas al escribir a disco) estas aparecen en azul con los valores truncados que tienen en el panel derecho.

A continuación aplicamos las matrices de transformación  a todas las nubes, cargando la matriz desde los archivos .txt que creamos previamente con Dynamo. Para ello:

  • Seleccionamos todas las nubes y en Edit > Apply Transformation cargamos los archivos txt con las matrices de transformación y clickamos Ok Aplicaremos primero la traslación y luego la rotación. El orden de las transformaciones es importante.

  • Comprobamos que las nubes están ortogonales a los ejes principales, que están orientadas correctamente y el origen está donde esperamos
  • Por último, guardamos el proyecto en formato e57, especificando en el nombre que es el archivo modificado en coordenadas locales.

Conversión en Recap

Creamos un Proyecto nuevo en el que importar nuestras nubes de puntos transformadas.

Creamos el nuevo proyecto .rcp que contendrá las nubes y será importado en Revit.

Importamos las nubes que hemos transformado y guardado en formato e57

Clickamos Next y ReCap se pone a procesar las nubes

Podemos abrir el proyecto y a medida que ReCap procesa las nubes, irán apareciendo los puntos. En cuanto una parte sea visible,  comprobamos que las coordenadas están en los valores que nos esperamos para coordenadas locales.

Guardamos  el proyecto .rcp cuando termina de procesar las nubes


Inserción en Revit

Las nubes convertidas (1) se vinculan en Revit insertándolas (2)  de origen a origen interno (aunque, en realidad, Revit insertará el origen de la nube de puntos en el Punto Base de Proyecto)

Vinculamos la nube y comprobamos que cuadra con lo que esperábamos.

¡Listo!


Tips&Tricks

  • En proyectos de pequeña escala (que puedan inscribirse en un cuadrado de 100 metros de lado) es mejor ponerse de acuerdo con nuestro topógrafo y trabajar con nubes de puntos en coordenadas locales en las que tengamos puntos de referencia para poder localizarlas correctamente.
  • Las nubes de puntos pueden seccionarse para que representen solo la parte de información que necesitamos en cada momento. Puedes dividir una nube de puntos de un nivel en suelo, intermedio y techo y así hacer más fluido el trabajo en Revit. Esto puede hacerse en ReCap y en CloudCompare.

Bottom-line

La captura de la realidad con nubes de puntos implica volúmenes de datos muy grandes y operaciones numéricas con números grandes que Revit no maneja demasiado bien. Es mucho más operativo simplificar el problema para mejorar el flujo de trabajo.

Archivos asociados y referencias

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Time limit exceeded. Please complete the captcha once again.

  • Antes de enviar tu consulta, échale un vistazo a la información básica sobre protección de datos aquí.

    Modelical.com le informa que los datos personales que usted proporcione serán tratados por MODELICAL CONSULTORIA S.L. como responsable de este sitio web.

    Finalidad de la recogida y tratamiento de los datos personales: Enviar la información que el usuario requiera a través del sitio web. - Legitimación: Consentimiento del interesado. - Destinatarios: Hosting: Gigas, hosting 100% español y 100% seguro. - Derechos: Podrá ejercer sus derechos de acceso, rectificación, limitación y supresión de los datos de unsubscribe@modelical.com así como el derecho a presentar una reclamación ante una autoridad de control.