$npx -y skills add baidu-maps/jsapi-skills --skill bmap-jsapi-three使用 MapV-Three 构建专业的 3D 地图和 GIS 应用 - 基于 Z-up 坐标系的 3D 地图库,支持地图编辑、测量工具、要素绘制、数据管理等地理可视化功能。适用于创建地图编辑器、测量工具、空间数据可视化等 Web-GIS 应用。
| 1 | # MapV-Three 开发指南 |
| 2 | |
| 3 | 使用 MapV-Three 构建高性能的 3D 地图和 GIS 应用 - 一个采用 Z-up 坐标系的跨浏览器 WebGL 库。 |
| 4 | |
| 5 | ## 何时适用 |
| 6 | |
| 7 | 在以下场景中参考这些指南: |
| 8 | |
| 9 | - 3D 地图编辑和要素绘制 |
| 10 | - 地图测量工具开发 |
| 11 | - 建筑物、区域等 3D 可视化 |
| 12 | - 实时交通数据展示 |
| 13 | - 路径追踪动画开发 |
| 14 | |
| 15 | ## 快速参考 |
| 16 | |
| 17 | ### 0. 核心引擎 |
| 18 | |
| 19 | - `references/engine.md` - Engine 引擎核心:初始化、场景管理、渲染控制 |
| 20 | - `references/initialization.md` - 引擎初始化、资源配置、百度地图适配器 |
| 21 | |
| 22 | ### 1. 数据管理 |
| 23 | |
| 24 | - `references/datasource.md` - DataSource 数据源基类 |
| 25 | - `references/datasource/geojson-datasource.md` - GeoJSON 数据源 |
| 26 | - `references/datasource/json-datasource.md` - JSON 数据源 |
| 27 | - `references/datasource/csv-datasource.md` - CSV 数据源 |
| 28 | - `references/datasource/dataitem.md` - DataItem 数据项 |
| 29 | |
| 30 | ### 2. 点对象与标签 |
| 31 | |
| 32 | - `references/simple-point.md` - SimplePoint 简单点 |
| 33 | - `references/effect-point.md` - EffectPoint 特效点(Fan、Bubble、Wave、Breath、Radar 等) |
| 34 | - `references/marker-types.md` - 标记类型(Icon、BallonPoint、DOMPoint、EffectModelPoint) |
| 35 | - `references/circle.md` - Circle 圆形(屏幕空间渲染) |
| 36 | - `references/label.md` - Label 文本/图标标签 |
| 37 | - `references/text.md` - Text 文本组件 |
| 38 | - `references/cluster.md` - ClusterPoint 点聚合 |
| 39 | |
| 40 | ### 3. 线与面 |
| 41 | |
| 42 | - `references/polyline.md` - Polyline 折线(flat 参数控制渲染模式) |
| 43 | - `references/simple-line.md` - SimpleLine 简单线 |
| 44 | - `references/wall.md` - Wall 墙体/围栏 |
| 45 | - `references/polygon.md` - Polygon 多边形 |
| 46 | - `references/pillar.md` - Pillar 柱体 |
| 47 | |
| 48 | ### 4. 覆盖物 |
| 49 | |
| 50 | - `references/marker.md` - Marker 标记 |
| 51 | - `references/popup.md` - Popup 弹出窗口 |
| 52 | - `references/dom-overlay.md` - DOMOverlay DOM 覆盖物 |
| 53 | |
| 54 | ### 5. 追踪器 |
| 55 | |
| 56 | - `references/tracker.md` - 追踪器总览与生命周期 |
| 57 | - `references/path-tracker.md` - PathTracker 路径追踪 |
| 58 | - `references/object-tracker.md` - ObjectTracker 对象追踪 |
| 59 | - `references/orbit-tracker.md` - OrbitTracker 轨道追踪 |
| 60 | |
| 61 | ### 6. 编辑与测量 |
| 62 | |
| 63 | - `references/editor.md` - Editor 编辑器 |
| 64 | - `references/measure.md` - Measure 测量工具 |
| 65 | |
| 66 | ### 7. 3D 模型 |
| 67 | |
| 68 | - `references/model.md` - 3D 模型加载(SimpleModel/AnimationModel/LODModel) |
| 69 | - `references/twin.md` - Twin 孪生车流(实时车流可视化、DataProvider 数据处理) |
| 70 | - `references/mock-twin.md` - MockTwin 模拟车流(基于路线数据的车流模拟生成) |
| 71 | |
| 72 | ### 8. 材质与特效 |
| 73 | |
| 74 | - `references/materials.md` - 材质系统(WaterMaterial、ExtendMeshStandardMaterial 等) |
| 75 | - `references/easing-function.md` - 缓动函数(LINEAR、QUINTIC_IN_OUT、CUBIC_OUT) |
| 76 | |
| 77 | ### 9. 天空与天气 |
| 78 | |
| 79 | - `references/sky-weather.md` - 天空系统(EmptySky/DynamicSky/StaticSky)和天气 |
| 80 | |
| 81 | ### 10. 热力图 |
| 82 | |
| 83 | - `references/heatmap.md` - Heatmap 热力图 |
| 84 | |
| 85 | ### 11. 地图图层加载 |
| 86 | |
| 87 | - `references/imagery-tile-provider.md` - 影像瓦片加载(Baidu、Tianditu、Bing、OSM、Stadia) |
| 88 | - `references/vector-tile-provider.md` - 矢量瓦片加载(Baidu、Mapbox) |
| 89 | - `references/third-party-imagery.md` - 第三方图层接入(WMS、WMTS、XYZ 标准协议) |
| 90 | - `references/terrain-tile-provider.md` - 地形瓦片加载(Cesium、平面地形) |
| 91 | - `references/tile-mask.md` - TileMask 瓦片掩膜(按区域裁剪瓦片图层显示) |
| 92 | |
| 93 | ### 12. LBS 位置服务 |
| 94 | |
| 95 | - `references/services.md` - 位置基础服务(地理编码、搜索、路线规划、行政区划等) |
| 96 | |
| 97 | ### 13. 3DTiles 加载 |
| 98 | |
| 99 | - `references/3dtiles-loading.md` - 3D Tiles 加载(Default3DTiles、HDMap3DTiles) |
| 100 | |
| 101 | ### 14. 基础概念 |
| 102 | |
| 103 | - `references/common/coordinate-system.md` - 坐标系:Z-up、投影方式 |
| 104 | - `references/common/event-binding.md` - 事件绑定模式 |
| 105 | |
| 106 | ## 关键注意事项 |
| 107 | |
| 108 | - **引擎初始化**:`new mapvthree.Engine(container, { map: { center: [lng, lat], range: meters } })` |
| 109 | - **坐标系**:Z-up(X-东、Y-北、Z-上),与 Three.js 默认 Y-up 不同 |
| 110 | - **视野控制**:使用 `range`(相机距离,米)而非 zoom |
| 111 | - **属性赋值**:使用属性代理 `obj.color = value`,而非 `obj.setColor(value)` |
| 112 | - **MeasureType**:使用 `mapvthree.Measure.MeasureType` |
| 113 | - **图层设置**:通过 `MapView` 设置影像/矢量/地形提供者,而非 `engine.map` |