import proj4 from 'proj4' // Définir les paramètres de la projection WGS84 (EPSG:4326) (GPS) proj4.defs('EPSG:4326', '+proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs'); // Définir les paramètres de la projection Lambert 93 (EPSG:2154) proj4.defs('EPSG:2154', '+proj=lcc +lat_1=49 +lat_2=44 +lat_0=46.5 +lon_0=3 +x_0=700000 +y_0=6600000 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs'); // Définir les paramètres de la projection UTM Zone 20N (EPSG:32620) proj4.defs('EPSG:32620', '+proj=utm +zone=20 +ellps=WGS84 +datum=WGS84 +units=m +no_defs'); // Définir les paramètres de la projection UTM_N21 (exemple) proj4.defs('EPSG:32621', '+proj=utm +zone=21 +ellps=WGS84 +datum=WGS84 +units=m +no_defs'); // Définir les paramètres de la projection UTM_N22 (exemple) proj4.defs('EPSG:32622', '+proj=utm +zone=22 +ellps=WGS84 +datum=WGS84 +units=m +no_defs'); // Définir les paramètres de la projection UTM_S38 (exemple) proj4.defs('EPSG:32638', '+proj=utm +zone=38 +ellps=WGS84 +datum=WGS84 +units=m +no_defs'); // Définir les paramètres de la projection UTM_S40 (exemple) proj4.defs('EPSG:32740', '+proj=utm +zone=40 +ellps=WGS84 +datum=WGS84 +units=m +no_defs'); export const transformToGPS = (system, coordX, coordY, ) => { if (system.includes('LAMBERT_93')) { return lambert93toGPS(coordX, coordY) } if (system.includes('UTM_N20')) { return utmN20toGPS(coordX, coordY) } if (system.includes('UTM_N21')) { return utmN21toGPS(coordX, coordY) } if (system.includes('UTM_N22')) { return utmN22toGPS(coordX, coordY) } if (system.includes('UTM_S38')) { return utmS38toGPS(coordX, coordY) } if (system.includes('UTM_S40')) { return utmS40toGPS(coordX, coordY) } console.error(system); } function lambert93toGPS(easting, northing) { // Convertir les coordonnées Lambert 93 en WGS84 (GPS) const [longitude, latitude] = proj4('EPSG:2154', 'EPSG:4326', [easting, northing]); return { latitude, longitude }; } function utmN20toGPS(easting, northing) { // Convertir les coordonnées UTM en WGS84 (GPS) const [longitude, latitude] = proj4('EPSG:32620', 'EPSG:4326', [easting, northing]); return { latitude, longitude }; } function utmN21toGPS(easting, northing) { // Convertir les coordonnées UTM_N21 en WGS84 (GPS) const [longitude, latitude] = proj4('EPSG:32621', 'EPSG:4326', [easting, northing]); return { latitude, longitude }; } function utmN22toGPS(easting, northing) { // Convertir les coordonnées UTM_N22 en WGS84 (GPS) const [longitude, latitude] = proj4('EPSG:32622', 'EPSG:4326', [easting, northing]); return { latitude, longitude }; } function utmS38toGPS(easting, northing) { // Convertir les coordonnées UTM_S38 en WGS84 (GPS) const [longitude, latitude] = proj4('EPSG:32638', 'EPSG:4326', [easting, northing]); return { latitude, longitude }; } function utmS40toGPS(easting, northing) { // Convertir les coordonnées UTM_S40 en WGS84 (GPS) const [longitude, latitude] = proj4('EPSG:32740', 'EPSG:4326', [easting, northing]); return { latitude, longitude }; }