diff options
author | Tobrun <tobrun@mapbox.com> | 2016-04-22 09:41:22 +0200 |
---|---|---|
committer | Tobrun <tobrun@mapbox.com> | 2016-04-22 13:38:17 +0200 |
commit | c636d5a61381c59000058f5dd81c14e213f3cc64 (patch) | |
tree | d31200b0cb2c8211ec1252132809762b2b1341ed /platform | |
parent | aded1b145d86f801685bab5e17f62784cfef8066 (diff) | |
download | qtlocation-mapboxgl-c636d5a61381c59000058f5dd81c14e213f3cc64.tar.gz |
[android] #2835 - limit the amount of object allocations on high traffic code
Diffstat (limited to 'platform')
2 files changed, 11 insertions, 12 deletions
diff --git a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java index fffddd7874..27d755980e 100644 --- a/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java +++ b/platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java @@ -888,22 +888,17 @@ public class MapView extends FrameLayout { if (mDestroyed) { return new LatLng(); } - float x = point.x; - float y = point.y; - - return mNativeMapView.latLngForPixel(new PointF(x / mScreenDensity, y / mScreenDensity)); + point.set(point.x / mScreenDensity, point.y / mScreenDensity); + return mNativeMapView.latLngForPixel(point); } PointF toScreenLocation(@NonNull LatLng location) { if (mDestroyed) { return new PointF(); } - PointF point = mNativeMapView.pixelForLatLng(location); - - float x = point.x * mScreenDensity; - float y = point.y * mScreenDensity; - - return new PointF(x, y); + PointF pointF = mNativeMapView.pixelForLatLng(location); + pointF.set(pointF.x * mScreenDensity, pointF.y * mScreenDensity); + return pointF; } // diff --git a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/AnimatedMarkerActivity.java b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/AnimatedMarkerActivity.java index 473bd67b99..1e15c9ea36 100644 --- a/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/AnimatedMarkerActivity.java +++ b/platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/AnimatedMarkerActivity.java @@ -112,10 +112,14 @@ public class AnimatedMarkerActivity extends AppCompatActivity { } private class LatLngEvaluator implements TypeEvaluator<LatLng> { + + private LatLng mLatLng = new LatLng(); + @Override public LatLng evaluate(float fraction, LatLng startValue, LatLng endValue) { - return new LatLng(startValue.getLatitude() + (endValue.getLatitude() - startValue.getLatitude()) * fraction, - startValue.getLongitude() + (endValue.getLongitude() - startValue.getLongitude()) * fraction); + mLatLng.setLatitude(startValue.getLatitude() + (endValue.getLatitude() - startValue.getLatitude()) * fraction); + mLatLng.setLongitude(startValue.getLongitude() + (endValue.getLongitude() - startValue.getLongitude()) * fraction); + return mLatLng; } } } |