Java Script:Soluzioni varie
From Aino Wiki
Calcoli
Calcolo due punti rettangolo
Date 5 coordinate di un poligono determina i due punti rappresentativi. E' anche un esempio di passaggio per referenza usando variabili oggetto. C'è anche un esempio di conversione in decimale, e determinazione di numeri pari o dispari utilizzando l'operazione modulo (%) ovvero resto della divisione.
function AlCaricamento_OnLoad() { var objPolygon = { lat_min: 0.0, lat_max: 0.0, long_min: 0.0, long_max: 0.0 }; var region = "-1.123,22.3444,34.444,40.1233,5.666,-6.777,7.1,8.123,9.321,10.000001"; // "1.0,1.0,0.0,0.0,0.0,0.0,0.0,0.0,-1.0,-1.0"; // // LONG LAT // -1.123, 22.3444, // 34.444, 40.1233 // 5.666, -6.777 // 7.1, 8.123 // 9.321, 10.000001 CalcoloCoordinate(region, objPolygon); alert("[DOPO] lat_min = " + objPolygon.lat_min + ", lat_max = " + objPolygon.lat_max + ", long_min = " + objPolygon.long_min + ", long_max = " + objPolygon.long_max); } function CalcoloCoordinate(region, objPolygon) { if (region.length > 3) { var arrCoord = region.split(','); objPolygon.long_min = parseFloat(arrCoord[0]); objPolygon.long_max = parseFloat(arrCoord[1]); objPolygon.lat_min = parseFloat(arrCoord[2]); objPolygon.lat_max = parseFloat(arrCoord[3]); for (var i = 0; i < arrCoord.length; i++) { var floatCoord = parseFloat(arrCoord[i]); //Posizioni dispari sono le X=longitudine, posizioni pari sono le y=Latitudine // num % 2 if ((i + 1) % 2) { // LONGITUDINE if (floatCoord < objPolygon.long_min) { objPolygon.long_min = floatCoord; } if (floatCoord > objPolygon.long_max) { objPolygon.long_max = floatCoord; } } else { // LATITUDINE if (floatCoord < objPolygon.lat_min) { objPolygon.lat_min = floatCoord; } if (floatCoord > objPolygon.lat_max) { objPolygon.lat_max = floatCoord; } } } // Fine For } }
Mappa e Link
Parole chiave: