Por ejemplo, para un icosaedro definido como
Diagrama : Un icosaedro regular (cortesía de Microsoft Visio):
Definimos la posición y la orientación con respecto al marco de referencia de este cuerpo como sigue:
- Punto O en el origen: (0, 0, 0)
- Punto P dentro de la media línea: (x=0, y>0, z=0)
- Punto P1 dentro de la media línea: (x=0, y<0, z=0)
- Punto A dentro del cuarto plano: (x>0, y<0, z=0)
Pregunta 1: ¿Métodos formales/convenios?
¿Existe (a) ¿una manera formal de indexar/ordenar las caras de un poliedro regular? En otras palabras, ¿algunos métodos para ordenar las caras/vértices, etc., son más correctos, lógicos o convencionales que otros métodos? Si no es así, ¿algunas codificaciones/ordenaciones de caras facilitan una manipulación más eficiente de los vectores? ¿Cómo deberían ordenarse las caras, o en qué orden deberíamos generar sus vectores de dirección normal?
O bien, es (b) ¿una cuestión de discreción arbitraria según los requisitos de la aplicación específica para la que se está diseñando; o bien arbitraria debido a las limitaciones fundamentales de la forma de las estructuras de datos y los algoritmos necesarios para manipular estos datos de la manera más eficiente?
Pregunta 2: Ordenación de la precisión recursiva
Supongamos que descomponemos cada triángulo de la superficie de forma recursiva en cuatro subtriángulos de forma que:
- Cualquier cara puede plegarse si sus vecinos de aristas adyacentes también se pliegan a lo largo de las aristas comunes y sus subtriángulos constituyentes se estiran (cada subtriángulo permanece plano pero ya no coplanario entre sí); para aproximarse más perfectamente a la superficie curva que se está modelando
- Cada mejora sucesiva de ≈4× en la precisión del área requiere exactamente dos bits adicionales de información para almacenar el "código de referencia" o "número de índice" resultante de la superficie
¿Existe (a) una manera matemática formal de ordenar o codificar estos subtriángulos constitutivos?
¿O es esto (b) ¿se puede dejar a la discreción del ingeniero la definición de una convención que prefiera?
¿Permiten algunas codificaciones de los triángulos constituyentes una manipulación de datos más eficiente, o es esta elección arbitraria? ¿Puede demostrarse esto de cualquier manera? Si la elección es teóricamente arbitraria, ¿existe ya una convención matemática pertinente?
Aplicación típica: visualización de datos geográficos
Lo utilizaremos para la geocodificación de datos, la indexación, la consulta y la visualización, utilizando proyecciones poliédricas a partir de formas casi esféricas (la superficie de la Tierra) con las mejores propiedades de:
- eficacia computacional (para la codificación/recuperación/visualización)
- baja distorsión espacial, alta uniformidad de área por espacio de código
- densidad de información
- simplicidad conceptual
Este documento ilustra nuestros propósitos generales:
http://www.progonos.com/furuti/MapProj/Normal/ProjPoly/projPoly.html#PolyhedralMaps
Convenciones sugeridas para la elaboración de mapas de datos geográficos
Orientaremos nuestra cartografía icosaédrica de manera que:
- Punto O (el origen) corresponde al centro de masa del cuerpo modelado
- Punto P corresponde al Polo Norte geográfico a +90° de latitud
- Punto P1 corresponde al Polo Sur geográfico a -90° de latitud
- Punto A se encuentra dentro del semiplano que contiene el primer meridiano, es decir, la longitud cero en las coordenadas polares modernas estándar (latitud, longitud). El diagrama icosaédrico aquí:
http://www.win.tue.nl/~vanwijk/myriahedral/
- del trabajo de Jack van Wijk sobre las "proyecciones miriédricas" parece validar la casi optimización de esta convención para el planeta Tierra en la era geológica actual.
A efectos de modelización o de visualización, el poliedro del modelo debe escalarse de forma que su volumen sea equivalente al geoide modelizado. Cuando el geoide es irregular y el poliedro de modelización es de alta resolución, pueden considerarse aceptables las aproximaciones a esta regla.
Diseño de referencia para codificar superficies/ posiciones
A menos que se nos aconseje una forma mejor, planeamos pedir las caras primero según la orientación de su vértice con la base del triángulo perpendicular a (PP1), ya sea arriba/abajo con respecto al vector (PP1); y segundo (para cada orientación) en una espiral/hélice, trabajando primero en sentido contrario a las agujas del reloj alrededor de (PP1), y luego en sentido de las agujas del reloj alrededor de (P1P) para la orientación opuesta del vértice. Esto numeraría los 20 triángulos principales de 0 a 4, de 8 a 12, de 16 a 20 y de 24 a 28 como sigue:
+ 0 1 2 3 4
0 P A1 B1; P B1 C1; P C1 D1; P D1 E1; P E1 A1;
8 A1 A B ; B1 B C ; C1 C D ; D1 D E ; E1 E A ;
16 P1 B A ; P1 C B ; P1 D C ; P1 E D ; P1 A E ;
24 B B1 A1; C C1 B1; D D1 C1; E E1 D1; A A1 E1;
- Este sistema de codificación tiene discontinuidades para simplificar las funciones lógicas para el cálculo de la orientación de los polígonos de la superficie, lo cual es necesario para traducir los datos de posición entre sistemas de coordenadas (la orientación puede considerarse sobre la base de triángulos individuales, o acumulativamente sobre la base de cálculos posicionales de estilo de suma recursiva N-ary). Obsérvese que las filas de esta tabla corresponden a rodajas del icosaedro orientadas horizontalmente, mientras que las columnas de esta tabla corresponden a medias rodajas orientadas diagonalmente (casi verticalmente).
Tenemos previsto codificar cada subtriángulo de forma recursiva según:
Formato de archivo; compresión de datos conforme a la recursión
Planeamos apoyar la compresión de datos y el renderizado adaptativo almacenando en cada nivel de detalle sólo el diferencias a partir de los valores medios correspondientes a la superficie madre jerárquica. De acuerdo con este objetivo, códigos de ubicación se almacenará y comunicará en un big-endian formato. Si se modela una esfera unitaria perfecta, la "esfera unitaria" debe ser de unidad radio . El volumen del esferoide/geoide unitario, etc., debe aproximarse en general a 4/3 unidades cúbicas lo más posible (las altitudes deben definirse en proporción con dicho geoide unitario, y debe especificarse un factor de escala para todo el geoide).
Beneficios para la comunidad (dominio público, consideraciones de propiedad intelectual)
Para promover la estandarización industrial, ahora publico estos planes libremente aquí, y consideraré la posibilidad de publicar mi trabajo libremente cuando esté completo como un conjunto de bibliotecas de software de código abierto. Para que conste, yo (Matthew Slyman) empecé a trabajar de forma independiente en este proyecto alrededor del año 1993, y propuse por primera vez esta idea a Iestyn Bleasdale-Shepherd a finales de 1996 (él implementó la primera prueba de concepto como un programa de IBM PC escrito en C durante las vacaciones de Navidad de 1996-1997). Posteriormente, dejamos de lado la aplicación original que estábamos discutiendo; y como creador de esta idea y único desarrollador de esta especificación, yo (Matthew Slyman) renuncio por la presente a cualquier reclamación de los derechos de propiedad intelectual de esta estructura de datos o de cualquier implementación de código compatible que pueda ser creada por terceros. Para servir mejor a la comunidad matemática, me gustaría dar prioridad en la etapa de diseño/implementación a cualquier requisito o convención matemática formal relevante. Cualquiera que comente en este hilo pone igualmente sus comentarios en el dominio público, para beneficio de la comunidad en general. A falta de otras instrucciones, numeraremos las caras según nuestras necesidades prácticas o caprichos (véase más arriba). Agradeceremos cualquier mejora formal que pueda ofrecer cualquier persona más instruida en matemáticas.
Propongo dar un nombre a este conjunto estandarizado de convenciones: " Icosamap ". Por favor, registre cualquier objeción a este nombre, incluyendo enlaces a cualquier prueba de prioridad dentro del campo científico correspondiente.