当前位置: 首页 > article >正文

从零到一:利用Arcgis Pro 2.5与91卫图助手构建离线地图包(tpk/mmpk)

1. 为什么需要离线地图包在移动应用开发或者野外作业场景中网络条件往往不稳定甚至完全不可用。这时候如果应用依赖在线地图服务用户体验会大打折扣。我曾经参与过一个林业调查项目团队在深山老林里经常遇到没信号的情况提前准备好的离线地图包就成了救命稻草。离线地图包主要有两种格式tpkTile Package和mmpkMobile Map Package。简单来说tpk就像是一盒拼图里面包含了地图被切分成的小图块mmpk则更像是一个完整的地图应用除了底图还能包含业务数据这两种格式都能被ArcGIS Runtime SDK直接加载使用是移动GIS开发的标配。下面我就手把手教你如何从一张普通图片开始制作专业的离线地图包。2. 工具准备与环境搭建2.1 软件选择与安装工欲善其事必先利其器。我们需要两个核心工具91卫图助手下载卫星影像的利器支持多种地图源Arcgis Pro 2.5Esri家的新一代桌面GIS软件安装时有个小技巧Arcgis Pro对系统要求较高建议使用Windows 10/11专业版并确保显卡驱动是最新的。我曾在旧笔记本上安装时遇到显卡兼容性问题更新驱动后才解决。2.2 基础配置检查安装完成后建议先进行以下检查确认91卫图助手的缓存目录有足够空间至少20GB在Arcgis Pro中设置好临时工作目录检查Python环境是否正常Arcgis Pro自带3. 获取并处理底图数据3.1 使用91卫图助手下载影像打开91卫图助手后你会看到这样的操作流程在搜索框输入北京市定位到目标区域使用矩形选择工具框选五环范围在下载设置中关键参数这样配置影像级别14级平衡清晰度和文件大小导出设置选择单个文件边界裁剪务必勾选保存格式PNG无损压缩注意影像级别每增加1级数据量会翻4倍。一般城市用14-16级野外12-14级就够了。3.2 影像预处理技巧下载完成后建议用Photoshop检查下图片查看直方图确保没有异常色偏检查边缘是否有黑边需要裁剪确认分辨率符合预期14级约0.6米/像素4. Arcgis Pro中的地图制作4.1 创建基础工程启动Arcgis Pro后新建Map工程将PNG图片直接拖入内容面板右键图片→Properties→设置坐标系通常用WGS84 Web墨卡托这里有个常见坑点如果坐标系设置错误后续切片会报错。我建议先用Identify工具检查图片角点的经纬度是否正确。4.2 切片参数详解生成tpk时这些参数需要特别注意# 伪代码表示关键参数 params { output_location: D:/output, # 输出路径不要有中文 file_name: beijing.tpk, tile_scheme: WEB_MERCATOR, # 必须与底图坐标系一致 min_scale: 591657527, # 对应级别14 max_scale: 591657527, area_of_interest: 当前地图范围, # 务必手动确认 package_type: TPK }4.3 生成mmpk的额外配置相比tpkmmpk还支持添加业务图层如兴趣点、路线等设置初始地图范围配置书签和搜索功能建议先用测试数据生成小范围的mmpk确认功能正常后再处理全量数据。5. 高级技巧与性能优化5.1 切片策略优化通过实测我发现这些设置能显著提升性能使用Existing切片方案而非New合理设置压缩质量70-80%即可启用多线程处理在Geoprocessing选项中5.2 跨平台使用技巧生成的离线包在不同平台使用时要注意iOS端需要额外的签名步骤Android端要注意存储权限问题跨设备共享时建议用zip压缩后再传输6. 常见问题排查6.1 切片失败怎么办遇到切片失败时可以这样排查检查日志文件位置在临时目录确认磁盘空间充足尝试降低切片级别或缩小范围6.2 地图显示异常如果地图显示有问题检查坐标系是否匹配确认图片没有损坏在ArcGIS Online上验证切片方案记得第一次做离线包时我因为坐标系设错导致地图偏移了十几公里浪费了半天时间排查。现在养成了做一步检查一步的好习惯。7. 实际应用案例以某景区导航App为例用91卫图下载景区15级影像在Arcgis Pro中添加步道、景点等矢量数据生成mmpk包集成到App中测试不同缩放级别下的显示效果最终包体控制在300MB以内实现了无网络条件下的完整导航功能。游客在山区也能随时查看自己的位置和周边景点。制作离线地图包看似简单但每个环节都有需要注意的细节。从影像下载到最终打包保持耐心和细心是关键。建议初次尝试时先用小范围数据练手熟悉流程后再处理正式数据。

