主题
G.map()
创建地图实例。
签名
ts
G.map(options: MapOptions): MapHandle参数
| 参数 | 类型 | 默认值 | 描述 |
|---|---|---|---|
| target | string | HTMLElement | - | 地图容器的 DOM ID 或元素引用 |
| engine | string | - | 引擎 ID(如 'ol'、'cesium') |
| center | [number, number] | [0, 0] | 初始中心坐标 [lng, lat] |
| zoom | number | 10 | 初始缩放级别 |
| bearing | number | 0 | 方位角(度),正值为顺时针旋转 |
| pitch | number | 0 | 俯仰角(度),3D 模式下生效 |
| mode | '2d' | '3d' | '2d' | 维度模式 |
| projection | string | 当前配置值 | 坐标系标识(如 'EPSG:3857') |
| accessToken | string | 当前配置值 | 地图服务访问令牌 |
返回值
MapHandle — 地图句柄,支持以下方法:
| 方法 | 返回值 | 说明 |
|---|---|---|
| whenReady() | Promise<MapHandle> | 地图就绪后 resolve |
| getZoom() | number | 当前缩放级别 |
| getCenter() | [number, number] | 当前中心坐标 |
| getLayers() | Layer[] | 当前图层列表 |
| addLayer(layer) | Promise<void> | 添加图层 |
| getNative() | object | 获取底层引擎对象 |
| destroy() | void | 销毁地图实例 |
示例
ts
// 基础用法
const map = G.map({
target: 'map',
engine: 'ol',
center: [116.397, 39.908],
zoom: 12,
});
await map.whenReady();
console.log(map.getZoom()); // 12
console.log(map.getCenter()); // [116.397, 39.908]
// 3D 模式
const map3d = G.map({
target: 'map3d',
engine: 'cesium',
center: [116.397, 39.908],
zoom: 15,
pitch: 45,
bearing: 30,
mode: '3d',
});
// 添加图层
await map.addLayer(G.tileLayer({ url: 'https://tile.example.com/{z}/{x}/{y}.png' }));二三维共存
G.coexist(map, engineId, opts)
进入共存模式。
javascript
const coex = G.coexist(map, 'cesium', { mode: 'over-map' });G.toggle3D(map)
切换 3D 显示。
javascript
G.toggle3D(map);G.exitCoexistence(map)
退出共存模式。
javascript
G.exitCoexistence(map);