-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Conversation
- track ordered shapes in AnnotationManager - add shape source at style parse time - add shape layers & buckets at annotation tile invalidation time - expose Annotation to MapContext for style querying
@@ -150,6 +150,27 @@ int main() { | |||
map.setStyleURL(newStyle.first); | |||
view.setWindowTitle(newStyle.second); | |||
|
|||
map.addPointAnnotation(mbgl::LatLng(45, -120), "default_marker"); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Remember to pull these changes out before merging.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should actually be pretty easily fixed. In shape adds, I'm just overflowing the tile extent and assuming all shapes belong in only one tile, as a naive extension of the point add. That's why this happens: Fixing that up now as a staged approach, so that we don't necessarily need the GeoJSONVT simplification stuff in the first cut. This is a ~2,500 point polyline and it performs well now. |
Taking a break from feature clipping, which is a bit of going in circles. I may just punt and bring in the GeoJSONVT work which takes care of this now instead of later, bringing along simplification for the ride. My reluctance to do so there is a bottleneck around the In the break I am going to rough out the Cocoa adding/removing/styling API since that part won't change and we are successfully using the direct C++ one right now. |
|
||
features.push_back(create(tags, projectedType, *geometry)); | ||
|
||
printf("features now has %lu items\n", (unsigned long)features.size()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
prints to the console in Release mode?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Split GeoJSONVT out to https://github.com/mapbox/geojson-vt-cpp. Currently just dupe-copied here still; no formal build or dep process. |
@interface MGLMultiPoint (MGLPolygon) | ||
|
||
- (instancetype)initWithCoordinates:(CLLocationCoordinate2D *)coords count:(NSUInteger)count; | ||
- (BOOL)intersectsOverlayBounds:(MGLCoordinateBounds)overlayBounds; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is kind of a sneaky way of getting access to these methods. The declarations should go in a private header in platform/ios/.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
…e into shape-annotations
|
Runtime shape annotations.
StyleProperties
et al. toMap
usersProblems/checkpoints:
MapContext::updateAnnotationTiles()
returns early. This doesn't affect points as their styling is all wrapped up in the style parsing step (since the variable parts are covered in the runtime{sprite}
property), the conclusion of which performs a render. Worked around right now with a hack to add after a delay upon startup.