3种方法快速制作tpk文件 [转]
tpk是ArcGIS10.1推出的一种新的数据文件类型,主要是用于将切片文件打包形成离线地图包,tpk可以在ArcGIS Runtime或者ArcGIS for Android/iOS中作为切片底图被加载,有多种制作tpk的方法,分别如下:
使用ArcMap制作tpk
在ArcGIS10.1中tpk的生成被集成在了ArcGIS for Desktop中,制作方法如下:
1、打开ArcMap,将数据加载进来,选择菜单Customize-》ArcMap Options,在弹出的对话框中选择“sharing”选项卡,勾选“Enable ArcGIS Runtime Tools”;
2、此时,在File文件菜单中的“share as…”菜单下就多了一个选项“Tile Package…”,选择该菜单,弹出“Tile Package”对话框,设置各个标签页中的参数,基本都和发布ArcGIS for Server地图服务时的参数相同,填写完成后点击“Analyze”,如果报错则根据错误提示重新修改各个参数,最后点击Share,开始制作tpk文件:
使用GP工具制作tpk
另外一种方法是直接通过GP工具完成tpk的制作。
选择“ArcToolbox”-》“Data Management Tools ”-》“Create Map Tile Package”,如下:
运行该GP工具,弹出如下对话框:
选择要制作tpk的地图文档mxd,指定tpk保存的位置,切片格式默认使用PNG,级别根据需要设置,点击“ok“即可完成的tpk制作。
使用已有的紧凑型切片制作tpk
1、Tpk文件的组成
tpk文件其实是一个zip文件,通过解压缩Tpk文件,我们可以得到tpk文件的内部结构,由esriinfo和V101两个文件夹组成,如下图:
其中,"Trchive"可以替换为你自己项目中的实际名称,其它文件夹名称或文件名称均不能更改。thumbnail文件夹中存放的是切片的一个缩略图,其余文件是描述文件或者说是tpk文件的配置信息文件,尽管有一个文件的后缀名pkinfo,都是XML结构的;V101文件夹中就是我们熟悉的紧凑型切片数据和一个.layer文件。
熟悉了tpk的结构,制作tpk数据集就容易了,先按照其组成在项目文件夹下新建两个目录esriinfo和V101,之后制作其它文件,我们需要制作的文件共有四个:一个缩略图,两个描述文件,以及一个layer文件。
2、制作thumbnail(缩略图)
为切片制作一个200×133大小,格式为png的缩略图,并保存至esriinfo目录下的thumbnail文件夹下(在实际过程中,没这个文件也是可以的)。
3、生成item.pkinfo文件
在esriinfo目录下新建文件item.pkinfo,文件内容如下,红色部分需修改(其实 Culture='zh-CN'这个也可以修改,不同的国家这个是不一样的,因为我们都在中国,所以这个我就略过了):
<?xml version="1.0"encoding="utf-8" ?>
<?xml-stylesheettype="text/xsl"
href="http://www.arcgisonline.com/home/pkinfostylesheet.xsl"?>
<pkinfo Culture='zh-CN'>
<ID>F24BC58B-F4A6-4414-921D-B762DE9545F3</ID>
<name>Test</name>
<version>10.1Pre-release</version>
<size>-1</size>
<created></created>
<type>Tile Package</type>
<servable>false</servable>
<packagelocation></packagelocation>
<pkinfolocation></pkinfolocation>
</pkinfo>
4、生成iteminfo.xml文件
在esriinfo目录下新建文件iteminfo.xml,文件内容如下,红色部分必须修改,蓝色部分为一些描述信息,可随意填写:
<?xml version="1.0"encoding="utf-8" ?>
<ESRI_ItemInformationCulture='zh-CN'>
<name>Test</name>
<guid>F24BC58B-F4A6-4414-921D-B762DE9545F3</guid>
<catalogpath></catalogpath>
<snippet>Test</snippet>
<description>Test</description>
<summary>Test</summary>
<title>Test</title>
<tags>Test</tags>
<type>Tile Package</type>
<typekeywords>
<typekeyword>TilePackage</typekeyword>
<typekeyword>ArcGISRuntime</typekeyword>
<typekeyword>.tpk</typekeyword>
</typekeywords>
<thumbnail>thumbnail/thumbnail.png</thumbnail>
<documentation></documentation>
<url></url>
<datalastmodifiedtime></datalastmodifiedtime>
<extent>
<xmin>-179.999999999987</xmin>
<ymin>-86.3842826037127</ymin>
<xmax>179.999999999987</xmax>
<ymax>86.3842826106563</ymax>
</extent>
<spatialreference>WGS_1984_Web_Mercator_Auxiliary_Sphere</spatialreference>
<accessinformation></accessinformation>
<licenseinfo></licenseinfo>
</ESRI_ItemInformation>
Tips:可能你已经注意到,这两个配置文件中,红色部分的<name>和<guid>标签的值是一样的,对,它们的值必须一一对应,name为.mxd的名字,guid则是全球唯一标识号,可使用一些软件自动生成。关于guid的生成网络上有很多介绍,在此不赘述。
5、制作layer文件
打开ArcMap,添加切片文件到ArcMap中,设置文档保存属性为相对路径,将添加的切片图层另存为layer文件,同时,将生成的切片文件和layer文件拷贝至V101目录下。
6、打包为tpk
将整个项目目录打包为zip,打包时选择存储。将文件后缀名更改为tpk就得到我们所需要的tpk文件了。
3种方法快速制作tpk文件 [转]的更多相关文章
- arcgis 3种方法快速制作tpk文件(转)
来自:http://blog.csdn.net/arcgis_mobile/article/details/8048549 tpk是ArcGIS10.1推出的一种新的数据文件类型,主要是用于将切片文件 ...
- win10系统U盘读取不了怎么解决 三种方法快速解决"文件或目录损坏且无法读取& 发布时间:2020-06-05 09:19:46 作者:佚名 我要评论
win10系统U盘读取不了怎么解决 三种方法快速解决"文件或目录损坏且无法读取& 发布时间:2020-06-05 09:19:46 作者:佚名 我要评论 win10电脑 ...
- 两种方法上传本地文件到github
https://www.jianshu.com/p/c70ca3a02087 自从使用github以来,一直都是在github网站在线上传文件到仓库中,但是有时因为网络或者电脑的原因上传失败.最重要的 ...
- 两种方法上传本地文件到github(转)
自从使用github以来,一直都是在github网站在线上传文件到仓库中,但是有时因为网络或者电脑的原因上传失败.最重要的原因是我习惯本地编辑,完成以后再一起上传github.看过了几个教程,总结出最 ...
- 四种方法获取可执行程序的文件路径(.NET Core / .NET Framework)
原文:四种方法获取可执行程序的文件路径(.NET Core / .NET Framework) 本文介绍四种不同的获取可执行程序文件路径的方法.适用于 .NET Core 以及 .NET Framew ...
- 【转】Linux 中清空或删除大文件内容的五种方法(truncate 命令清空文件)
原文: http://www.jb51.net/article/100462.htm truncate -s 0 access.log -------------------------------- ...
- 5种方法获取url中文件的扩展名
/** * strrchr - 查找指定字符在字符串中的最后一次出现 * strrpos — 计算指定字符串在目标字符串中最后一次出现的位置 * end — 将数组的内部指针指向最后一个单元 * pa ...
- k.tt 研究下生成的逻辑代码:从壹开始前后端分离 [.netCore 填坑 ] 三十二║ 四种方法快速实现项目的半自动化搭建
更新 1.更新小伙伴 @大龄Giser 提出好点子:试试VS的插件扩展:VSIX.ItemProject等,将T4模板给制作插件,这里先记下,有懂的小伙伴可以自己先试试,我会在以后更新. 2.感谢小伙 ...
- C#读取资源文件的两种方法及保存资源文件到本地
方法1 GetManifestResourceStream VB.NET中资源的名称为:项目默认命名空间.资源文件名 C#中则是:项目命名空间.资源文件所在文件夹名.资源文件名 例如:istr = ...
随机推荐
- Mono下的WCF的Bug?
最近一段时间,一直在折腾Mono,折腾Linux.让我无比痛苦的是Mono下的WCF的坑真的是太多了,这不又遇到了一个莫名其妙的问题. 环境:mono 3.2.1,Jexus 5.4.3,OS Cen ...
- centos 7 安装mono 和 monodevelop
本次所有操作在root模式下 1.执行 rpm --import "http://keyserver.ubuntu.com/pks/lookup?op=get&search=0x3 ...
- “前.NET Core时代”如何实现跨平台代码重用 ——源文件重用
微软在2002年推出了第一个版本的 .NET Framework,这是一个主要面向Windows 桌面(Windows Forms)和服务器(ASP.NET Web Forms)的基础框架.在此之后, ...
- Microsoft Azure Web Sites应用与实践【4】—— Microsoft Azure网站的“后门”
Microsoft Azure Web Sites应用与实践 系列: [1]—— 打造你的第一个Microsoft Azure Website [2]—— 通过本地IIS 远程管理Microsoft ...
- ARM的栈指令
ARM的指令系统中关于栈指令的内容比较容易引起迷惑,这是因为准确描述一个栈的特点需要两个参数: 栈地址的增长方向:ARM将向高地址增长的栈称为递增栈(Descendent Stack),将向低地址增长 ...
- a different object with the same identifier value was already associated with the session:
hibernate操作: 实例化两个model类,更新时会提示 a different object with the same identifier value was already assoc ...
- Centos6.5中安装和配置vsftp详细总结
一.vsftp安装篇 #查看是否安装:rpm -qa|grep vsftpd#卸载vsftpdrpm -e vsftpd-2.2.2-11.el6_3.1x86_64 --nodeps# 安装vsft ...
- SSH框架整合(代码加文字解释)
一.创建数据库并设置编码. A) create database oa default character set utf8. 二.MyEclipse工程 A) 在Myeclipse里创建web工程, ...
- Atitit 数据存储视图的最佳实际best practice attilax总结
Atitit 数据存储视图的最佳实际best practice attilax总结 1.1. 视图优点:可读性的提升1 1.2. 结论 本着可读性优先于性能的原则,面向人类编程优先于面向机器编程,应 ...
- 使用 Arrays 类操作 Java 中的数组
Arrays 类是 Java 中提供的一个工具类,在 java.util 包中.该类中包含了一些方法用来直接操作数组,比如可直接实现数组的排序.搜索等(关于类和方法的相关内容在后面的章节中会详细讲解滴 ...