相关文章:

从零到一:利用Arcgis Pro 2.5与91卫图助手构建离线地图包(tpk/mmpk)

1. 为什么需要离线地图包? 在移动应用开发或者野外作业场景中,网络条件往往不稳定甚至完全不可用。这时候如果应用依赖在线地图服务,用户体验会大打折扣。我曾经参与过一个林业调查项目,团队在深山老林里经常遇到没信号的情况&…...

G-Helper:华硕笔记本用户如何告别臃肿控制软件,实现极致性能优化?

G-Helper:华硕笔记本用户如何告别臃肿控制软件,实现极致性能优化? 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting acro…...

告别Kibana臃肿!轻量级ES集群管理神器Cerebro保姆级安装教程(CentOS 7.x + Java 8)

轻量级ES集群管理神器Cerebro:CentOS 7.x环境下的高效部署指南 在Elasticsearch运维领域,资源消耗和功能实用性的平衡一直是技术团队面临的挑战。当Kibana的功能过于庞大而实际需求仅聚焦于基础集群管理时,Cerebro这款轻量级工具便成为了理想…...

终极免费时钟应用:Simple Clock如何帮你告别混乱,轻松管理每一天?[特殊字符]

终极免费时钟应用:Simple Clock如何帮你告别混乱,轻松管理每一天?🚀 【免费下载链接】Simple-Clock Combination of a beautiful clock with widget, alarm, stopwatch & timer, no ads 项目地址: https://gitcode.com/gh_m…...

YOLACT++模型训练后,如何用你的‘小模型’在真实场景中跑起来?从测试到部署的完整流程

YOLACT模型实战:从训练到部署的工业级落地指南 当你完成YOLACT模型训练后,那个躺在output文件夹里的.pth文件就像刚拿到驾照的新手——理论上已经具备上路资格,但距离成为老司机还有段距离。本文将带你跨越从训练完成到实际部署的最后一公里&…...

ClearerVoice-Studio:AI语音处理技术深度解析与实战指南

ClearerVoice-Studio:AI语音处理技术深度解析与实战指南 【免费下载链接】ClearerVoice-Studio An AI-Powered Speech Processing Toolkit and Open Source SOTA Pretrained Models, Supporting Speech Enhancement, Separation, and Target Speaker Extraction, et…...

Python 条件,循环语句详解

