[ios] Stop exaggerating heading accuracy indicator size

- 1.5× exaggeration has been removed.
- Maximum accuracy (smallest size) has been increased to 20°.
This commit is contained in:
Jason Wray
2016-08-23 11:34:26 -04:00
parent 5836738906
commit cb59589954
2 changed files with 5 additions and 4 deletions

View File

@@ -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

View File

@@ -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;