用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/ming1zhou88/minemap-skills --skill minemap-business-spatial-analysis-suite命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | minemap-business-spatial-analysis-suite |
| description | MineMap 空间分析补充能力规范。覆盖地形专题分析、剖面、限高、挖填方、地形开挖、开敞度、干扰分析等非可视域/淹没/量算类分析。 |
const cutFill = new minemap.CutFill({
positions: minemap.Math.Vector3.fromDegreesArrayHeights([
116.39, 39.9, 10, 116.4, 39.9, 11, 116.4, 39.91, 12, 116.39, 39.91, 10
]),
enabled: true
});
map.analysis.cutFillCollection.add(cutFill);
本 skill 专门承接空间分析家族里此前未单独拆包、但已经有公开导出和 demo 证据的能力:
map.setTerrainAnalysis(...)CutFillExcavationLimitHeightViewDomeInterferenceInterferenceConjoinedProfile不重复覆盖的对象:
Viewshed3D / Sightline → minemap-business-visibility-analysisFloodAnalysis / FloodAnalysisOffline / ShadowAnalysis → minemap-business-flood-and-shadowMeasurement3D → minemap-business-measurementmap.setTerrainAnalysis(...)这不是分析对象集合,而是地形渲染分析模式。
典型组合:
minemap.TerrainAnalysisType.SLOPEminemap.TerrainAnalysisType.ASPECTminemap.TerrainAnalysisType.ELEVATIONminemap.InterpolationType.EXPONENTIALminemap.InterpolationType.INTERVAL适合:
对应 demo:demo/html/DemAnalysis.html、demo/html/ContourAnalysis.html
CutFill适合:
对应 demo:demo/html/CutAndFillAnalysis.html
Excavation适合:
对应 demo:demo/html/DiggingTerrain.html、demo/html/DiggingTerrainWithIgnoreClassification.html
LimitHeight适合:
注意:LimitHeight 实际挂在 map.analysis.highlightCollection 下管理,而不是单独的 limitHeightCollection。
对应 demo:demo/html/LimitHeightAnalysis.html
ViewDome适合:
对应 demo:demo/html/ViewDome.html
Interference适合:
对应 demo:demo/html/Interference.html
InterferenceConjoined适合:
Interference,再做联动汇总对应 demo:demo/html/Interference.html
Profile适合:
对应 demo:demo/html/Profile.html
DemAnalysis.html 说明:
map.setTerrain(...)map.setTerrainAnalysis(styleConfig)styleConfig 的核心是:
propertystopsregionhasArrow因此它更像“地形专题渲染”,不是实体分析对象。
CutFill / LimitHeight 都依赖交互圈区CutAndFillAnalysis.html 与 LimitHeightAnalysis.html 都体现了相同工作流:
这类分析的本质是“先定区,再调参数”,不是初始化一次就结束。
Excavation 更接近地形改造对象DiggingTerrain.html 证明:
positionsdepthsampleDistanceenabled是最关键的运行时参数。
它和 CutFill 的差别是:
CutFill 更偏结果评估Excavation 更偏直接修改开挖表达ViewDome / Interference 都支持参数化创建与点击创建ViewDome.html、Interference.html 都不是只做静态展示,它们都验证了:
remove() / removeAll() 等集合管理这类分析非常适合封装成“交互工具模式”。
Profile 是 Promise 型分析流程Profile.html 说明它不是简单 collection 对象:
new minemap.Profile(map, options)profile.analysis().then((result) => { ... })结果里不只有高程点列,还包含:
samplesNumberminHeightmaxHeighthorizontalDistanceverticalDistancesurfaceDistance因此它更适合“分析结果回传 + 图表联动”的业务。
setTerrainAnalysis(...) 的前提是已启用 DEM。不要在平面模式下把它当普通 raster 样式去用。
LimitHeight 的容器容易记错它走的是 map.analysis.highlightCollection,不是独立集合。业务封装时必须把这个非直觉入口写清楚。
Profile 的服务端模式有明确边界当 profileType = ACCEPT_COMPUTING 时:
terrainServer 或 modelServer 至少要有一个不要把它写成任意场景对象都能服务端剖面。
Excavation 与叠加对象关系要单独验收开挖会与地形、栅格、3D Tiles 的分类/深度关系耦合。涉及模型叠加时,要结合 IGNORECLASSIFICATION 等配置单独验收。
stops 对应的是业务阈值,不应只按好看配色。尤其是坡度、坡向、等高面分带,必须先和业务指标对齐。
setTerrainAnalysis(...)CutFill / LimitHeight 区域点数不足或未形成有效面Excavation 画完后丢失对象引用,后续无法改 depth 或 enabledLimitHeight 当成普通高亮效果,忽略其超高判定语义Profile 忘记等待 analysis() 的 Promise 完成就直接取结果InterferenceConjoined 在没有基础 Interference 结果时直接使用stops 和 regionremoveAll()Profileawait / then 获取分析结果demo/html/DemAnalysis.htmldemo/html/ContourAnalysis.htmldemo/html/CutAndFillAnalysis.htmldemo/html/DiggingTerrain.htmldemo/html/DiggingTerrainWithIgnoreClassification.htmldemo/html/LimitHeightAnalysis.htmldemo/html/ViewDome.htmldemo/html/Interference.htmldemo/html/Profile.htmlminemap-terrain-and-analysisminemap-business-visibility-analysisminemap-business-flood-and-shadowminemap-business-measurementminemap-2d-3d-overlay-and-classification