Files
MoGoEagleEye/libraries/mogo-map-api/src/main/java/com/mogo/map/IMogoMap.java
2023-05-19 16:57:41 +08:00

147 lines
3.5 KiB
Java
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package com.mogo.map;
import com.mogo.map.center.CenterLine;
import com.mogo.map.overlay.line.Polyline;
import com.mogo.map.overlay.point.Point;
import com.mogo.map.overlay.proxy.line.IMapPolylineOverlay;
import com.mogo.map.overlay.proxy.point.IMapPointOverlay;
import com.mogo.map.road.RoadNameInfo;
import com.mogo.map.uicontroller.IMogoMapUIController;
import java.util.HashMap;
import mogo.telematics.pad.MessagePad;
import mogo.yycp.api.proto.SocketDownData;
/**
* @author congtaowang
* @since 2019-12-18
* <p>
* 地图控制接口
*/
public interface IMogoMap {
/**
* 获取地图ui控制器可以控制内置ui缩放按钮、指北针等是否显示及部分手势滑动、双指缩放等是否可用。
*
* @return
*/
IMogoUiSettings getUiSettings();
/**
* 操作地图视图
*
* @return
*/
IMogoMapUIController getUIController();
IMapPointOverlay addPoint(Point.Options options);
IMapPolylineOverlay addLine(Polyline.Options options);
/**
* 批量更新锚点位置
*
* @param optionsArrayList 锚点集合
*/
void updateBatchMarkerPosition(HashMap<String, MessagePad.TrackedObject> optionsArrayList);
/**
* 批量更新锚点位置
*
* @param optionsArrayList 锚点集合
*/
void updateBatchAiMarkerPosition(HashMap<String, SocketDownData.CloudRoadDataProto> optionsArrayList);
/**
* 添加感知使用到的3d模型
*
* @param type
* @param modelRes
*/
String addPreVehicleModel(int type, int modelRes);
/**
* 要移除的感知数据uuid
*
* @param uuidString
*/
void removeMarker(String uuidString);
/**
* 从地图上删除所有的overlaymarkercirclepolyline 等对象)。
*/
void clear();
/**
* 从地图上删除所有的覆盖物markercirclepolyline 等对象但myLocationOverlay内置定位覆盖物除外。
*
* @param isKeepMyLocationOverlay
*/
void clear(boolean isKeepMyLocationOverlay);
/**
* 设置屏幕上的某个像素点为地图中心点。
*
* @param x
* @param y
*/
void setPointToCenter(int x, int y);
/**
* 获取比例尺
*
* @return 当前缩放级别下地图上1像素点对应的长度单位米
*/
float getScalePerPixel();
/**
* 改变地图缩放级别
*
* @param zoom
*/
void changeZoom(float zoom);
/**
* 改变地图缩放级别的别一种方式
*
* @param zoom 缩放等级
*/
void changeZoom2(float zoom);
/**
* 获取缩放比例
*
* @return
*/
float getZoomLevel();
/**
* 获取道路的宽度
*/
float getRoadWidth(double lon, double lat, float angle, boolean isGpsLocation, boolean isRTK);
/**
* 获取行驶方向一定长度的中心线
*
* @param lon 经度
* @param lat 纬度
* @param angle 航向角
* @param distance 获取车道中心线的长度,> 0: 行驶方向前方距离, <0 行驶方向后方距离
* @return 中心线相关数据
*/
CenterLine getCenterLineRangeInfo(double lon, double lat, float angle, float distance);
/**
* 根据自车经纬度和航向角,获取道路名称
*
* @param lon 经度
* @param lat 纬度
* @param angle 航向角
* @return 道路名称等相关信息
*/
RoadNameInfo getRoadName(double lon, double lat, float angle);
}