Android Here-lite SDK 中的 getScaleFromZoomLevel 等价物
getScaleFromZoomLevel equivalent in Android Here-lite SDK
我想从 HERE Android SDK (starter/premium) 切换到新的 Lite SDK。在以前的库中,我有函数
public double getScaleFromZoomLevel(double level)
如何在 Here-lite 版本中获得这样的比例值?
是的,我同意Datasun。与您之前的版本一样,比例尺以每显示英寸厘米为单位给出地理距离,我对 lite API 中的功能的建议类似于:
DisplayMetrics appMetrics = new DisplayMetrics();
map.getDisplay().getMetrics(appMetrics);
GeoCoordinates southWest = map.getCamera().getBoundingRect().southWestCorner;
Point2D lowerright = map.getCamera().geoToViewCoordinates(southWest);
float screenPixelPerInch = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_IN, 1, appMetrics);
Point2D yRef = new Point2D(lowerright.x, lowerright.y + screenPixelPerInch);
GeoCoordinates yRefGeo = map.getCamera().viewToGeoCoordinates(yRef);
return yRefGeo.distanceTo(southWest);
我想从 HERE Android SDK (starter/premium) 切换到新的 Lite SDK。在以前的库中,我有函数
public double getScaleFromZoomLevel(double level)
如何在 Here-lite 版本中获得这样的比例值?
是的,我同意Datasun。与您之前的版本一样,比例尺以每显示英寸厘米为单位给出地理距离,我对 lite API 中的功能的建议类似于:
DisplayMetrics appMetrics = new DisplayMetrics(); map.getDisplay().getMetrics(appMetrics);
GeoCoordinates southWest = map.getCamera().getBoundingRect().southWestCorner;
Point2D lowerright = map.getCamera().geoToViewCoordinates(southWest);
float screenPixelPerInch = TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_IN, 1, appMetrics);
Point2D yRef = new Point2D(lowerright.x, lowerright.y + screenPixelPerInch);
GeoCoordinates yRefGeo = map.getCamera().viewToGeoCoordinates(yRef);
return yRefGeo.distanceTo(southWest);