# MapCutter
MapCutter 是制作覆盖图/瓦片图/金字塔图/游戏地图/切图切片的工具,它支持百度、腾讯、高德、天地图、谷歌、必应地图、MapBox等地图服务,是市面上最易用的同类软件,并支持js、webgl、leaflet、maptalks、openlayers、cesium 等地图网页输出,无偏移。可用于景区地图切图、遥感地图切图、游戏地图切图、虚拟城市地图、省市范围地图拼接等地图应用开发。
MapCutter 3.9 使用介绍
# 下载
MapCutter v 3.9.5
MapCutter v 3.9.1
最新版本3.9.x:
- 支持地图:百度、腾讯、高德、天地图、必应、谷歌、MapBox。
- 支持超大图片(分辨率大于20480*20480),支持几十G的大图片。
- 支持标准(256*256)及高清地图切片输出(512*512),适合手机及视网膜屏查看。
- 支持快速辅助校准地图位置,可用直观预览方式供用户快速精确定位地图。
- 支持输入图片格式:jpg, png, tiff, gif
- 支持输入矢量图片格式 svg 。
- 支持输出图片格式 :png、tif、jpg,并可设置输出图片的质量。
- 支持10-22级地图切图。一般web用10-18级,mobile用10-19级,google支持22级。
- 支持最新版本检测及下载、终身免费升级。
- 支持自定义图片路径,如/z/x_y.png 或 /z/x/y.png。
- 支持地图拼接,可用该功能生成省、市范围的大规模地图。
- 支持超大地图目录无缝拼接功能。
- 支持配置文件读写。
- 支持根据图片内置的经纬度数据自动定位(支持 geotiff、exif gps)。
- 支持图片旋转预览及处理。
- 支持多版本网页输出,如js、webgl、leaflet、maptalks、openlayers、cesium 等。
Baidu : v2、v3、maptalks
BaiduGL: gl, openlayers, cesium
Tencent : v2、webgl、leaflet
Gaode : v1, v2, leaflet, maptalks、openlayers、cesium
TianDiTu : v3, v4, leaflet, maptalks、openlayers、cesium
Bing : js, leaflet、openlayers
Google : js, leaflet, maptalks、openlayers
MapBox: gl, leaflet
- 支持自定义输出模版。
- 使用内置 Web 服务器,查看需要部署成网站的地图网页不报错。
- 支持游戏地图开发,可设置图层的宽度高度,与游戏像素相匹配。
- 使用内置 Web 服务器及谷歌内核浏览器,查看地图网页通用、稳定、快速。
- 提供小型集成网页开发环境,可直接对网页进行读写、调试、展示。
如果跑不起来,请运行安装一下安装包里面的VC再发布程序 VC_redist.x64.exe
# 切图步骤
(1)设置覆盖图及地图配置参数
(2)设置覆盖图位置区域
(3)点击“开始切图”按钮,结束后就可以看生成的网页
小型网页集成开发环境
百度地图
腾讯地图
高德地图
天地图
必应地图
谷歌地图
Leaflet
MapTalks
Cesium
MapBox
# 拼接地图步骤
# 部分客户切图示例
八里河
凤凰沟
吴江胜地公园
Google 超大图切 10- 22 级地图
武汉柏泉
宁波四明湖
惠州江心公园
宁波九龙湖
北京鲜花巷
甘肃官鹅沟
茂县古羌城
北京密云
安徽安谭陈村
长治虚拟城市
甘肃省国画风
滁州手绘地图
台山海岸监管
成都大熊猫繁育研究基地
湛江
# FAQ
Q: 程序好像没跑起来?
A: 试一下安装vc_redist.x64.exe(在安装包根目录下)。也可以从服务器下载: Visual C++ Redistributable 2019:https://aka.ms/vs/17/release/vc_redist.x64.exe
Q: 如何升级版本?
A: 软件顶部上有“版本检测”按钮,点击后即可获取最新版本的信息(不过这个github的版本监测接口不稳定,最好去github上下载最新版本 https://github.com/surfsky/MapCutterRelease/releases)。下载最新版本后解压,并把之前申请的 app.license 文件拷贝过去即可使用。
Q: 为什么切图后会有淡红色背景、网格和编号
A: 这是调试信息。注册后,首页“输出调试信息”选项不勾选,即可输出正常切图地图。
Q: 为什么切图后的网页还会显示白色网格
A: 有些地图API有瑕疵,拼图时会显示一条缝隙,不影响使用。该工具切好的小图都是完整(256*256),没有白缝。
Q: 切图速度如何?
A: 非常快。普通18级的原始图片(分辨率在5120 x 5120 左右的源图),切10-18级的图片只需要1.5分钟左右,切10-19级的图片需要3分钟左右,视设备性能耗时有少许偏差。有个客户的图分辨率是 25200 × 16326,大小大致在 509 M,切图 10-22级,用了27分钟,切好后的图占了 5.66G 的硬盘。该软件对性能进行了深入优化,尽采用多线程、存内计算、以空间换时间等策略,大大减少了切图消耗的时间。
Q: 该工具支持多大的地图图片?
A: 该工具支持大于 20480 * 20480 分辨率的大图片(一般都大于200M),图片尺寸上限没测试过,理论上没有上限,但超大的图处理时要吃内存和硬盘,请预留好足够的临时空间,或拆为多个中型图片处理后再拼接。有个客户使用多张 4G-30G 的无人机航拍遥感图片,用于海岸线围垦监管比对。
Q: 支持超大图片是什么意思?
A: “支持超大图片”功能支持处理分辨率大于 20480*20480 的原始图片(一般文件都大于 200 M),一般是一些专业客户才用到的,如大面积航拍遥感图片的展示。如果只是处理景区、社区规划,一般用不到该功能。支持超大图片功能的注册费另计,可在注册窗口 》功能项中,选中 “支持超大图片” 并进行申请注册。
Q: 读取大图时报目录错误,无法保存图片?
A: (1)该程序处理大图时会在系统临时目录下生成临时文件,请用管理员身份运行该程序试一试。(2)该程序暂不支持中文操作系统账户,请用新建一个英文账户名试试。
Q: 读取超大图片或处理超大面积地图时报错?
A: 读取超大图片报错图像读取失败:unable to call VipsForeignSavePngFile wbuffer_write: write failed windows error。请尝试以下方式解决:
(1)用管理员身份运行该软件
(2)Windows 登录账户请用纯英文字符
(3)C盘请预留足够空间(50G-100G),供图片预处理用。大图切图算法是用空间换时间,加速切图效率,要预留足够的硬盘空间。如果C盘腾不出空间,请修改系统环境变量“TMP, TEMP, TMPDIR" 为其它有充足空间的硬盘(控制面板〉系统〉高级系统设置〉环境变量),并重启系统。
Q: 如何拼接多个地图?
A: 本软件已实现地图目录合并功能,可合并多个地图切片目录,并自动拼接地图切片,该功能可用于实现省市级超大地图的绘制。步骤如下: (1)把切好的分块目录(如城区a、城区b、城区c)放到一个主目录下(如城区); (2)点击主界面“合并图片目录”,选择第一步的主目录,点击“处理”按钮; (3)等待处理结束,查看合并的目录,如: 城区_merge 该功能由大图版本提供。
Q: 切图的级别如何选择?
A: 一般网页选择 14-18 级, 手机选择 15-19 级,视地图区域有浮动。20 级以上仅有少数地图服务商支持,谷歌支持到22级。Google map 缩放级别是不均匀的,某些地方的缩放级别仅为15左右,而其他地方的缩放级别则为23(或更高). 也可以考虑用三方的地图 api,如 LeafLet、MapTalks, Openlayer、Suppermap 没有做级别限制。
Q: 为什么有些切好的地图会模糊?
A: 针对提升地图清晰度的需求,该软件做了很多迭代优化:
(1)先尝试使用“高清模式”,输出512*512的切片,该模式适合手机及视网膜屏查看,地图更为清晰。
(2)确保贴图要足够清晰(如19级),避免拉伸导致切图模糊,并建议设计师提供 png/tif 格式的图片,该格式是无损压缩的,具有较高的清晰度,且具有透明通道,可以和地图底图无缝融合在一起。
(3)对于低放缩级别场合可采用另外一套低分辨率贴图。这和游戏贴图一样的原理,一般设计师提供的原图细节很丰富,压缩成小图后细节会丢失及模糊化。若要达到最好的效果,需要设计师提供一套低分辨率、去掉过细细节的图片,如14级。如果不好理解,你可以用 Photoshop 将 10000*10000 的有图有线有文字的很清晰的图片缩小到 1000*1000,你看一下会不会模糊。
(4)一般不建议在设计图中绘制文本,文本就是那种属于细节丰富的部分,压缩后就是很容易模糊的。文本建议用程序代码进行标注;
(5)该软件支持 svg 矢量图片,图片放缩始终清晰!
(6)AI 智能增清能力正在研究。
Q: 为什么输出的切片图片必须用 png,其它图片格式不行吗?
A: png 图片有半透明通道,可以将定制图片与地图地图无缝融合。如果用 jpg,定制地图周边那一圈的切块底色是有颜色的,会把地图底图覆盖住,很难看的。
Q: 自定义图层的两个坐标如何确定?
A: 本工具与其它工具相比最大的特点就是快速精准辅助定位能力。地图提供商提供的地图底图一般都是加密且扭曲的,设计图或遥感地图一般都不能与地图服务商地图精确匹配,都要微调,这是就是这个软件出现的意义。可在第二步预览窗口中:
(1)导入图层是半透明的,可调整不透明度,便于与底图进行匹配。
(2)可搜索地址快速定位。
(3)可拖动导入图左上角和右下角的锚点来调整区域范围。
(4)可拖动导入图中间的的锚点,平移导入图层。
图层如何精确匹配:
(1)通过对道路河流来进行匹配来确定位置,因为它们比较长,很容易匹配上;
(2)通过标志性建筑来定位,如立交桥、楼宇等;
(3)如果都没有,只能问设计师,让他们把地图底图也提供一下作为比对;
Q: 为什么我用别人给的坐标偏差这么大?
A: 每个地图提供商都有自己的加密和偏移机制,一个建筑在不同的地图上坐标是不一样的。故地图坐标要和对应地图服务匹配使用,不同地图提供的坐标不能混用。
Q: 该软件能根据自己的模版生成网页吗?
A: 支持。(1)在首页勾选“使用模版”并设置模版文件,最后生产阶段可根据该模版输出网页。(2)安装包目录 /templates/ 里面有几个地图的输出模板供参考。(3)模版功能支持的参数如下:
/*APIKEY*/ 地图KEY
/*CENTER*/ 区域中心点坐标
/*POINT1*/ 区域左上角坐标
/*POINT2*/ 区域右上角坐标
/*POINT3*/ 区域右小角坐标
/*POINT4*/ 区域左下角坐标
/*CENTER-LATLNG*/ 区域中心点坐标(纬度经度)
/*POINT1-LATLNG*/ 区域左上角坐标(纬度经度)
/*POINT2-LATLNG*/ 区域右上角坐标(纬度经度)
/*POINT3-LATLNG*/ 区域右小角坐标(纬度经度)
/*POINT4-LATLNG*/ 区域左下角坐标(纬度经度)
/*ZOOMDISP*/ 地图放缩级别
/*ZOOMMIN*/ 地图最小放缩级别
/*ZOOMMAX*/ 地图最大放缩级别
/*SHOWRECT*/ 是否显示矩形区域
/*NAMEFORMAT*/ 瓦片图片名模板
/*IMAGE*/ 缩略图地址
Q: 为什么生成的地图网页直接双击打开会显示不出来?
A: 有些地图网页要求在网站环境下才能运行,如 leaflet 和高德的网页。此外还有些网页需要自带梯子,如 Google 地图。
Q: 生成的地图网页在调试模式下看到好多 failed to load/ERR_FILE_NOT_FOUND 图片找不到错误?
A: 这是某些地图供应商的 API 问题,切图是完整的不影响运行。它尝试获取当前放缩比例下当前地图区域上的所有自定义图片切块,没有的就报404,但不影响地图展示。如果地图供应商 API 支持的话,可以考虑设置定制地图的坐标区域。
Q:可以做游戏地图切图吗?
A:可以。本软件对游戏地图做了优化支持,可用 leaflet 结合本工具做游戏地图。以米哈游的地图为例(分辨率为9000*9000),可在预览页面中把左上角经纬度设置为(0,0),并设置宽度为9公里,高度为9公里,即可切图,这样每米就可以对应地图中的一个像素。
https://uploadstatic.mihoyo.com/ys-obc/2021/02/24/76892539/8b089185befd5f9deec76de5fd40f225_8511148262888359032.jpeg
# History
3.9.x
* 简化首页,只留3个必选项。
* 支持 GeoTiff 图片经纬度自动定位、Exif GPS 经纬度自动定位。
* 植入 GDAL 框架。
* 百度地图支持 MapTalks 网页输出。
* 优化高德 v3 输出,支持地图图层切换。
* 实现百度地图 gl 版本,支持GL、OpenLayer、Cesium 网页输出。
* 优化 TinyBrowser,让它成为一个易用轻巧的网页编辑调试工具。
* 优化预览页面:可旋转图片预览。
* 优化预览页面:右下角显示鼠标坐标。
* 提供图片预处理工具 MapPainter,可查看、旋转、缩放、去背景色等。
3.8.x
- 支持 MapBox 框架
- 修正 maptalks、leaflet、openlayers 输出,都导出为本地文件避免cdn失效导致网页失败
- 修正百度地图,支持鼠标放缩
- 修正配置文件读取后初始定位错误的问题
- 优化微软地图预览页面,也显示当前地图的等级和中心坐标
- 优化预览页面,所有地图都不做 zoom 范围限制
- 优化预览页面,调整经纬度后,按回车键即可刷新地图页面
- 优化预览页面,可输入宽度高度,按回车键可刷新地图页面。该功能为游戏地图做了优化,可设置图片的长宽公里数,便于与实际像素匹配,便于计算游戏角色的定位。
3.7.x
- 预览窗口工具栏放置到左侧且可拖动
- 高德支持 3D 模式(v1.4)
- 简化和优化配置文件格式
- 天地图预览页面优化
- 更新 cesium 版本到 1.96
- leaflets 高德地图支持到22级别
3.6.x
- 修正百度地图偏差
- 优化预览页面,可调整图层不透明度,可调整图层锁定源图放缩比
- 支持 OpenLayer 网页输出
- 支持 Cesium 网页输出
- 其它BUG修正
3.5.x
- 支持自定义模版网页输出
3.4.x
- 支持 maptalks 网页输出
3.3.x
- 支持 leaflet 网页输出
- 支持配置读写
3.2.x
- 支持 高清地图切片输出(512*512)
- 支持 /z/x/y.png 切图路径
- 支持多版本网页输出
- 优化预览图页面,可拖拽中间的点平移选取
- 修真超大图切图时的BUG:是如果是jpg图片,现在背景色也设置为透明色(原为白色)
3.0.x
- 采用新浏览器内核,数据更快,兼容性更好
- 各种操作便利性优化
2.11.x
- 实现超大地图合并功能,可创建超大区域地图(如省市)
2.10.x
- 简化地图坐标区域设置
2.9.x
- 优化超大图处理,提升切图性能
2.8.x
- google 输出地图网页增加参数 minZoom,maxZoom,支持到22级切图
- 修正大图切图,背景色改为(255, 255, 255, 0)
- 支持地图级别 22级
- 优化超大图处理逻辑,性能大大提高
- 优化 SVG 图片处理逻辑
2.7.x
- 修正切图中异常提示的“切图中遇到异常:参数无效”
- 支持 SVG
- 支持自定义切片名称
- 支持超大图片切图(图片分辨率大于 20480 * 20480)
2.6.x
- 增加版本检测
- 完善异常捕捉,程序不崩溃
- 支持 Google Map
- 优化百度地图位置设置窗口,增加label辅助显示
- 优化地图类别展示,文本改为中文,增大行距
2020-07-02
2.5.x
- 支持 Bing Map
2020-06-30
2.4.x
- 优化预览窗口:显示半透明图片(支持百度、腾讯、高德)
- 修正地图定位窗口:查找结束后显示中心红点
- 支持天地图
- 支持高德地图
- 支持腾讯地图
1.x
- 支持百度地图
2020-05-25
# 附录:故宫数据
baidu
116.398, 39.9295
116.409, 39.9193
tencent
116.39147686767578, 39.92318118446173
116.40299185180666, 39.91298024307851
# 都是好评