1

Android esri arcGIS MapView をタップして緯度と経度を取得しようとしています。

        map.setOnSingleTapListener(new OnSingleTapListener() {

            private static final long serialVersionUID = 1L;

            public void onSingleTap(float x, float y) {
                System.out.println("x:" + x);
                System.out.println("y:" + y);
                // How to get Latitude Longitude coordinates of the point (x,y)?

            }
        });

ポイント(x、y)の緯度経度座標を取得するには?

4

4 に答える 4

1

マップポイントを緯度/経度に変換したい場合は、これに従う必要があります

Point mapPoint = mMapView.toMapPoint(point.getX(), point.getY());
//Here point is your MotionEvent point
SpatialReference spacRef = SpatialReference.create(4326);
//4326 is for Geographic coordinate systems (GCSs) 
Point ltLn = (Point)
GeometryEngine.project(mapPoint,mMapView.getSpatialReference(), spacRef ); 
//mMapView is your current mapview object

ltLn.getY()緯度とltLn.getX()経度を与える

于 2015-12-16T15:41:47.377 に答える
1

私はkotlinでこのソリューションに飽き飽きし、期待どおりに機能しています

       val sp = SpatialReference.create(4326)
       // where Location is the Point
       val locationPoint = GeometryEngine.project(location, sp) as Point
       val lat = locationPoint.x
       val lng = locationPoint.y
于 2019-06-24T09:32:29.843 に答える