La función getLength(punto1, punto2) debería calcular distancias entre dos puntos.
Cuando intento calcular la distancia entre puntos que tienen 100 metros entre ellos
p1 = new esri.geometry.Point(3997030.6690969253, 7444299.320646087, new esri.SpatialReference({ wkid: 102113 }));
Object
p2 = new esri.geometry.Point(3996951.455397143, 7444142.154020177, new esri.SpatialReference({ wkid: 102113 }));
Object
esri.geometry.getLength(p1, p2)
176.00045037719127
Estoy obteniendo 176 lo cual es incorrecto. La proyección es Mercator Web (WKID 102113).
Se descubrió que getLength
utiliza solo el teorema de Pitágoras para calcular la longitud. Por lo tanto, devuelve la longitud en metros de proyección. ¿Cómo obtener la distancia en metros reales?
0 votos
Intenta usar la herramienta geoprocesador para comprobar tu distancia (esri.tasks.GeometryService.lengths()), tal vez quieras tener la distancia geodésica entre esos puntos, y el método getLength está contando la longitud recta entre los puntos (es solo un tiro al aire).
0 votos
Es 100 metros. La diferencia entre los dos métodos no debería ser de 76 metros. Esto es probablemente porque
getLength
no entiende la proyección. O tal vez no entiendo algo.1 votos
help.arcgis.com/es/webapi/javascript/arcgis/jsapi/… ?