rc-bmap
Version:
<p align="center"> <img src="https://bmap.jser-club.com/home.png" width="200px"> </p> <p align="center">基于 React 的百度地图组件</p>
178 lines (162 loc) • 4.39 kB
JavaScript
/**
* 标注的动画效果
*/
const ANIMATION = {
DROP: 'BMAP_ANIMATION_DROP',
BOUNCE: 'BMAP_ANIMATION_BOUNCE',
};
/**
* 内置的右键菜单图标
*/
const CONTEXT_MENU_ICON = {
ZOOM_IN: 'BMAP_CONTEXT_MENU_ICON_ZOOMIN',
ZOOM_OUT: 'BMAP_CONTEXT_MENU_ICON_ZOOMOUT',
};
/**
* 控件的定位
*/
const CONTROL_ANCHOR = {
TOP_LEFT: 'BMAP_ANCHOR_TOP_LEFT',
TOP_RIGHT: 'BMAP_ANCHOR_TOP_RIGHT',
BOTTOM_LEFT: 'BMAP_ANCHOR_BOTTOM_LEFT',
BOTTOM_RIGHT: 'BMAP_ANCHOR_BOTTOM_RIGHT',
};
/**
* 长度单位制
*/
const LENGTH_UNIT = {
METRIC: 'BMAP_UNIT_METRIC',
IMPERIAL: 'BMAP_UNIT_IMPERIAL',
};
/**
* 地图上所有覆盖物的容器集合
*/
const MAP_PANES = {
FLOAT: 'floatPane', // 信息窗口所在容器
FLOAT_SHADOW: 'floatShadow', // 信息窗口阴影所在容器
LABEL: 'labelPane', // 文本标注所在容器
MARKER: 'markerPane', // 标注图标所在容器
MARKER_MOUSE: 'markerMouseTarget', // 标注点击区域所在容器
MARKER_SHADOW: 'markerShadow', // 标注阴影所在容器
MAP: 'mapPane', // 折现、多边形等矢量图形所在容器
};
/**
* 地图类型
*/
const MAP_TYPE = {
NORMAL: 'BMAP_NORMAL_MAP',
PERSPECTIVE: 'BMAP_PERSPECTIVE_MAP',
SATELLITE: 'BMAP_SATELLITE_MAP',
HYBRID: 'BMAP_HYBRID_MAP',
};
/**
* MapTypeControl的外观样式
*/
const MAP_TYPE_CONTROL_TYPE = {
HORIZONTAL: 'BMAP_MAPTYPE_CONTROL_HORIZONTAL',
DROPDOWN: 'BMAP_MAPTYPE_CONTROL_DROPDOWN',
MAP: 'BMAP_MAPTYPE_CONTROL_MAP',
};
/**
* 平移缩放控件的类型
*/
const NAVIGATION_CONTROL_TYPE = {
LARGE: 'BMAP_NAVIGATION_CONTROL_LARGE',
SMALL: 'BMAP_NAVIGATION_CONTROL_SMALL',
PAN: 'BMAP_NAVIGATION_CONTROL_PAN',
ZOOM: 'BMAP_NAVIGATION_CONTROL_ZOOM',
};
/**
* 海量点预设的不同形状
*/
const SHAPE_TYPE = {
CIRCLE: 'BMAP_POINT_SHAPE_CIRCLE',
STAR: 'BMAP_POINT_SHAPE_STAR',
SQUARE: 'BMAP_POINT_SHAPE_SQUARE',
RHOMBUS: 'BMAP_POINT_SHAPE_RHOMBUS',
WATERDROP: 'BMAP_POINT_SHAPE_WATERDROP',
};
/**
* 海量点预设的不同尺寸
*/
const SIZE_TYPE = {
TINY: 'BMAP_POINT_SIZE_TINY',
SMALLER: 'BMAP_POINT_SIZE_SMALLER',
SMALL: 'BMAP_POINT_SIZE_SMALL',
NORMAL: 'BMAP_POINT_SIZE_NORMAL',
BIG: 'BMAP_POINT_SIZE_BIG',
BIGGER: 'BMAP_POINT_SIZE_BIGGER',
HUGE: 'BMAP_POINT_SIZE_HUGE',
};
/**
* 矢量图标类预设的图标样式
*/
const SYMBOL_SHAPE_TYPE = {
CIRCLE: 'BMap_Symbol_SHAPE_CIRCLE',
RECTANGLE: 'BMap_Symbol_SHAPE_RECTANGLE',
RHOMBUS: 'BMap_Symbol_SHAPE_RHOMBUS',
STAR: 'BMap_Symbol_SHAPE_STAR',
BACKWARD_CLOSED_ARROW: 'BMap_Symbol_SHAPE_BACKWARD_CLOSED_ARROW',
FORWARD_CLOSED_ARROW: 'BMap_Symbol_SHAPE_FORWARD_CLOSED_ARROW',
BACKWARD_OPEN_ARROW: 'BMap_Symbol_SHAPE_BACKWARD_OPEN_ARROW',
FORWARD_OPEN_ARROW: 'BMap_Symbol_SHAPE_FORWARD_OPEN_ARROW',
POINT: 'BMap_Symbol_SHAPE_POINT',
PLANE: 'BMap_Symbol_SHAPE_PLANE',
CAMERA: 'BMap_Symbol_SHAPE_CAMERA',
WARNING: 'BMap_Symbol_SHAPE_WARNING',
SMILE: 'BMap_Symbol_SHAPE_SMILE',
CLOCK: 'BMap_Symbol_SHAPE_CLOCK',
};
/**
* 驾车方案的策略配置
*/
const DRIVING_POLICY = {
DEFAULT: 'BMAP_DRIVING_POLICY_DEFAULT',
FIRST_HIGHWAYS: 'BMAP_DRIVING_POLICY_FIRST_HIGHWAYS',
AVOID_HIGHWAYS: 'BMAP_DRIVING_POLICY_AVOID_HIGHWAYS',
AVOID_CONGESTION: 'BMAP_DRIVING_POLICY_AVOID_CONGESTION',
};
/**
* 跨城公交换乘策略
*/
const INTERCITY_POLICY = {
LEAST_TIME: 'BMAP_INTERCITY_POLICY_LEAST_TIME',
EARLY_START: 'BMAP_INTERCITY_POLICY_EARLY_START',
CHEAP_PRICE: 'BMAP_INTERCITY_POLICY_CHEAP_PRICE',
};
/**
* 市内公交方案换乘策略
*/
const TRANSIT_POLICY = {
RECOMMEND: 'BMAP_TRANSIT_POLICY_RECOMMEND',
LEAST_TIME: 'BMAP_TRANSIT_POLICY_LEAST_TIME',
LEAST_TRANSFER: 'BMAP_TRANSIT_POLICY_LEAST_TRANSFER',
LEAST_WALKING: 'BMAP_TRANSIT_POLICY_LEAST_WALKING',
AVOID_SUBWAYS: 'BMAP_TRANSIT_POLICY_AVOID_SUBWAYS',
FIRST_SUBWAYS: 'BMAP_TRANSIT_POLICY_FIRST_SUBWAYS',
};
/**
* 跨城交通方式策略
*/
const TRANSIT_TYPE_POLICY = {
TRAIN: 'BMAP_TRANSIT_TYPE_POLICY_TRAIN',
AIRPLANE: 'BMAP_TRANSIT_TYPE_POLICY_AIRPLANE',
COACH: 'BMAP_TRANSIT_TYPE_POLICY_COACH',
};
export default {
ANIMATION,
CONTEXT_MENU_ICON,
CONTROL_ANCHOR,
LENGTH_UNIT,
MAP_PANES,
MAP_TYPE,
MAP_TYPE_CONTROL_TYPE,
NAVIGATION_CONTROL_TYPE,
SHAPE_TYPE,
SIZE_TYPE,
SYMBOL_SHAPE_TYPE,
DRIVING_POLICY,
INTERCITY_POLICY,
TRANSIT_POLICY,
TRANSIT_TYPE_POLICY,
};