来自:http://blog.csdn.net/arcgis_mobile/article/details/8048549

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文件了。

 
2

arcgis 3种方法快速制作tpk文件(转)的更多相关文章

  1. 3种方法快速制作tpk文件 [转]

    tpk是ArcGIS10.1推出的一种新的数据文件类型,主要是用于将切片文件打包形成离线地图包,tpk可以在ArcGIS Runtime或者ArcGIS for Android/iOS中作为切片底图被 ...

  2. win10系统U盘读取不了怎么解决 三种方法快速解决&quot;文件或目录损坏且无法读取& 发布时间:2020-06-05 09:19:46 作者:佚名 我要评论

    win10系统U盘读取不了怎么解决 三种方法快速解决"文件或目录损坏且无法读取&   发布时间:2020-06-05 09:19:46   作者:佚名    我要评论 win10电脑 ...

  3. 两种方法上传本地文件到github

    https://www.jianshu.com/p/c70ca3a02087 自从使用github以来,一直都是在github网站在线上传文件到仓库中,但是有时因为网络或者电脑的原因上传失败.最重要的 ...

  4. 两种方法上传本地文件到github(转)

    自从使用github以来,一直都是在github网站在线上传文件到仓库中,但是有时因为网络或者电脑的原因上传失败.最重要的原因是我习惯本地编辑,完成以后再一起上传github.看过了几个教程,总结出最 ...

  5. 四种方法获取可执行程序的文件路径(.NET Core / .NET Framework)

    原文:四种方法获取可执行程序的文件路径(.NET Core / .NET Framework) 本文介绍四种不同的获取可执行程序文件路径的方法.适用于 .NET Core 以及 .NET Framew ...

  6. 【转】Linux 中清空或删除大文件内容的五种方法(truncate 命令清空文件)

    原文: http://www.jb51.net/article/100462.htm truncate -s 0 access.log -------------------------------- ...

  7. 5种方法获取url中文件的扩展名

    /** * strrchr - 查找指定字符在字符串中的最后一次出现 * strrpos — 计算指定字符串在目标字符串中最后一次出现的位置 * end — 将数组的内部指针指向最后一个单元 * pa ...

  8. k.tt 研究下生成的逻辑代码:从壹开始前后端分离 [.netCore 填坑 ] 三十二║ 四种方法快速实现项目的半自动化搭建

    更新 1.更新小伙伴 @大龄Giser 提出好点子:试试VS的插件扩展:VSIX.ItemProject等,将T4模板给制作插件,这里先记下,有懂的小伙伴可以自己先试试,我会在以后更新. 2.感谢小伙 ...

  9. C#读取资源文件的两种方法及保存资源文件到本地

    方法1 GetManifestResourceStream   VB.NET中资源的名称为:项目默认命名空间.资源文件名 C#中则是:项目命名空间.资源文件所在文件夹名.资源文件名 例如:istr = ...

随机推荐

  1. rdlc报表函数

    字符串函数 使用串联运算符和      Visual Basic 常量可将多个字段组合在一起.以下表达式返回两个字段,它们分别位于同一文本框的不同行中: 复制代码 =Fields!FirstName. ...

  2. Ubuntu16.04安装视觉SLAM环境(OpenCV)

    一.安装依赖库 sudo apt-get install build-essential sudo apt--dev pkg-config libavcodec-dev libavformat-dev ...

  3. 【GIS新探索】算法实现在不规则区域内均匀分布点

    1 概要 在不规则区域内均匀分布点,这个需求初看可能不好理解.如果设想一下需求场景就比较简单了. 场景1:在某个地区范围内,例如A市区有100W人口,需要将这100W人口在地图上面相对均匀的标识出来. ...

  4. dubbo服务引用与集群容错

    服务引用无非就是做了两件事 将spring的schemas标签信息转换bean,然后通过这个bean的信息,连接.订阅zookeeper节点信息创建一个invoker 将invoker的信息创建一个动 ...

  5. Hadoop2.5.0伪分布式环境搭建

    本章主要介绍下在Linux系统下的Hadoop2.5.0伪分布式环境搭建步骤.首先要搭建Hadoop伪分布式环境,需要完成一些前置依赖工作,包括创建用户.安装JDK.关闭防火墙等. 一.创建hadoo ...

  6. C#中子类和父类

    在实例化子类的时候,总是先调用父类的无参构造函数

  7. Linux 命令 su 和 sudo 比较

    su : 可以用来切换到任何用户,但是要求输入目标用户的密码 比如:su - su - root (等价 su -) su - user su root 与 su - root 的区别在于,后者不切换 ...

  8. 解决: selenium webdriver unable to find Mozilla geckodriver

    1 安装 sudo apt-get install libqt4-dev libqtwebkit-dev 2 gem install capybara-webkit 3 在rails-helper.r ...

  9. python pip 安装OpenCV

    cmd pip install opencv-contrib-python -i https://pypi.mirrors.ustc.edu.cn/simple/

  10. Hive初始

    一.Hive概念 二.为什么要是用Hive 三.Hive优缺点 四.hive架构 一.Hive概念 Hive最初是应Facebook每天产生的海量新兴社会网络数据进行管理和机器学习的需求而产生和发展的 ...