用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/ming1zhou88/minemap-skills --skill minemap-business-visibility-analysis命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
基于 SOC 职业分类
| name | minemap-business-visibility-analysis |
| description | MineMap 可视域与通视分析业务规范。用于安防、选址、观测点视域评估、遮挡判定。 |
const viewshed = new minemap.Viewshed3D({
viewerPosition: new minemap.Math.Vector3(116.39, 39.9, 20),
direction: 0,
pitch: 90,
distance: 200,
horizontalFov: 60,
verticalFov: 60,
visibleAreaColor: "rgba(0,255,0,0.3)",
hiddenAreaColor: "rgba(255,0,0,0.3)"
});
map.analysis.viewshed3DCollection.add(viewshed);
Viewshed3D适合:
Sightline适合:
Viewshed3D Strict ConstraintsviewerPosition 应为 Vector3direction 必须在 $[0, 360]$pitch 必须在 $[0, 180]$horizontalFov / verticalFov 必须在 $[0, 180]$distance > 0任何超界值都应在业务入参层先兜底,不要把异常留给渲染时。
Sightline Strict ConstraintsviewerPosition 是唯一观察点targets 是目标点集合namemainCameraInvisibleDetection对应 demo:demo/html/Viewshed3D.html
它清楚展示了 Viewshed3D 的两种工作流:
并且 demo 验证了这些集合操作是正式可用的:
getByIndex()getById()remove()removeById()removeByIndex()removeAll()locateToViewer()对应 demo:demo/html/Sightline.html
这个 demo 的实战价值很高:
mousemove 做预览目标点contextmenu 结束当前绘制这正是业务里最常见的“交互式通视”流程。
const sightline = new minemap.Sightline({
viewerPosition: new minemap.Math.Vector3(116.39, 39.9, 20),
targets: [{ name: "tower-a", position: [116.391, 39.901, 15] }],
visibleColor: "green",
hiddenColor: "red",
indicatorSize: 10,
mainCameraInvisibleDetection: true
});
map.analysis.sightlineCollection.add(sightline);
推荐交互方式:
配合方式:
map.painter.getPositionByGPUPick(...)更细一点的建议:
Viewshed3DdistanceviewerPositionsetTargetPoint() 驱动方向与距离Sightlinedemo 也证明这些参数适合在运行时实时调:
Viewshed3DviewerPositiondistancedirectionpitchhorizontalFovverticalFovvisibleAreaColorhiddenAreaColorlineColorSightlinevisibleColorhiddenColorlineWidthmainCameraInvisibleDetectionindicatorColorindicatorOutlineColorindicatorOutlineWidthindicatorSizeViewshed3D 并发成本明显高于普通图层Vector3 导致类型不一致Sightline 目标点没有稳定 name,导致删改目标点时不好管理demo/html/Viewshed3D.htmldemo/html/Sightline.htmlminemap-business-video-projectionminemap-business-flood-and-shadowminemap-terrain-and-analysis