Appearance
API 总览
GeoVerse 全部为命名导出,从 geoverse 单一入口引入:
ts
import { GMap, Marker, ClusterLayer /* ... */ } from 'geoverse';
import 'geoverse/style.css';模块顶层零副作用,可安全用于 SSR;DOM 操作只发生在构造函数/方法内部。
继承约定
GeoVerse 的类大量继承并扩展 OpenLayers 的类。文档中每个类都会标注:
- 继承 —— 直接基类。基类的全部公开方法(如
ol/Map的addLayer、ol/Feature的getGeometry)在子类上原样可用,本文档只详列 GeoVerse 新增/重写的成员;基类成员请查 OpenLayers API。 - 扩展 —— GeoVerse 在基类之上新增的能力。
约定:所有面向使用者的经纬度入参/出参一律为 WGS-84([经度, 纬度]);要素几何内部以视图投影存储,加入 GMap 管理的图层后随底图切换自动重投影。
导出索引
地图容器 · 详情
| 导出 | 继承 | 职责 |
|---|---|---|
GMap | ol/Map | 地图容器:内置坐标系、底图切换、要素事件、经纬度便捷方法 |
InfoWindow | ol/Overlay | 信息弹窗,open/close + 经纬度定位 |
FeaturePointerEvent | ol/events/Event | 要素级 click/mouseover/mouseout 事件对象 |
LayerKind / CANCEL_BUBBLE_KEY / CLUSTER_FEATURE_KEY | — | 图层种类标记与要素属性键常量 |
version | — | 包版本号字符串 |
坐标系 · 详情
| 导出 | 类型 | 职责 |
|---|---|---|
registerProjections | 函数 | 幂等注册 GCJ-02 / BD-09 / EPSG:3395 |
GCJ02_CODE / BD09_CODE / EPSG3395_CODE | 常量 | 投影代号 |
gcj02 / bd09 | 对象 | WGS-84 ↔ 加偏经纬度互转(纯函数) |
sphericalMercator / baiduMercator | 对象 | 墨卡托正反算 |
outOfChina | 函数 | 点是否在国境框外 |
要素 · 详情
| 导出 | 继承 | 职责 |
|---|---|---|
GFeature | ol/Feature | 要素基类:样式/坐标便捷读写 + onPointer |
Marker / Circle / Polygon / Polyline | GFeature | 自带样式的点/圆/面/线要素 |
Graphic | ol/Object | 海量点轻量要素(不逐要素渲染) |
瓦片源 · 详情
| 导出 | 继承 | 职责 |
|---|---|---|
GaodeSource / BaiduSource / OceanSource | ol/source/XYZ | 高德 / 百度 / 海图瓦片源 |
TiandituSource | ol/source/XYZ | 天地图瓦片源(需 token) |
SuperMapRestSource | ol/source/TileImage | 超图 iServer REST 瓦片源 |
getTileGrid / createBaiduUrlFunction | 函数 | 瓦片网格 / 百度 URL 构造 |
*_ATTRIBUTION | 常量 | 各源版权串 |
图层 · 详情
| 导出 | 继承 | 职责 |
|---|---|---|
createBaseLayer | 函数 | 按代号创建内置底图(高德/百度/天地图/海图) |
GVectorLayer | ol/layer/Vector | 通用矢量要素图层 |
HeatLayer | ol/layer/Heatmap | 热力图层 |
GImageLayer | ol/layer/Image | 静态栅格图片图层 |
MassLayer / MassSource | ol/layer/Image / ol/source/ImageCanvas | 海量点(canvas 批量绘制) |
ClusterLayer | GVectorLayer | 距离聚合图层(万级以下) |
SuperClusterLayer / SuperClusterSource | GVectorLayer / ol/source/Vector | supercluster 聚合(十万级) |
ClusterStyleResolver | — | 聚合分档样式计算器 |
TrafficLayer | ol/layer/Tile | 实时路况图层 |
CustomBaseLayer | ol/layer/Tile | 自定义底图(XYZ/WMS/ArcGIS/超图) |
isInPolygon | 函数 | 射线法点在多边形内判断 |
BASE_LAYER_TYPE / CLUSTER_ICON_* | 常量 | 底图标记 / 内置聚合图标 |
交互 · 详情
| 导出 | 继承 | 职责 |
|---|---|---|
Measure | — | 测距 / 测面 |
DrawTool | — | 点/线/面/圆/方/矩形绘制 |
FeatureEditor | ol/Object | 要素顶点编辑 |
EditorEndEvent / EditorAdjustEvent | ol/events/Event | 编辑事件对象 |
控件与轨迹工具 · 详情
| 导出 | 继承 | 职责 |
|---|---|---|
Overview | ol/control/OverviewMap | 鹰眼控件 |
cloneBaseLayers | 函数 | 复制底图图层(鹰眼用) |
PathSimplifier | — | 轨迹回放(动画/跳跃、抽稀渲染) |
TrackEvent | ol/events/Event | 轨迹事件对象 |
NameLayer experimental | GVectorLayer | 文字避让标注图层 |
compressLine / douglasPeucker / ... | 函数 | 轨迹抽稀纯算法 |
工具函数 · 详情
| 导出 | 职责 |
|---|---|
formatLength / formatArea | 长度/面积人类可读格式化 |
isHexColor | 十六进制颜色判断 |
runAlongTask | 帧预算内非阻塞执行 |
SnowflakeIdGenerator | 雪花 ID 生成 |
fitChinaView | 视图调整为中国全境 |
stringToDom / domToString / hasClass / addClass / removeClass | DOM 辅助 |