GLMapView
Objective-C
@interface GLMapView : NSView <CLLocationManagerDelegate>
Swift
class GLMapView : NSView, CLLocationManagerDelegate
GLMapView is a custom UIView that renders and presents a vector map.
-
Captures a frame from
GLMapViewas aUIImage.Declaration
Objective-C
- (nullable PlatformImage *)captureFrame;Swift
func captureFrame() -> NSImage?Return Value
The current state of the
GLMapView. -
Captures a frame from
GLMapViewas aUIImagewhen all load operations are finished.See
-captureFrameSee
offscreenDeclaration
Objective-C
- (void)captureFrameWhenFinish:(nonnull GLMapCaptureFrameBlock)block;Swift
func captureFrame(whenFinish block: @escaping GLMapCaptureFrameBlock)Parameters
blockThe block callback is called when the screenshot is ready.
-
Allows rendering of offscreen frames. By default, offscreen is set to
NO. GLMapView stops rendering when there is no superview. If you need to capture frames from a standalone GLMapView, set offscreen to YES.Declaration
Objective-C
@property BOOL offscreen;Swift
var offscreen: Bool { get set } -
Rendering frame interval. By default, frameInterval is 1 (60 fps).
Declaration
Objective-C
@property NSInteger frameInterval;Swift
var frameInterval: Int { get set } -
State of the tile in the center of the screen.
Declaration
Objective-C
@property (readonly) GLMapTileState centerTileState;Swift
var centerTileState: GLMapTileState { get }
-
Sets the mask that defines enabled gestures. Use
tapGestureBlockandlongPressGestureBlockto add your tap and long press handlers.Declaration
Objective-C
@property (nonatomic) GLMapViewGestures gestureMask;Swift
var gestureMask: GLMapViewGestures { get set } -
tapGestureBlockis called for each tap gesture recognized.Declaration
Objective-C
@property (copy) GLMapTapGestureBlock _Nullable tapGestureBlock;Swift
var tapGestureBlock: GLMapTapGestureBlock? { get set } -
longPressGestureBlockis called for each long press gesture recognized.Declaration
Objective-C
@property (copy) GLMapTapGestureBlock _Nullable longPressGestureBlock;Swift
var longPressGestureBlock: GLMapTapGestureBlock? { get set } -
bboxChangedBlockis called when the map is moved or zoomed.Declaration
Objective-C
@property (copy) GLMapBBoxChangedBlock _Nullable bboxChangedBlock;Swift
var bboxChangedBlock: GLMapBBoxChangedBlock? { get set } -
mapDidMoveBlockis called when an animation or deceleration ends.Declaration
Objective-C
@property (copy) GLMapBBoxChangedBlock _Nullable mapDidMoveBlock;Swift
var mapDidMoveBlock: GLMapBBoxChangedBlock? { get set } -
visibleTilesChangedBlockis called when the set of visible tiles changes.Declaration
Objective-C
@property (copy) GLMapVisibleTilesChangedBlock _Nullable visibleTilesChangedBlock;Swift
var visibleTilesChangedBlock: GLMapVisibleTilesChangedBlock? { get set } -
centerTileStateChangedBlockis called when the centerTileState changes.Declaration
Objective-C
@property (copy) dispatch_block_t _Nullable centerTileStateChangedBlock;Swift
var centerTileStateChangedBlock: (() -> Void)? { get set } -
Sets the position of map attribution.
Declaration
Objective-C
@property GLMapPlacement attributionPosition;Swift
var attributionPosition: GLMapPlacement { get set } -
Checks if it’s a position of attribution label and opens URL.
Declaration
Objective-C
- (BOOL)checkTapOnAttribution:(CGPoint)point;Swift
func checkTap(onAttribution point: CGPoint) -> BoolParameters
pointlocation in map view.
Return Value
YES if it’s a point inside of a attribution.
-
The last location received by
GLMapView.Declaration
Objective-C
@property (readonly) CLLocation *_Nullable lastLocation;Swift
var lastLocation: CLLocation? { get } -
Determines if the user location is displayed or not. If set to
YES, the user’s location is displayed.Declaration
Objective-C
@property (nonatomic) BOOL showUserLocation;Swift
var showUserLocation: Bool { get set } -
Sets alternative user location images.
Declaration
Objective-C
- (void)setUserLocationImage:(PlatformImage *_Nullable)locationImage movementImage:(PlatformImage *_Nullable)movementImage;Swift
func setUserLocationImage(_ locationImage: NSImage?, movementImage: NSImage?)Parameters
locationImageNew user location image. If
nil, the old image is left unchanged.movementImageNew user movement image. If
nil, the old image is left unchanged.
-
Sets the map style.
Declaration
Objective-C
- (void)setStyle:(nonnull GLMapVectorCascadeStyle *)style;Swift
func setStyle(_ style: GLMapVectorCascadeStyle)Parameters
styleThe style to set.
-
Sets the scale of the font loaded from the styleBundle. By default, fontScale is 1.0.
Declaration
Objective-C
- (void)setFontScale:(float)fontScale;Swift
func setFontScale(_ fontScale: Float) -
Base source of tiles. The default is vector source.
Declaration
Objective-C
@property (copy) GLMapTileSource *_Nonnull base;Swift
@NSCopying var base: GLMapTileSource { get set } -
Tiles that are drawn over base tiles.
Declaration
Objective-C
@property (copy) NSArray<GLMapTileSource *> *_Nullable overlays;Swift
var overlays: [GLMapTileSource]? { get set } -
Draws elevation lines. The default is false.
Declaration
Objective-C
@property BOOL drawElevationLines;Swift
var drawElevationLines: Bool { get set } -
Draws hillshades. The default is false.
Declaration
Objective-C
@property BOOL drawHillshades;Swift
var drawHillshades: Bool { get set } -
Draws slopes. The default is false.
Declaration
Objective-C
@property BOOL drawSlopes;Swift
var drawSlopes: Bool { get set } -
Forces reloading of all tiles. Call this function after modifying the map style with functions
loadStyle*.Declaration
Objective-C
- (void)reloadTiles;Swift
func reloadTiles() -
Removes all tiles. Useful for reducing memory usage in background mode.
Declaration
Objective-C
- (void)removeAllTiles;Swift
func removeAllTiles()
-
Origin point of the map coordinate system (X, Y). Changing the values in this property between 0 and 1 in relative coordinates describes the point of GLMapView, which is considered as a center point for
mapCenterandsetMapCenter:animated:.Declaration
Objective-C
@property CGPoint mapOrigin;Swift
var mapOrigin: CGPoint { get set } -
Coordinates of the origin point of the map.
See
mapOrigin -
Coordinates of the origin point of the map.
See
mapOriginDeclaration
Objective-C
@property GLMapGeoPoint mapGeoCenter;Swift
var mapGeoCenter: GLMapGeoPoint { get set } -
The current zoom of the map view.
Declaration
Objective-C
@property double mapZoom;Swift
var mapZoom: Double { get set } -
The current zoom level of the map view.
Declaration
Objective-C
@property double mapZoomLevel;Swift
var mapZoomLevel: Double { get set } -
The maximum possible value of
mapZoom. The map won’t zoom closer.Declaration
Objective-C
@property double maxZoom;Swift
var maxZoom: Double { get set } -
The map rotation angle from 0° to 360°.
Declaration
Objective-C
@property double mapAngle;Swift
var mapAngle: Double { get set } -
Captures the state of the map for search (screenScale, mapCenter, zoom, etc.).
Declaration
Objective-C
@property (readonly) GLMapViewState *_Nonnull state;Swift
var state: GLMapViewState { get } -
Starts the animation described in the block.
Declaration
Objective-C
- (nonnull GLMapAnimation *)animate:(nonnull GLMapAnimationBlock)animations;Swift
func animate(_ animations: (GLMapAnimation) -> Void) -> GLMapAnimationParameters
animationsThe block with animations. You can set animation params using the block param.
-
Starts the animation described in the block.
Declaration
Objective-C
- (nonnull GLMapAnimation *)animate:(nonnull GLMapAnimationBlock)animations withCompletion: (GLMapAnimationCompletionBlock _Nullable)completion;Swift
func animate(_ animations: (GLMapAnimation) -> Void, withCompletion completion: GLMapAnimationCompletionBlock? = nil) -> GLMapAnimationParameters
animationsThe block with animations. You can set animation params using the block param.
completionThe completion block. It’s called when the animation ends or is canceled.
-
Starts the animation.
Declaration
Objective-C
- (void)startAnimation:(nonnull GLMapAnimation *)animation;Swift
func start(_ animation: GLMapAnimation)Parameters
animationThe animation to start.
-
Cancels all map position, zoom, and angle animations.
Declaration
Objective-C
- (void)cancelMapAnimations;Swift
func cancelMapAnimations() -
Enables clipping of the visible map area.
Declaration
Objective-C
- (void)enableClipping:(GLMapBBox)bbox minLevel:(float)minLevel maxLevel:(float)maxLevel;Swift
func enableClipping(_ bbox: GLMapBBox, minLevel: Float, maxLevel: Float)Parameters
bboxClipping bounding box to set.
minLevelMinimum zoom level.
maxLevelMaximum zoom level.
-
Disables clipping of the visible map area.
Declaration
Objective-C
- (void)disableClipping;Swift
func disableClipping() -
Checks if clipping is enabled.
Declaration
Objective-C
- (BOOL)isClippingEnabled;Swift
func isClippingEnabled() -> BoolReturn Value
True if enabled.
-
Converts a point on the screen to an internal map coordinate.
Declaration
Objective-C
- (GLMapPoint)makeMapPointFromDisplayPoint:(CGPoint)displayPoint;Swift
func makeMapPoint(fromDisplay displayPoint: CGPoint) -> GLMapPointParameters
displayPointThe point you want to convert.
Return Value
The internal map coordinate of the specified point.
-
Converts a distance between two points on the screen to an internal map coordinate at the current map zoom.
Declaration
Objective-C
- (GLMapPoint)makeMapPointFromDisplayDelta:(CGPoint)displayDelta;Swift
func makeMapPoint(fromDisplayDelta displayDelta: CGPoint) -> GLMapPointParameters
displayDeltaThe delta you want to convert.
Return Value
The delta in internal map coordinates.
-
Converts a distance between two points on the screen to an internal map coordinate.
Declaration
Objective-C
- (GLMapPoint)makeMapPointFromDisplayDelta:(CGPoint)displayDelta andMapZoom:(double)mapZoom andMapAngle:(double)mapAngle;Swift
func makeMapPoint(fromDisplayDelta displayDelta: CGPoint, andMapZoom mapZoom: Double, andMapAngle mapAngle: Double) -> GLMapPointParameters
displayDeltaThe delta you want to convert.
mapZoomZoom of map.
mapAngleAngle of map.
Return Value
The delta in internal map coordinates.
-
Converts a geo point to the point on the screen.
Declaration
Objective-C
- (CGPoint)makeDisplayPointFromGeoPoint:(GLMapGeoPoint)geoPoint;Swift
func makeDisplayPoint(from geoPoint: GLMapGeoPoint) -> CGPointParameters
geoPointThe geo point you want to convert.
Return Value
The corresponding point on the screen.
-
Converts a point on the screen to a geo point.
Declaration
Objective-C
- (GLMapGeoPoint)makeGeoPointFromDisplayPoint:(CGPoint)displayPoint;Swift
func makeGeoPoint(fromDisplay displayPoint: CGPoint) -> GLMapGeoPointParameters
displayPointPoint on the screen you want to convert.
Return Value
The corresponding geo point.
-
Converts an internal map coordinate to the point on the screen.
Declaration
Objective-C
- (CGPoint)makeDisplayPointFromMapPoint:(GLMapPoint)mapPoint;Swift
func makeDisplayPoint(from mapPoint: GLMapPoint) -> CGPointParameters
mapPointThe map point you want to convert.
Return Value
The corresponding point on the screen.
-
Converts geo coordinates to the internal point.
Declaration
Objective-C
+ (GLMapPoint)makeMapPointFromGeoPoint:(GLMapGeoPoint)geoPoint;Swift
class func makeMapPoint(from geoPoint: GLMapGeoPoint) -> GLMapPointParameters
geoPointGeo point you want to convert.
Return Value
Corresponding point in map coordinates.
-
Converts an internal point to geo coordinates.
Declaration
Objective-C
+ (GLMapGeoPoint)makeGeoPointFromMapPoint:(GLMapPoint)mapPoint;Swift
class func makeGeoPoint(from mapPoint: GLMapPoint) -> GLMapGeoPointParameters
mapPointPoint in map coordinates.
Return Value
Corresponding point in geo coordinates.
-
Converts distance in meters to pixels on the screen.
Declaration
Objective-C
- (double)makePixelsFromMeters:(double)meters;Swift
func makePixels(fromMeters meters: Double) -> DoubleParameters
metersDistance in meters.
Return Value
Distance in pixels.
-
Converts distance in pixels on the screen to meters.
Declaration
Objective-C
- (double)makeMetersFromPixels:(double)pixels;Swift
func makeMeters(fromPixels pixels: Double) -> DoubleParameters
pixelsDistance in pixels.
Return Value
Distance in meters.
-
Converts distance in meters to map coordinates.
Declaration
Objective-C
- (double)makeInternalFromMeters:(double)meters;Swift
func makeInternal(fromMeters meters: Double) -> DoubleParameters
metersDistance in meters.
Return Value
Distance in map coordinates.
-
Converts distance in map coordinates to meters.
Declaration
Objective-C
- (double)makeMetersFromInternal:(double)internal;Swift
func makeMeters(fromInternal internal: Double) -> DoubleParameters
internalDistance in map coordinates.
Return Value
Distance in meters.
-
Converts distance in pixels to map coordinates.
Declaration
Objective-C
- (double)makeInternalFromPixels:(double)pixels;Swift
func makeInternal(fromPixels pixels: Double) -> DoubleParameters
pixelsDistance in pixels.
Return Value
Distance in map coordinates.
-
Converts distance in map coordinates to pixels.
Declaration
Objective-C
- (double)makePixelsFromInternal:(double)internal;Swift
func makePixels(fromInternal internal: Double) -> DoubleParameters
internalDistance in map coordinates.
Return Value
Distance in pixels.
-
Adds the
GLMapDrawObjectto the map view.Declaration
Objective-C
- (void)add:(nonnull GLMapDrawObject *)drawObject;Swift
func add(_ drawObject: GLMapDrawObject)Parameters
drawObjectThe object to add.
-
Removes the previously added
GLMapDrawObjectfrom the map view.Declaration
Objective-C
- (void)remove:(nonnull GLMapDrawObject *)drawObject;Swift
func remove(_ drawObject: GLMapDrawObject)Parameters
drawObjectThe object to be removed.
-
Adds or updates the area where text (and associated icons) must not be drawn. To add a 20x20 pt forbidden area around a specific point on the map, pass an offset of 10,10 and a size of 20,20. The forbidden area will be 10 pt in all directions from the origin point.
Declaration
Objective-C
- (void)addTextForbiddenArea:(int32_t)name origin:(GLMapPoint)origin offset:(CGPoint)offset size:(CGSize)size;Swift
func addTextForbiddenArea(_ name: Int32, origin: GLMapPoint, offset: CGPoint, size: CGSize)Parameters
nameUnique name for the area.
originOrigin of the area.
offsetOffset of the area from the origin (in points). Axes direction is bottom left.
sizeSize of the area (in points).
-
Removes the area.
Declaration
Objective-C
- (void)removeTextForbiddenArea:(int32_t)name;Swift
func removeTextForbiddenArea(_ name: Int32)Parameters
nameThe name of the area.
-
Map locale settings. The set of supported locales is returned by
[GLMapLocaleSettings supportedLocales]. For example, to set the map languages priority to English, Deutsch, and native: [_mapView setLocaleSettings:[[GLMapLocaleSettings alloc] initWithLocalesOrder:@[@“en”, @“de”, @“native”]]]; Then, reload the tiles to apply new locale settings: [_mapView reloadTiles]; The default value is the supported languages from[NSLocale preferredLanguages].Declaration
Objective-C
@property (strong) GLMapLocaleSettings *_Nonnull localeSettings;Swift
var localeSettings: GLMapLocaleSettings { get set } -
Defines the visible part of the map. Useful for interactive objects like balloons.
Declaration
Objective-C
- (PlatformEdgeInsets)visibleMapInsets;Swift
func visibleMapInsets() -> PlatformEdgeInsets
Install in Dash
GLMapView Class Reference