Cualquier software que pueda proyectar coordenadas con precisión puede calcular indicadores Tissot precisos .
Una buena fuente para las fórmulas es Snyder, John, Map Projections - A Working Manual , principalmente en las páginas 20-26. (No los reproduciré aquí porque este sitio no tiene herramientas apropiadas para comunicar fórmulas matemáticas). Requieren las cuatro primeras derivadas de las coordenadas proyectadas (x, y) con respecto a las coordenadas esféricas (lat, lon) = (phi, lambda):
dx / d(phi), dx / d(lambda);
dy / d(phi), dy / d(lambda).
Todo lo demás sobre los TI se calcula en términos de estos (utilizando algunas funciones aritméticas y trigonométricas: el coseno, el seno inverso principal y la tangente inversa principal). Los cálculos requieren una descripción de la forma de la tierra. Para obtener la mayor precisión, utilice un dato elipsoidal con semieje mayor a y excentricidad e. (Estos serán conocidos por el software).
El libro de Snyder tiene instrucciones sobre cómo calcular todo excepto estos derivados. Hazlo numéricamente. He tenido excelentes resultados usando estimaciones de diferencias finitas centrales de primer orden a una distancia de h = 10 ^ (- 5.2) radianes (típicamente alrededor de 50 metros): este es un buen compromiso entre tratar de acercarse infinitamente y perder demasiada precisión de redondeo de punto flotante (suponiendo doble precisión), porque el error cometido es proporcional a (10 ^ (- 5.2)) ^ 2 = 10 ^ (- 10.4) y 10 ^ (- 5.2) es igual a 10 ^ 10.4 veces la precisión de doble precisión IEEE de 10 ^ (- 15.6) y todavía es mucho más grande que la precisión típica en proyecciones, que generalmente van de 10 ^ (- 10) a aproximadamente 10 ^ (- 14).
Entonces, ¿cómo se calculan las estimaciones de diferencias finitas? Esta parte es sorprendentemente fácil. Para obtener dx / d (phi) en un punto (phi, lambda), solicite a su SIG que proyecte los puntos
(phi - h/2, lambda) --> (x0,y0),
(phi + h/2, lambda) --> (x1,y1).
Usa las estimaciones
dx / d(phi) = (x1 - x0)/h,
dy / d(phi) = (y1 - y0)/h.
Del mismo modo, proyecte los puntos
(phi, lambda - h/2) --> (x2,y2),
(phi, lambda + h/2) --> (x3,y3)
y usar las estimaciones
dx / d(lambda) = (x3 - x2)/h,
dy / d(lambda) = (y3 - y2)/h.
Eso requiere cuatro proyecciones y un poco de aritmética. (Puede reducirlo a tres mediante el uso de diferencias no centrales, pero la precisión disminuye un poco. Es sabio apuntar a una alta precisión, sin dejar que h sea demasiado pequeña, a menos que esté seguro de que su SIG está usando grado de encuesta (milímetro) precisión en sus fórmulas de proyección.)
A partir de estos derivados, junto con las fórmulas de Snyder (prestando atención a las modificaciones descritas en 4-19 y 4-21), puede obtener las longitudes de los ejes de la Tissot Indicatrix en (phi, lambda) y su orientación. En los mapas a escala mundial, el TI será tan pequeño como invisible, por lo que lo último que debe hacer es decidir cuánto desea reescalar cada TI. Determino el factor de escala averiguando qué tan grande será el mapa, encontrando los tamaños de TI típicos en todo el mapa y escalando para que esas TI tengan aproximadamente un 6% del ancho del mapa. Es un buen comienzo, de todos modos; Dejo que el usuario ajuste el tamaño de la TI desde allí. Por supuesto, volverá a escalar todas las TI en la misma cantidad, para que puedan ser comparadas, y cada una será reescalada alrededor de su propio centro (que se obtiene mediante una quinta proyección, (phi, lambda) -> (x, y) )
Una buena adición a la representación elíptica de la TI es mostrar las direcciones del meridiano local y el paralelo: luego, de un vistazo, puede evaluar la convergencia de la cuadrícula . También muestro un círculo estándar (que no representa distorsión) concéntrico con cada TI porque mejora la capacidad del lector para medir la cantidad de distorsión representada por cada elipse.
En esta proyección de Mollweide, cabe destacar la extrema TI cerca del polo sur. Sigue siendo una elipse perfecta y describe con precisión la distorsión del mapa allí.