98 void (*
on_tile_end_draw)(uint32_t map_id, uint32_t tile_x, uint32_t tile_y, uint32_t zoom, int32_t status);
139 void (*
on_poi_end_draw)(uint32_t map_id, uint32_t tile_x, uint32_t tile_y, uint32_t zoom, int32_t status);
538 void (*
on_progress)(awk_map_download_callback_t *callback,
float progress);
544 void (*
on_finish) (awk_map_download_callback_t *callback);
550 void (*
on_stop) (awk_map_download_callback_t *callback);
558 void (*
on_error) (awk_map_download_callback_t *callback, int32_t error_code,
const char* msg);
600typedef struct _awk_map_tile_download_info_t {
602 char tile_file_key[64];
609typedef struct _awk_map_tile_download_callback_t {
620 void (*on_fail) (
const char *key, int32_t error_code,
const char* msg);
655typedef enum _awk_map_offline_type {
666typedef struct _awk_map_offline_gdb_adcode_t {
674typedef struct _awk_map_offline_gdb_location_t {
684typedef struct _awk_map_offline_gdb_info_t {
696typedef struct _awk_map_offline_gdb_query_result_t {
int32_t awk_map_init_point_overlay(awk_map_point_overlay_t *point_overlay)
初始化点覆盖物的结构体,方法的调用需要在主流程线程中
int32_t awk_map_track_navi_add_overlay(uint32_t map_id, awk_map_track_navi_overlay_t *overlay)
添加轨迹导航覆盖物
int32_t awk_map_cancel_request_tiles(int32_t req_id)
取消在线请求缓存瓦片
int32_t awk_map_list_download_region_range(awk_map_coord2d_t location, awk_map_range_t range, uint8_t expect_level, awk_map_offline_gdb_query_result_t *result)
查询已下载的区域信息
int32_t awk_map_track_navi_remove_overlay(uint32_t map_id, uint32_t overlay_id)
移除轨迹导航覆盖物
int32_t awk_map_remove_texture(uint32_t texture_id)
移除纹理数据,方法的调用需要在主流程线程中
void awk_map_track_navi_update_real_point(uint32_t map_id, awk_map_coord2d_t point, float bear, awk_map_track_navi_overlay_t *overlay)
更新真实点
int32_t awk_map_sync_download_offline_region(void)
同步下载区域信息,只在外部指定离线数据时使用, 方法的调用需要在主流程线程中
int32_t awk_map_lonlat_to_xy(uint32_t map_id, awk_map_coord2d_t lonlat, int32_t *x, int32_t *y)
经纬度坐标转屏幕坐标,方法的调用需要在主流程线程中
const awk_map_base_overlay_t * awk_map_get_overlay(uint32_t map_id, uint32_t index)
根据索引获取map_id对应地图的覆盖物,方法的调用需要在主流程线程中
int32_t awk_map_sync_tile_file(char **tile_file_keys, uint32_t tile_file_size)
程序异常退出时,或差异时的同步
int32_t awk_map_set_render_callback(awk_map_render_callback_t callback)
设置地图渲染回调接口实例
void awk_map_track_navi_parse_track_info_free(awk_map_track_info_t *track_info)
析构track info
int32_t awk_map_touch_update(uint32_t map_id, int32_t x, int32_t y)
持续挪图过程,方法的调用需要在主流程线程中
int32_t awk_map_add_overlay(uint32_t map_id, awk_map_base_overlay_t *overlay)
添加覆盖物,方法的调用需要在主流程线程中
int32_t awk_map_set_level(uint32_t map_id, float level)
设置地图级别,方法的调用需要在主流程线程中
uint32_t awk_map_get_overlay_count(uint32_t map_id)
获取map_id对应的地图所有覆盖物的数量,方法的调用需要在主流程线程中
int32_t awk_map_release_overlays(awk_map_base_overlay_t **overlays, int32_t overlay_count)
释放覆盖物数组指针
const awk_map_base_overlay_t * awk_map_find_overlay(uint32_t map_id, uint32_t overlay_id)
根据overlay_id查找覆盖物信息,方法的调用需要在主流程线程中
int32_t awk_map_resume_render(uint32_t map_id)
将map_id对应的地图恢复绘制,方法的调用需要在主流程线程中
int32_t awk_map_pause_render(uint32_t map_id)
将map_id对应的地图暂停绘制,方法的调用需要在主流程线程中
int32_t awk_map_get_posture(uint32_t map_id, awk_map_posture_t *posture)
获取地图的状态,方法的调用需要在主流程线程中
int32_t awk_map_list_download_offline_regions(const char *adcode, uint32_t level, awk_map_offline_gdb_query_result_t *result)
列出已下载的离线地图信息,方法的调用需要在主流程线程中 读取结果中的regions在不需要时需要手动释放,否则会有内存泄露
int(* track_parser)(const char *track_data, size_t length, awk_map_track_info_t *result_track)
自定义轨迹解析器
int32_t awk_map_init_line_overlay(awk_map_polyline_overlay_t *line_overlay)
初始化线覆盖物的结构体,方法的调用需要在主流程线程中
awk_http_request_t * awk_map_download_get_request(const char *tile_file_key)
根据瓦片文件key获取请求
void awk_map_wgs84_to_mgs(double lng_wgs, double lat_wgs, double *lng_mgs, double *lat_mgs)
WGS84坐标转AMap坐标
int32_t awk_map_stop_download_offline_data()
停止离线地图下载,方法的调用需要在主流程线程中
int32_t awk_map_touch_begin(uint32_t map_id, int32_t x, int32_t y)
开始挪图手势,方法的调用需要在主流程线程中
int32_t awk_map_download_polyline_region(const char *key, awk_map_coord2d_t *points, uint32_t point_size, uint8_t *expand_levels, uint8_t expand_levels_size, awk_map_tile_download_callback_t *download_callback)
按照传入的经纬度点下载地图数据
double awk_map_calc_points_distance(double lon1, double lat1, double lon2, double lat2)
计算两点之间距离
int32_t awk_map_add_texture(const awk_map_texture_data_t *texture_data)
添加纹理数据,方法的调用需要在主流程线程中
int32_t awk_map_delete_download_region_range(awk_map_coord2d_t location, awk_map_range_t range, uint8_t expect_level)
删除下载的区域信息
double awk_map_track_navi_get_distance(uint32_t map_id, awk_map_coord2d_t point, awk_map_track_point_type point_type, awk_map_track_navi_overlay_t *overlay)
获取距离,获取最近的一个类型点距离
int32_t awk_map_create_view(awk_map_view_param_t param)
创建地图mapview,方法的调用需要在主流程线程中
int32_t awk_map_start_download_offline_data(const char *adcode, uint32_t level, awk_map_download_callback_t *download_callback)
下载离线地图,方法的调用需要在主流程线程中, 目前下载不支持并发任务,多个下载需顺序执行
int32_t awk_map_remove_overlay(uint32_t map_id, uint32_t overlay_id)
移除覆盖物,方法的调用需要在主流程线程中
int32_t awk_map_delete_download_offline_region(const char *adcode, uint32_t level)
删除下载的离线地图数据,方法的调用需要在主流程线程中
int32_t awk_map_set_roll_angle(uint32_t map_id, float roll_angle)
设置地图的旋转角度,方法的调用需要在主流程线程中
int32_t awk_map_update_overlay(uint32_t map_id, awk_map_base_overlay_t *overlay)
更新覆盖物,方法的调用需要在主流程线程中
int32_t awk_map_request_tiles(awk_rect_area_t req_rect, awk_map_coord2d_t map_center, float map_level, int32_t priority)
在线请求并进行缓存瓦片,SDK内部会判断是否已经存在磁盘缓存和离线数据,如果存在缓存则不会走在线请求
awk_map_offline_type
离线数据下载类型
@ OFFLINE_GDB_TILE_DONWLOAD
@ OFFLINE_GDB_LOCATION_RANGE
int32_t awk_map_update_texture(uint32_t texture_id, const awk_map_texture_data_t *texture_data)
更新纹理数据,方法的调用需要在主流程线程中
int32_t awk_map_start_download_region_range(awk_map_coord2d_t center, awk_map_range_t range, uint8_t expect_level, awk_map_download_callback_t *download_callback)
通过经纬度和范围下载地图数据
awk_map_point_overlay_t ** awk_map_click_points(uint32_t map_id, int32_t x, int32_t y, int32_t *overlay_count)
获取单击屏幕时命中的点覆盖物,如果命中多个点覆盖物,返回的结果中会按照priority从大到小进行排序
int32_t awk_map_do_render(void)
地图绘制,方法的调用需要在主流程线程中
awk_map_track_info_t * awk_map_track_navi_parse_gpx(const char *gpx_data, size_t length)
解析gpx
int32_t awk_map_touch_end(uint32_t map_id, int32_t x, int32_t y)
停止挪图手势,方法的调用需要在主流程线程中
int32_t awk_map_init_polygon_overlay(awk_map_polygon_overlay_t *polygon_overlay)
初始化面覆盖物的结构体,方法的调用需要在主流程线程中
int32_t awk_map_xy_to_lonlat(uint32_t map_id, int32_t x, int32_t y, awk_map_coord2d_t *lonlat)
屏幕坐标转经纬度坐标,方法的调用需要在主流程线程中
int32_t awk_map_set_center(uint32_t map_id, awk_map_coord2d_t coord2d)
设置地图中心,方法的调用需要在主流程线程中
int32_t awk_map_init_track_navi_overlay(awk_map_track_navi_overlay_t *overlay)
初始化轨迹导航覆盖物
int32_t awk_map_destroy_view(uint32_t map_id)
销毁地图mapview,方法的调用需要在主流程线程中
int32_t awk_map_stop_download_region_range(void)
停止经纬度范围下载
int32_t awk_map_set_view_port(uint32_t map_id, awk_map_view_port_t view_port)
设置地图视口,方法的调用需要在主流程线程中
awk_map_tile_response_status_t
在线瓦片请求状态
awk_map_track_point_type
导航点类型
struct _awk_bitmap_t awk_map_texture_data_t
纹理数据结构
void(* on_stop)(awk_map_download_callback_t *callback)
下载停止
void(* on_finish)(awk_map_download_callback_t *callback)
下载完成
void(* on_started)(awk_map_download_callback_t *callback)
开始下载
void(* on_progress)(awk_map_download_callback_t *callback, float progress)
下载的进度回调
void(* on_error)(awk_map_download_callback_t *callback, int32_t error_code, const char *msg)
下载错误
bool(* on_tile_begin_download)(int32_t type, uint32_t tile_x, uint32_t tile_y, uint32_t zoom)
tile开始下载回调(仅在线模式)
bool(* on_poi_begin_draw)(uint32_t map_id, uint32_t tile_x, uint32_t tile_y, uint32_t zoom)
tile开始绘制回调
void(* on_polygon_end_draw)(uint32_t map_id, int32_t guid, int32_t status)
面覆盖物结束绘制回调
void(* on_poi_end_download)(int32_t type, uint32_t tile_x, uint32_t tile_y, uint32_t zoom, awk_map_tile_response_status_t status)
poi结束下载回调(仅在线模式)
void(* on_line_end_draw)(uint32_t map_id, int32_t guid, int32_t status)
线覆盖物结束绘制回调
bool(* on_poi_begin_download)(int32_t type, uint32_t tile_x, uint32_t tile_y, uint32_t zoom)
poi开始下载回调(仅在线模式)
void(* on_point_end_draw)(uint32_t map_id, int32_t guid, int32_t status)
点覆盖物结束绘制回调
bool(* on_point_begin_draw)(uint32_t map_id, int32_t guid)
点覆盖物开始绘制回调
void(* on_tile_end_draw)(uint32_t map_id, uint32_t tile_x, uint32_t tile_y, uint32_t zoom, int32_t status)
tile结束绘制回调
void(* on_tile_end_download)(int32_t type, uint32_t tile_x, uint32_t tile_y, uint32_t zoom, awk_map_tile_response_status_t status)
tile结束下载回调(仅在线模式)
bool(* on_line_begin_draw)(uint32_t map_id, int32_t guid)
线覆盖物开始绘制回调
void(* on_poi_end_draw)(uint32_t map_id, uint32_t tile_x, uint32_t tile_y, uint32_t zoom, int32_t status)
tile结束绘制回调
bool(* on_polygon_begin_draw)(uint32_t map_id, int32_t guid)
面覆盖物开始绘制回调
bool(* on_tile_begin_draw)(uint32_t map_id, uint32_t tile_x, uint32_t tile_y, uint32_t zoom)
tile开始绘制回调
awk_map_offline_type type
下载类型
awk_map_offline_gdb_adcode_t adcode_info
adcode下载相关信息
awk_map_offline_gdb_location_t location_info
经纬度下载相关信息
uint8_t expect_level
需要的级别
awk_map_range_t range
范围枚举
awk_map_coord2d_t location
经纬度
awk_map_offline_gdb_info_t * infos
info信息数组
awk_map_tile_type_t tile_type