La sugerencia de @om_henners funcionará bien, especialmente si está creando la cuadrícula de la manera "correcta".
El a la derecha considera que cada punto de la cuadrícula está desplazado del origen por la suma de múltiplos integrales de dos vectores base. En coordenadas proyectadas, una buena elección de vectores base para una malla triangular consiste en un vector arbitrario de la longitud deseada ( Por ejemplo , 9 metros) junto con una rotación de ese vector en 120 grados. Por ejemplo, si quieres que las bases de los triángulos sean horizontales puedes elegir que el primer vector sea e \= (9, 0). El segundo sería entonces igual a f \= (-9/2, Sqrt(3)*9/2) = (-4,5, 7,794229). Dejando que O \= (Ox, Oy) son las coordenadas del origen, todos los demás puntos de la cuadrícula son de la forma
i * e + j * f + O
donde i y j son números enteros. Aquí está la gracia: para compensar la distorsión en las coordenadas geográficas, dividir la primera coordenada de cada vector base por el coseno de la latitud, convertir todos los desplazamientos a grados, pero por lo demás todo lo demás sigue igual.
Por ejemplo, a 40 grados de latitud el coseno es 0,766044. Esto convierte e a e' \= (9/0,766044, 0) = (11,74867, 0) y f se convierte en f' \= (-4.5/0.766044, 7.794229) = (-5.874333, 7.794229). Ahora convierta estas cuatro coordenadas en grados: la división por 111,111 (metros por grado) suele ser suficiente. Utilizando estos vectores en lugar de e y f en la fórmula de la cuadrícula, pero manteniendo O en el mismo lugar (y utilizando los mismos conjuntos de i y j ) establece su cuadrícula en coordenadas geográficas. En estas distancias cortas (hasta 144 pies en este caso, o hasta varios kilómetros en general) se puede obtener una precisión extremadamente alta ajustando primero la latitud a una latitud esférica equivalente antes de calcular el coseno, pero normalmente el error es tan pequeño (mucho menos del 1%) que no importa.
El enfoque vectorial se ilustra en un antiguo artículo mío .
Por cierto, una buena característica es que puedes girar y desplazar fácilmente la cuadrícula. Para girarla, basta con rotar el original vectores base e y f por la cantidad deseada, ajustar sus primeras coordenadas por el coseno, y luego volver a calcular los puntos de la cuadrícula como combinaciones lineales de estos vectores base ajustados. Para desplazar la malla, basta con desplazar el origen O . De este modo, ya no se es esclavo del sistema de coordenadas: se puede orientar y posicionar la rejilla según las necesidades de la aplicación. Otra característica interesante es que todas las cuadrículas regulares matemáticamente posibles se puede construir de esta manera. Sólo hay que cambiar e y f . Por ejemplo, cuando f está a 90 grados de e creará una cuadrícula rectangular.