-
Notifications
You must be signed in to change notification settings - Fork 1.3k
add support for geodesic polylines (and thus great circles) #1726
Comments
MapKit supports circles; we're tracking an equivalent in #2167. But no, I think support for geodesic polylines on iOS is limited to the legacy Mapbox iOS SDK and possibly some niche libraries. We don't have an answer for implementing anything "outside of core" at the moment. There's no plugin system, but one could be fashioned out of CocoaPods subspecs. (There's no equivalent concept for Carthage, Fabric, or manual installation.) |
I'll implement this in Swift as a learning exercise. |
@tmcw Nope on Android either. That said, I think there's some confusion about "outside of core" means here. We'd likely want to bake the math part into Core GL (aka C++ level that @incanus talked about above) and then have iOS and Android bindings in the regular SDKs and not standalone libraries that would be distributed via CocoaPods or Maven Central. Make sense? |
Correction: MapKit supports geodesic polylines with the MKGeodesicPolyline class. There are some examples at NSHipster. |
@jfirebaugh, would geometry.hpp need to support geodesic polylines as a separate geometry type, or could it be treated as a special case of a line string? |
Is this something that we would still consider implementing? |
@captainbarbosa I've just pushed a calculation of great circles to GitHub. Feel free to use that: https://github.com/mikaelhellqvist/GreatCircle/tree/master |
This issue has been automatically detected as stale because it has not had recent activity and will be archived. Thank you for your contributions. |
We did this before in our raster SDK here:
https://github.com/mapbox/mapbox-ios-sdk/blob/edbe9905299ddbf8b32e41d8978b7b3265eef8f8/MapView/Map/RMGreatCircleAnnotation.m
Demo: https://vimeo.com/73482728
This uses a ~100 segment polyline to approximate a curved one and looks good. But we probably want to do this at the C++ level and wrap it in client APIs?
Relatively low priority.
The text was updated successfully, but these errors were encountered: