生成一张手绘风格的中国旅行路线图 PNG,地图依据用户提供的经纬度坐标(lat/lng)有序列表绘制。当用户请求“sketch map”、“hand-drawn map”、“travel route map”、“手绘地图”、“行程图”或“路线图”,且覆盖中国城市时,启用此功能。
excutive-sketch-map. 从一个命令位置列表中绘制中国的手绘路线图是一项面向实际任务的技能,主要用于地图层省洗, 河流穿过被访问城市, 突出显示城市多边形。它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。
实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。
根据一组有序的地点列表,渲染一张手绘风格的中国路线图(PNG 格式)。地图包含以下图层:省级区域填色、流经所访问城市的河流、高亮显示的城市多边形、带方向箭头的路线、带编号的标记点、指南针,以及可选标题。视觉样式为固定设计。
当用户需要以下任意一种输出时,可使用该技能:
覆盖范围仅限于中国大陆地区(WGS84 坐标系经纬度)。境外地点无法匹配省级或市级行政边界,在输出摘要中将归入 unmatchedLocations 字段。
在本技能目录下,一次性安装 CLI 所需依赖:
pnpm --dir scripts install
需使用 Node 20+ 版本。
在本技能目录下运行 CLI 工具(读取路线 JSON 输入,生成 PNG 输出;摘要信息输出至 stdout):
cat input-route.json | pnpm --dir scripts exec tsx render-sketch-map.ts --output /tmp/route.png
安装说明:将此文件夹复制或创建符号链接至你的编程智能体(coding agent)的技能路径中(例如:,具体路径请参考你所用工具的文档说明)。地理数据已内置于 sketch-map-sdk 中;常规使用无需单独复制 geo/*.json 类型的地理数据文件。
{
"title": "可选字段,最多 60 个字符;省略则不显示标题",
"locations": [
{ "name": "武汉", "lat": 30.5928, "lng": 114.3055 },
{ "name": "青岛", "lat": 36.0671, "lng": 120.3826 }
],
"width": 800,
"height": 600
}
| 字段 | 是否必需 | 约束条件 |
|---|---|---|
locations |
是 | 1 至 50 项,且须按访问顺序排列(决定路线箭头方向与标记编号) |
locations[].name |
是 | 简短标签,绘制在标记点旁 |
locations[].lat |
是 | -90 至 90,WGS84 坐标系 |
locations[].lng |
是 | -180 至 180,WGS84 坐标系 |
title |
否 | 最多 60 个字符,绘制于图像顶部 |
width |
否 | 400 至 2000 像素,默认值为 800 |
height |
否 | 300 至 2000 像素,默认值为 600 |
PNG 图像以 SVG viewBox 尺寸的 2 倍分辨率进行光栅化。
完成渲染后,标准输出(stdout)将返回一个 JSON 对象,可用于后续逻辑处理:
{
"output": "/abs/path/route.png",
"status": "ok",
"message": "Rendered 5 locations to png.",
"locationCount": 5,
"unmatchedLocations": []
}
检查 unmatchedLocations 字段,可识别坐标异常问题(常见原因包括:坐标拼写错误、非中国大陆位置、或经纬度顺序颠倒)。
name、lat、lng(WGS84 坐标)。unmatchedLocations 非空,请核实对应坐标的准确性并重新运行。output 字段)。随包附带的 references/sample-route.json 描述了一条从 故宫 → 兵马俑 → 外滩 → 西湖 → 黄山 的路线。在本技能目录下执行:
pnpm --dir scripts install pnpm --dir scripts run render --input ../references/sample-route.json --output /tmp/sample.png
unmatchedLocations 非空 —— 坐标落在中国大陆行政边界之外(常见原因为 lat/lng 顺序颠倒)。请修正输入后重试。相关专题
热门下载
相关下载
精品课程
共6课时 | 54.7万人学习
共89课时 | 133.9万人学习
共49课时 | 82.5万人学习