summaryrefslogtreecommitdiff
path: root/platform
diff options
context:
space:
mode:
authorTobrun <tobrun@mapbox.com>2016-04-22 09:41:22 +0200
committerTobrun <tobrun@mapbox.com>2016-04-22 13:38:17 +0200
commitc636d5a61381c59000058f5dd81c14e213f3cc64 (patch)
treed31200b0cb2c8211ec1252132809762b2b1341ed /platform
parentaded1b145d86f801685bab5e17f62784cfef8066 (diff)
downloadqtlocation-mapboxgl-c636d5a61381c59000058f5dd81c14e213f3cc64.tar.gz
[android] #2835 - limit the amount of object allocations on high traffic code
Diffstat (limited to 'platform')
-rw-r--r--platform/android/MapboxGLAndroidSDK/src/main/java/com/mapbox/mapboxsdk/maps/MapView.java15
-rw-r--r--platform/android/MapboxGLAndroidSDKTestApp/src/main/java/com/mapbox/mapboxsdk/testapp/activity/annotation/AnimatedMarkerActivity.java8
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;
}
}
}