TencentNavKit
TNKBaseNavView.h
Go to the documentation of this file.
1//
2// TNKBaseNavView.h
3// TencentNavKit
4//
5// Created by mol on 2022/10/20.
6// Copyright © 2022 Tencent. All rights reserved.
7//
8
9#import <UIKit/UIKit.h>
10#import <TencentNavKit/TNKNavViewCommonObj.h>
11#import <TencentNavKit/TNKRouteConfig.h>
12#import <TencentNavKit/TNKODMarkerPresentation.h>
13#import <TencentNavKit/TNKUserLocationPresentation.h>
14#import <TencentNavKit/TNKCommonObj.h>
15#import <QMapKit/QMapView.h>
16#import <QMapKit/QMapView+Config.h>
17#import <TencentNavKit/TNKRedLineConfig.h>
18#import <TencentNavKit/TNKTurnArrowConfig.h>
19
20NS_ASSUME_NONNULL_BEGIN
21
22
24@interface TNKBaseNavView : UIView
25
26- (instancetype)init UNAVAILABLE_ATTRIBUTE;
27
33- (instancetype)initWithFrame:(CGRect)frame config:(QMapConfig * _Nullable)config;
34
38@property (nonatomic, readonly) QMapView *mapView;
39
43@property (nonatomic, assign) TNKNavDayNightMode dayNightMode;
44
48@property (nonatomic, readonly) TNKNavDayNightStatus dayNightStatus;
49
55@property (nonatomic, assign) TNKNavUIMode navUIMode;
56
60@property (nonatomic, assign) BOOL followed;
61
65@property (nonatomic, assign) BOOL followEnabled;
66
70@property (nonatomic, assign) NSTimeInterval followDelay;
71
75@property (nonatomic, assign) TNKNavUIMode nonOverviewNaviUIMode;
76
80@property (nonatomic, assign) TNKNavUIMode overviewNaviUIMode;
81
82
87@property (nonatomic, readonly) TNKRouteConfig *routeConfig;
88
89
95- (void)clearAllRouteUI;
96
102@property (nonatomic, assign) UIEdgeInsets externalEdgeInsets;
103
107@property (nonatomic, copy, nullable) NSArray<TNKCoordinatePoint *> *extraPointsForOverview;
108
115@property (nonatomic, assign) CGPoint fix3DProportion;
116
123@property (nonatomic, assign) CGPoint fix2DProportion;
124
129@property (nonatomic, assign) BOOL compassHidden;
130
131
135@property (nonatomic, assign) BOOL turnArrowEnabled;
136
140@property (nonatomic, strong) TNKTurnArrowConfig *turnArrowConfig;
141
146- (void)updateRouteConfig:(TNKRouteConfig *)routeConfig;
147
152- (void)updateOriginMarkerPresentation:(TNKODMarkerPresentation * _Nullable)originMarkerPresentation;
153
158- (void)updateDestinationMarkerPresentation:(TNKODMarkerPresentation * _Nullable)destinationMarkerPresentation;
159
164- (void)updateUserLocationPresentation:(TNKUserLocationPresentation * _Nullable)userLocationPresentation;
165
170- (void)updateRedLineConfig:(TNKRedLineConfig * _Nullable)redLineConfig;
171
172@end
173
175
176
180@property (nonatomic, assign) BOOL showsUserLocation;
181
187- (void)configureUserLocationPresentation:(QUserLocationPresentation *)presentation;
188
194- (void)setMapStyle:(int)styleType;
195
196@end
197
198NS_ASSUME_NONNULL_END
enum _TNKNavDayNightMode TNKNavDayNightMode
导航地图的日夜间模式
enum _TNKNavUIMode TNKNavUIMode
导航地图的导航模式
enum _TNKNavDayNightStatus TNKNavDayNightStatus
导航地图所处的日夜间状态
Definition: TNKBaseNavView.h:174
导航地图基础类
Definition: TNKBaseNavView.h:25
TNKNavUIMode overviewNaviUIMode
全览的导航视角模式. 全览和剩余全览.
Definition: TNKBaseNavView.h:80
void clearAllRouteUI()
清除路线相关UI.该方法用于非导航状态下清除路线相关UI。 包括导航路线、自车点图标、动态添加的限速/指示标识等.
TNKNavDayNightStatus dayNightStatus
获取地图当前日夜状态.
Definition: TNKBaseNavView.h:48
BOOL turnArrowEnabled
设置是否隐藏转弯箭头指引.该方法用于导航状态下控制显示/隐藏下一个转弯箭头指引.默认为YES
Definition: TNKBaseNavView.h:135
BOOL followed
当前是否是锁车标状态。当收到拖动地图时,地图视野一段时间内不会发生改变,follow为NO。
Definition: TNKBaseNavView.h:60
UIEdgeInsets externalEdgeInsets
设置全览和剩余全览模式下导航路线显示区域距离地图四周的边距. 当在CarNaviView上自定义显示元素时, 为避免与导航路线相互遮挡, 可调用该接口调整导航路线显示区域范围....
Definition: TNKBaseNavView.h:102
CGPoint fix3DProportion
3D导航时自车点位置在地图上位置的比例 默认值为(0.5,0.72). x取值范围为[0.25,0.75] 表示从屏幕左边起的宽度比例. y取值范围为[0.25,0....
Definition: TNKBaseNavView.h:115
CGPoint fix2DProportion
2D导航时自车点位置在地图上位置的比例 默认值为(0.5,0.6). x取值范围为[0.25,0.75] 表示从屏幕左边起的宽度比例. y取值范围为[0.25,0....
Definition: TNKBaseNavView.h:123
TNKRouteConfig * routeConfig
驾车导航路线样式配置
Definition: TNKBaseNavView.h:87
BOOL compassHidden
设置是否隐藏自车点罗盘.该方法用于导航状态下控制显示/隐藏自车点罗盘. 自车点罗盘在3D车头朝上模式下会默认显示, 在2D地图朝北、全览模式和剩余全览模式下会默认隐藏.
Definition: TNKBaseNavView.h:129
NSArray< TNKCoordinatePoint * > * extraPointsForOverview
设置全览和剩余全览模式下,想要展示在可视区域内的额外的点数组。使用之后需重置为nil
Definition: TNKBaseNavView.h:107
TNKNavDayNightMode dayNightMode
地图日夜间模式切换策略. 包括自动切换、始终白天、始终黑夜3种模式. 默认为日夜状态自动切换.
Definition: TNKBaseNavView.h:43
QMapView * mapView
地图实例
Definition: TNKBaseNavView.h:38
BOOL followEnabled
是否会自动从非锁车标状态进入锁车标状态; 默认为YES
Definition: TNKBaseNavView.h:65
TNKTurnArrowConfig * turnArrowConfig
设置是转向箭头的样式,不可为nil
Definition: TNKBaseNavView.h:140
TNKNavUIMode nonOverviewNaviUIMode
非全览的导航视角模式. 导航模式包括3D车头朝上、2D地图朝.
Definition: TNKBaseNavView.h:75
instancetype UNAVAILABLE_ATTRIBUTE()
NSTimeInterval followDelay
设置从非锁车标状态返回之前锁车标状态的延迟时间,单位为秒, 默认为5秒.
Definition: TNKBaseNavView.h:70
TNKNavUIMode navUIMode
导航视角模式. 导航模式包括3D车头朝上、2D地图朝北、全览和剩余全览4种模式. 默认为3D车头朝上模式. 导航状态下使用手势操作地图时触发非锁车模式,地图不跟随自车点移动 ;在手势操作结束后一段时间切...
Definition: TNKBaseNavView.h:55
起终点样式
Definition: TNKODMarkerPresentation.h:16
导航红线配置类
Definition: TNKRedLineConfig.h:16
导航路线样式配置类
Definition: TNKRouteConfig.h:18
转向箭头样式
Definition: TNKTurnArrowConfig.h:16
自车点配置类
Definition: TNKUserLocationPresentation.h:35