UNPKG

@huangjs888/react-native-amap

Version:
296 lines (252 loc) 3.78 kB
/* * @Author: Huangjs * @Date: 2022-05-11 17:49:45 * @LastEditors: Huangjs * @LastEditTime: 2022-12-12 17:20:24 * @Description: ****** */ /** * 点坐标 */ export type Point = { x: number; y: number; }; /** * 地理坐标 */ export type LatLng = { /** * 纬度 */ latitude: number; /** * 经度 */ longitude: number; }; /** * 矩形坐标边界 */ export type LatLngBounds = { /** * 西南坐标 */ southwest: LatLng; /** * 东北坐标 */ northeast: LatLng; }; /** * 地图状态 */ export type CameraPosition = { /** * 中心坐标 */ center: LatLng; /** * 缩放级别 */ zoom: number; /** * 朝向、旋转角度 */ rotate: number; /** * 倾斜角度 */ pitch: number; }; /** * OpenGL拾取信息 */ export type MeshInfo = { /** * mesh对象三角形面的下标 */ faceIndex: number; /** * 点坐标 */ projectionPoint: number[]; /** * 投影距离 */ projectionDistance: number; /** * 视图id */ meshViewId: number; }; /** * 定位 */ export interface Location extends LatLng { /** * 时间戳 */ timestamp: number; /** * 精度 */ accuracy: number; /** * 朝向 */ heading: number; /** * 海拔 */ altitude: number; /** * 运动速度 */ speed: number; } /** * 地图类型 */ export enum MapType { /** * 标准地图 */ STANDARD, /** * 卫星地图 */ SATELLITE, /** * 夜间地图 */ NIGHT, /** * 导航地图 */ NAVI, /** * 公交地图 */ BUS, } /** * 坐标类型 */ export enum CoordinateType { /** * 阿里云 */ ALIYUN, /** * 百度坐标 */ BAIDU, /** * 谷歌坐标 */ GOOGLE, /** * GPS原始坐标 */ GPS, /** * 图盟坐标 */ MAPABC, /** * 图吧坐标 */ MAPBAR, /** * 搜搜坐标 */ SOSOMAP, } /** * 天气类型 */ export enum WeatherType { /** * 实况天气为 */ LIVE, /** * 天气预报为 */ FORECAST, } /** * 地图类型 */ export enum MeshType { /** * 前后都渲染 */ BOTH, /** * 渲染前面 */ FRONT, /** * 渲染后面 */ BACK, } export type AreaPosition = { cameraPosition?: CameraPosition; latLngBounds?: LatLngBounds; }; export type PointPosition = { latLng?: LatLng; point?: Point; }; export type Icon = { uri?: string; width?: number; height?: number; }; export type MeshInfoList = { meshInfoList?: MeshInfo[]; }; export type MeshInfoPoint = { meshInfo?: MeshInfo; position?: PointPosition; }; export type MeshData = { vertices?: number[]; vertexColors?: number[]; faces?: number[]; zenith?: number; azimuth?: number; spacing?: number; position?: LatLng; coordType?: number; point?: Array<{ zenith: number; azimuth: number; spacing: number; center: LatLng; value: number[]; }>; }; export type MeshDataRequest = { url?: string; method?: 'POST' | 'GET'; data?: any; headers?: any; type?: 'form' | 'json'; timeout?: number; dataParse?: { dataKey: string; centerMode: 'single' | 'multiple'; // 解析数据时,有多个或单个中心点 pointMode: 'spherical' | 'cartesian'; // 球坐标系,笛卡尔坐标系(空间直角坐标系) valueMode: 'color' | 'value'; // color:代表返回的是已经算好的rgba值,value代表返回值,然后计算出rgba,设置value需要定义valueDomain coordType: number; // 获取的数据坐标是哪一种,会转换成高德坐标,如果本身就是高德坐标则不传 }; }; export type MeshDataColor = { range?: number[]; color?: string[]; opacity?: number; };