summaryrefslogtreecommitdiff
path: root/platform/darwin/MGLMultiPoint_Private.h
blob: e0d875d88a129a037cde54e2e97094e26be08a60 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#import "MGLMultiPoint.h"

#import "MGLGeometry.h"
#import "MGLTypes.h"

#import <mbgl/annotation/shape_annotation.hpp>
#import <vector>

#import <CoreGraphics/CoreGraphics.h>
#import <CoreLocation/CoreLocation.h>

NS_ASSUME_NONNULL_BEGIN

@class MGLPolygon;
@class MGLPolyline;

@protocol MGLMultiPointDelegate;

@interface MGLMultiPoint (Private)

- (instancetype)initWithCoordinates:(CLLocationCoordinate2D *)coords count:(NSUInteger)count;
- (BOOL)intersectsOverlayBounds:(MGLCoordinateBounds)overlayBounds;

- (void)addShapeAnnotationObjectToCollection:(std::vector<mbgl::ShapeAnnotation> &)shapes withDelegate:(id <MGLMultiPointDelegate>)delegate;
- (mbgl::ShapeAnnotation::Properties)shapeAnnotationPropertiesObjectWithDelegate:(id <MGLMultiPointDelegate>)delegate;

@end

@protocol MGLMultiPointDelegate <NSObject>

- (double)alphaForShapeAnnotation:(MGLShape *)annotation;
- (mbgl::Color)strokeColorForShapeAnnotation:(MGLShape *)annotation;
- (mbgl::Color)fillColorForPolygonAnnotation:(MGLPolygon *)annotation;
- (CGFloat)lineWidthForPolylineAnnotation:(MGLPolyline *)annotation;

@end

NS_ASSUME_NONNULL_END