1、Python 条件语句Python 条件语句是通过一条或多条语句的执行结果来决定执行的代码块。Python 编程中 if 语句用于控制程序的执行。Python 不支持使用 switch 语句,所以当有多个条件判断时,只能使用 elif 来进行编程。if 语句的基本形式为:123456if (条…...

Ubuntu Rockchip完整指南:为RK3588设备快速构建定制化Ubuntu系统

Ubuntu Rockchip完整指南:为RK3588设备快速构建定制化Ubuntu系统 【免费下载链接】ubuntu-rockchip Ubuntu for Rockchip RK35XX Devices 项目地址: https://gitcode.com/gh_mirrors/ub/ubuntu-rockchip Ubuntu Rockchip是一个社区驱动的开源项目&#xff0c…...

京东购物评价自动化终极指南:告别繁琐评价,释放你的宝贵时间

京东购物评价自动化终极指南:告别繁琐评价,释放你的宝贵时间 【免费下载链接】jd_AutoComment 自动评价,仅供交流学习之用 项目地址: https://gitcode.com/gh_mirrors/jd/jd_AutoComment 还在为京东购物后堆积如山的评价任务而烦恼吗?…...

如何快速掌握SAM-HQ:从源码编译到自定义模块扩展的完整指南

如何快速掌握SAM-HQ:从源码编译到自定义模块扩展的完整指南 【免费下载链接】sam-hq Segment Anything in High Quality [NeurIPS 2023] 项目地址: https://gitcode.com/gh_mirrors/sa/sam-hq SAM-HQ(Segment Anything in High Quality&#xff0…...

Python 循环函数详细介绍

一、循环函数1、for循环for循环需要预先设定好循环的次数(n),然后执行隶属于for的语句n次。基本构造是12for 元素 in 序列: statement举例来说,我们编辑一个叫forDemo.py的文件12for a in [3,4.4,life]:print a这个循环就是每次从表[3,4.4,life] 中取出一…...

UnityStandaloneFileBrowser跨平台实战:Windows、Mac、Linux三平台兼容性深度解析

UnityStandaloneFileBrowser跨平台实战:Windows、Mac、Linux三平台兼容性深度解析 【免费下载链接】UnityStandaloneFileBrowser A native file browser for unity standalone platforms 项目地址: https://gitcode.com/gh_mirrors/un/UnityStandaloneFileBrowser…...

抖音无水印下载器技术解析:从单点突破到批量处理的全栈解决方案

抖音无水印下载器技术解析:从单点突破到批量处理的全栈解决方案 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallb…...

5步掌握FanControl:Windows智能风扇控制终极指南

5步掌握FanControl:Windows智能风扇控制终极指南 【免费下载链接】FanControl.Releases This is the release repository for Fan Control, a highly customizable fan controlling software for Windows. 项目地址: https://gitcode.com/GitHub_Trending/fa/FanC…...

Ryan Bates Dotfiles Zsh 插件系统深度解析

Ryan Bates Dotfiles Zsh 插件系统深度解析 【免费下载链接】dotfiles config files for zsh, bash, completions, gem, git, irb, rails 项目地址: https://gitcode.com/gh_mirrors/dotfiles4/dotfiles Ryan Bates 的 Dotfiles 项目为 Zsh 用户提供了一套功能丰富且高度…...

你的 Vue 路由,VuReact 会编译成什么样的 React 路由?

VuReact 是一个能将 Vue 3 代码编译为标准、可维护 React 代码的工具。今天我们从 Vue Router 宏观对照入手,看看 Vue 中的路由组件、API 与入口结构,经过 VuReact 编译后会变成什么样的 React 路由代码。 另外,本文仅展示部分路由组件与 AP…...

你的ESP32项目需要BGM?手把手教你用无源蜂鸣器做个迷你音乐盒(附《成都》《后来》等流行歌曲库)

用ESP32和无源蜂鸣器打造你的专属音乐盒:从《成都》到《后来》的完整实现指南 你是否想过给自己的智能家居项目添加一点音乐氛围?或者为机器人制作一个会唱歌的小彩蛋?ESP32开发板搭配无源蜂鸣器,就能实现这个有趣的想法。不同于简…...

华硕笔记本性能优化终极秘籍:G-Helper让你的电脑重获新生

华硕笔记本性能优化终极秘籍:G-Helper让你的电脑重获新生 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Flow, TUF, Strix,…...

AssetRipper终极指南:如何轻松提取Unity游戏资源的完整教程

AssetRipper终极指南:如何轻松提取Unity游戏资源的完整教程 【免费下载链接】AssetRipper GUI Application to work with engine assets, asset bundles, and serialized files 项目地址: https://gitcode.com/GitHub_Trending/as/AssetRipper 还在为无法获取…...

全球首份AGI跨国治理白皮书深度拆解(2026奇点大会闭门纪要首次公开)

第一章:全球首份AGI跨国治理白皮书的战略定位与历史坐标 2026奇点智能技术大会(https://ml-summit.org) 这份白皮书并非技术路线图的延伸,而是人类在通用人工智能临界点前主动构筑的第一道制度性防火墙。它诞生于2025年联合国人工智能治理特别会议框架…...

告别轮询!用ESP32的UART事件驱动开发,实现一个简易的AT指令解析器

ESP32事件驱动UART开发实战:构建高效AT指令解析框架 在物联网设备开发中,串口通信是最基础也最关键的交互方式之一。传统轮询方式虽然简单直接,但在处理多任务、高实时性要求的场景下显得力不从心。本文将带你用ESP32的UART事件驱动机制&…...

终极华硕笔记本性能控制指南:GHelper让你的ROG笔记本飞起来

终极华硕笔记本性能控制指南:GHelper让你的ROG笔记本飞起来 【免费下载链接】g-helper Lightweight, open-source control tool for ASUS laptops and ROG Ally. Manage performance modes, fans, GPU, battery, and RGB lighting across Zephyrus, Flow, TUF, Stri…...

MaaYuan:如何让游戏日常任务变得智能且高效?

MaaYuan:如何让游戏日常任务变得智能且高效? 【免费下载链接】MaaYuan 代号鸢 / 如鸢 一键长草小助手 项目地址: https://gitcode.com/gh_mirrors/ma/MaaYuan 在现代手游生态中,日常任务系统已成为玩家体验的重要组成部分,…...

如何5分钟上手VOICEVOX:免费日语语音合成终极指南

如何5分钟上手VOICEVOX:免费日语语音合成终极指南 【免费下载链接】voicevox 無料で使える中品質なテキスト読み上げソフトウェア、VOICEVOXのエディター 项目地址: https://gitcode.com/gh_mirrors/vo/voicevox VOICEVOX是一款完全免费开源的日语语音合成软…...

终极指南:如何用ShowDoc彻底改变团队文档协作

终极指南:如何用ShowDoc彻底改变团队文档协作 【免费下载链接】showdoc ShowDoc is a tool greatly applicable for an IT team to share documents online一个非常适合IT团队的在线API文档、技术文档工具 项目地址: https://gitcode.com/gh_mirrors/sh/showdoc …...

【机器人探索】基于matlab多目标灰狼算法多机器人探索【含Matlab源码 15347期】

💥💥💥💥💥💥💞💞💞💞💞💞💞💞欢迎来到海神之光博客之家💞💞💞&#x1f49…...

《QGIS快速入门与应用基础》286:数据:Landsat 8 OLI/TIRS影像(TIF格式,多波段)

作者:翰墨之道,毕业于国际知名大学空间信息与计算机专业,获硕士学位,现任国内时空智能领域资深专家、CSDN知名技术博主。多年来深耕地理信息与时空智能核心技术研发,精通 QGIS、GrassGIS、OSG、OsgEarth、UE、Cesium、OpenLayers、Leaflet、MapBox 等主流工具与框架,兼具…...

别再写冗长路径了!Qt QML资源文件管理:用前缀和别名让代码清爽3倍

别再写冗长路径了!Qt QML资源文件管理:用前缀和别名让代码清爽3倍 在QML项目开发中,资源路径管理是个容易被忽视却影响深远的细节。想象一下,当你第20次在代码中敲入source: "images/images/code.jpg"时,是否…...

VisualCppRedist AIO:一站式解决Windows应用依赖问题的终极指南

VisualCppRedist AIO:一站式解决Windows应用依赖问题的终极指南 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist VisualCppRedist AIO是微软Visual C运…...

watchfiles性能优化指南:7个关键参数配置技巧

watchfiles性能优化指南:7个关键参数配置技巧 【免费下载链接】watchfiles Simple, modern and fast file watching and code reload for Python, written in Rust 项目地址: https://gitcode.com/gh_mirrors/wa/watchfiles watchfiles是一款用Rust编写的现代…...