summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Wray <jason@mapbox.com>2016-08-23 11:34:26 -0400
committerJason Wray <jason@mapbox.com>2016-08-24 21:56:52 -0400
commitcb59589954271d6dbaecba1fe4230c22f5bbab21 (patch)
tree8da260c34a43e8d3d8e307789121b604f9dca210
parent5836738906292d70b4f95166c7d5e58a97d1208d (diff)
downloadqtlocation-mapboxgl-cb59589954271d6dbaecba1fe4230c22f5bbab21.tar.gz
[ios] Stop exaggerating heading accuracy indicator size
- 1.5× exaggeration has been removed. - Maximum accuracy (smallest size) has been increased to 20°.
-rw-r--r--platform/ios/CHANGELOG.md1
-rw-r--r--platform/ios/src/MGLFaux3DUserLocationAnnotationView.m8
2 files changed, 5 insertions, 4 deletions
diff --git a/platform/ios/CHANGELOG.md b/platform/ios/CHANGELOG.md
index 07518c1fad..b8a7f7e749 100644
--- a/platform/ios/CHANGELOG.md
+++ b/platform/ios/CHANGELOG.md
@@ -29,6 +29,7 @@ Mapbox welcomes participation and contributions from everyone. Please read [CONT
* To customize the appearance of the user location annotation, subclass the newly added MGLUserLocationAnnotationView class and implement `-[MGLMapViewDelegate mapView:viewForAnnotation:]`. ([#5882](https://github.com/mapbox/mapbox-gl-native/pull/5882))
* Fixed an issue causing the user dot’s accuracy ring to wobble while zooming in and out. ([#6019](https://github.com/mapbox/mapbox-gl-native/pull/6019))
+* Heading accuracy indicator sizing has been changed to appear more precise. ([#6120](https://github.com/mapbox/mapbox-gl-native/pull/6120))
### Annotations
diff --git a/platform/ios/src/MGLFaux3DUserLocationAnnotationView.m b/platform/ios/src/MGLFaux3DUserLocationAnnotationView.m
index 315bd936e4..2cccc18806 100644
--- a/platform/ios/src/MGLFaux3DUserLocationAnnotationView.m
+++ b/platform/ios/src/MGLFaux3DUserLocationAnnotationView.m
@@ -502,10 +502,10 @@ const CGFloat MGLUserLocationAnnotationArrowSize = MGLUserLocationAnnotationPuck
{
CGFloat accuracy = self.userLocation.heading.headingAccuracy;
- // size the mask using exagerated accuracy, but keep within a good display range
- CGFloat clippingDegrees = 90 - (accuracy * 1.5);
- clippingDegrees = fmin(clippingDegrees, 55);
- clippingDegrees = fmax(clippingDegrees, 10);
+ // size the mask using accuracy, but keep within a good display range
+ CGFloat clippingDegrees = 90 - accuracy;
+ clippingDegrees = fmin(clippingDegrees, 70); // most accurate
+ clippingDegrees = fmax(clippingDegrees, 10); // least accurate
CGRect ovalRect = CGRectMake(0, 0, MGLUserLocationAnnotationHaloSize, MGLUserLocationAnnotationHaloSize);
UIBezierPath *ovalPath = UIBezierPath.bezierPath;