Desde la lectura del documento hasta la página 2, parece que los pesos del volumen se almacenan en las esquinas de la cuadrícula en lugar de ser el peso del cubo en sí, como prefieren los algoritmos normales del estilo de los Cubos de Marcha. Estos pesos de esquina definen un punto entre el borde entre 2 esquinas donde hay un cambio de signo de esquina a esquina. Los bordes con cambios de signo también almacenan una normal para el borde, que es la línea en ángulo en su representación 2D en el OP. Esa información normal se define durante la creación del volumen (por cualquier herramienta de edición o método de creación de volumen de procedimiento que se esté utilizando), no después de que se genere la isosuperficie como se esperaría con un algoritmo de estilo de los Cubos de Marcha. Estos datos normales "establecen" que la línea / superficie que pasa por el punto debe tener el valor normal predefinido. En los casos en que los Cubos de marcha doblarían la línea en ese punto para emparejarse con otro punto en un borde adyacente, los Cubos de marcha extendidos y el Contorneado dual extienden la línea / superficie hacia afuera hasta que se cruza con la línea / superficie que pasa a través del punto en el borde adyacente que tiene un valor normal diferente. Esto permite crear esquinas afiladas a partir de los datos de volumen donde los algoritmos básicos de Cubos de marcha redondearían un poco la superficie. No entiendo muy bien cómo los QEF (funciones de error cuadrático) juegan en esto, excepto que parece que hacen que sea más fácil calcular el punto extendido dentro de un cubo donde se ubicará una esquina. Los cubos de marcha extendidos y el contorno doble extienden la línea / superficie hacia afuera hasta que se cruza con la línea / superficie que pasa a través del punto en el borde adyacente que tiene un valor normal diferente. Esto permite crear esquinas afiladas a partir de los datos de volumen donde los algoritmos básicos de Cubos de marcha redondearían un poco la superficie. No entiendo cómo los QEF (funciones de error cuadrático) juegan en esto, excepto que parece que hacen que sea más fácil calcular el punto extendido dentro de un cubo donde se ubicará una esquina. Los cubos de marcha extendidos y el contorno doble extienden la línea / superficie hacia afuera hasta que se cruza con la línea / superficie que pasa a través del punto en el borde adyacente que tiene un valor normal diferente. Esto permite crear esquinas afiladas a partir de los datos de volumen donde los algoritmos básicos de Cubos de marcha redondearían un poco la superficie. No entiendo cómo los QEF (funciones de error cuadrático) juegan en esto, excepto que parece que hacen que sea más fácil calcular el punto extendido dentro de un cubo donde se ubicará una esquina.
Tenga en cuenta que he estado hablando de líneas y bordes aquí en el sentido 2D como se muestra en la representación en el OP. Tendría que leer un poco más y pensar para extender esto a 3D para la generación de mallas volumétricas.
Para abordar la segunda mitad de su pregunta sobre cómo generar las normales, y pensar desde un punto de vista de procedimiento impulsado por el ruido, parece que llenaría su volumen con datos de ruido y luego buscaría bordes con cambios de signos, luego examinaría los 4 cubos que comparten el borde para averiguar dónde se generarán los triángulos y calculan el vértice normal como lo harías para cualquier otra intersección de triángulos múltiples, tomando el promedio de las normales para cada triángulo que comparte el vértice. Esto es muy especulativo por mi parte, ya que el artículo trata principalmente de operaciones CSG y volúmenes generados a partir de mallas convertidas por escaneo, las cuales tienen normales bien definidas en las superficies.
Espero que al menos la primera parte de esta respuesta aborde las diferencias en cómo se representan y usan los datos de peso de una manera bastante diferente de los Cubos de Marcha básicos, y por qué los datos normales deben crearse bastante temprano en el proceso de generación de volumen, donde con los cubos básicos de marcha, los normales normalmente se crean como una última etapa en el proceso de generación de malla.