from lib.functions import toCART, toUTM
from lib.classes import EllipsoidDebes definir el elipsoide con el que se harán los cálculos. Para esto crea uno indicando sus semiejes mayor (a) y menor (b).
WGS84 = Ellipsoid(a=6378137, b=6356752.21424)Para convertir a coordenadas UTM:
(Este, Norte, huso) = toUTM(lat=-11.880944, long=-76.995881, ellip=WGS84)
# Output:
# Este = 282594.8131
# Norte = 8685831.5178
# huso = 18Para convertir a coordenadas cartesianas:
(X, Y, Z) = toCART(lat=-11.880944, long=-76.995881, h=423.3429, ellip=WGS84)
# Output:
# X = 1404762.0495
# Y = -6082697.8451
# Z = -1304604.4213La diferencia que existe entre las coordenadas obtenidas con este programa y la data oficial del IGN sobre las estaciones permanentes PI01 y LI03 es mínima.
| ID | Este (m) | Norte (m) | Huso | X (m) | Y (m) | Z (m) |
|---|---|---|---|---|---|---|
| IGN | 541252.2564 | 9427433.0234 | 17 | 1034460.3737 | -6267518.6437 | -572008.7368 |
| Calculado | 541252.2471 | 9427433.0559 | 17 | 1034460.3649 | -6267518.6471 | -572008.7073 |
| Diferencia | -0.0093 | 0.0325 | 0 | -0.0088 | -0.0034 | 0.0295 |
| ID | Este (m) | Norte (m) | Huso | X (m) | Y (m) | Z (m) |
|---|---|---|---|---|---|---|
| IGN | 308088.32324 | 8675748.8402 | 18 | 1429102.1648 | -6075125.0134 | -1314694.9459 |
| Calculado | 308088.2923 | 8675748.8383 | 18 | 1429102.1331 | -6075125.0146 | -1314694.9541 |
| Diferencia | -0.03094 | -0.0019 | 0 | -0.0317 | -0.0012 | -0.0082 |
getCoords.py
Se usa la libería exif para obtener:
- latitud
- longitud
- altitud (con respecto al nivel del mar)
de las fotos ubicadas en la carpeta photos.
Estos datos se escriben en el archivo input.csv
convertCoords.py
Para los cálculos se usa el elipsoide WGS84. Se convierte las coordenadas de las fotos a UTM y Cartesianas. Estos datos es escriben en el archivo output.csv