#import #import #import "MGLFoundation.h" #import "MGLShape.h" NS_ASSUME_NONNULL_BEGIN /** An `MGLPointAnnotation` object represents a one-dimensional shape located at a single geographical coordinate. Depending on how it is used, an `MGLPointAnnotation` object is known as a point annotation or point shape. For example, you could use a point shape to represent a city at low zoom levels, an address at high zoom levels, or the location of a long press gesture. You can add point shapes to the map by adding them to an `MGLShapeSource` object. Configure the appearance of an `MGLShapeSource`’s or `MGLVectorSource`’s point shapes collectively using an `MGLCircleStyleLayer` or `MGLSymbolStyleLayer` object. For more interactivity, add a selectable point annotation to a map view using the `-[MGLMapView addAnnotation:]` method. Alternatively, define your own model class that conforms to the `MGLAnnotation` protocol. Configure a point annotation’s appearance using `-[MGLMapViewDelegate mapView:imageForAnnotation:]` or `-[MGLMapViewDelegate mapView:viewForAnnotation:]` (iOS only). A point annotation’s `MGLShape.title` and `MGLShape.subtitle` properties define the default content of the annotation’s callout (on iOS) or popover (on macOS). To group multiple related points together in one shape, use an `MGLPointCollection` or `MGLShapeCollection` object. A point shape is known as a Point geometry in GeoJSON. */ MGL_EXPORT @interface MGLPointAnnotation : MGLShape /** The coordinate point of the shape, specified as a latitude and longitude. */ @property (nonatomic, assign) CLLocationCoordinate2D coordinate; @end NS_ASSUME_NONNULL_END