shapefile文件格式说明
shapefile
是一种用于存储地理要素的几何位置和属性信息的非拓扑简单格式,可以用于表达点、线、面、多点、多线、多面等地理要素格式,并不存储拓扑数据。它是Esri
公司开发出的用于实现SFS
简单要素模型的一种文件格式。
尽管它的名字看起来仅表示一个文件,但实际上,一个shapefile
至少包含三个基础文件: .shp、.dbf和.shx 。为了使它们联系彼此,它们的名字必须相同,必须在同一文件夹里出现。
1 .shp
文件
用于存储要素空间位置信息,其中每个记录用其顶点列表描述一个形状;
该主文件具有100bytes的固定长度头文件,含有17个字段,共100个字节,其中包含九个4字节(32位有符号整数,int32)整数字段,紧接着是八个8字节(双精度浮点数)有符号浮点数字段:
Bytes | Type | Endianness | Usage |
---|---|---|---|
0–3 | int32 | big | File code (always hex value 0x0000270a) |
4–23 | int32 | big | Unused; five uint32 |
24–27 | int32 | big | File length (in 16-bit words, including the header) |
28–31 | int32 | little | Version |
32–35 | int32 | little | Shape type (see reference below) |
36–67 | double | little | Minimum bounding rectangle (MBR) of all shapes contained within the dataset; four doubles in the following order: min X, min Y, max X, max Y |
68–83 | double | little | Range of Z; two doubles in the following order: min Z, max Z |
84–99 | double | little | Range of M; two doubles in the following order: min M, max M |
然后该文件包含任意数量的可变长度记录。每条记录都有一个8字节的记录头:
Bytes | Type | Endianness | Usage |
---|---|---|---|
0–3 | int32 | big | Record number (1-based) |
4–7 | int32 | big | Record length (in 16-bit words) |
接下来是存储的实际数据:
Bytes | Type | Endianness | Usage |
---|---|---|---|
0–3 | int32 | little | Shape type (see reference below) |
4– | – | – | Shape content |
长度可变的记录内容取决于形状类型,形状类型必须是文件头中给定的形状类型或Null。以下是可能的形状类型:
Value | Shape type | Fields |
---|---|---|
0 |
Null shape
|
None |
1 |
Point
|
X, Y |
3 |
Polyline
|
MBR, Number of parts, Number of points, Parts, Points |
5 |
Polygon
|
MBR, Number of parts, Number of points, Parts, Points |
8 |
MultiPoint
|
MBR, Number of points, Points |
11 |
PointZ
|
X, Y, Z Optional: M |
13 |
PolylineZ
|
Mandatory: MBR, Number of parts, Number of points, Parts, Points, Z range, Z array Optional: M range, M array |
15 |
PolygonZ
|
Mandatory: MBR, Number of parts, Number of points, Parts, Points, Z range, Z array Optional: M range, M array |
18 |
MultiPointZ
|
Mandatory: MBR, Number of points, Points, Z range, Z array Optional: M range, M array |
21 |
PointM
|
X, Y, M |
23 |
PolylineM
|
Mandatory: MBR, Number of parts, Number of points, Parts, Points Optional: M range, M array |
25 |
PolygonM
|
Mandatory: MBR, Number of parts, Number of points, Parts, Points Optional: M range, M array |
28 |
MultiPointM
|
Mandatory: MBR, Number of points, Points Optional Fields: M range, M array |
31 |
MultiPatch
|
Mandatory: MBR, Number of parts, Number of points, Parts, Part types, Points, Z range, Z array Optional: M range, M array |
2 .dbf
文件
用于存储要素的非空间属性信息,其中每个地理要素使用一个记录,属性和位置信息通过记录号一对一对应,所以 .dbf 文件和 .shp 文件的记录顺序必须相同
3 .shx
文件
存储索引信息,文件中每个记录包含对应的 .shp 文件记录距离 .shp 文件的初始位置的偏移量。
索引文件首先包含与 .shp 文件相同的100字节头,后跟任意数量的8字节定长记录,由以下两个字段组成:
Bytes | Type | Endianness | Usage |
---|---|---|---|
0–3 | int32 | big | Record offset (in 16-bit words) |
4–7 | int32 | big | Record length (in 16-bit words) |
它记录每一个几何体在 .shp 文件之中的位置ID,从而能够加快向前或向后搜索一个几何体的效率。
*最后值得一提的是在一个shapefile中只能定义一种集合类型。
shapefile文件格式说明相关推荐
- Shapefile文件读取-文件头
1 介绍 在Shapefile文件格式介绍一文中我们介绍了shapefile文件的结构组成,本文主要介绍如何读取shapefile文件头部分,使用的语言是c++. 2 文件头结构 Shapefile文 ...
- java gis 矢量数据结构_地理信息系统矢量数据结构.ppt
地理信息系统矢量数据结构 * Shapefile技术描述 :/library/whitepapers/pdfs/shapefile.pdf Shapefile文件格式分析 收藏 Shapefile文件 ...
- Android高德地图加载WMS服务应用实践
效果图(灰色两块为自定义瓦片): 需求:在Android高德地图上需要加载wms服务,用于显示自己绘制的瓦片地图. 由于需要在指定的位置添加一小块瓦片地图,所以在制作瓦片地图时需要参照高德地图底图作为 ...
- 利用Multigen Creator构建地形三维模型(CAD地形图--三维模型)
(以前做过地形建模方面的经验分享给大家,是从我研一交的一篇当做期末作业的文章中节选的,初始数据为1:2000cad地形图,文中主要介绍从等高线到地形模型的几个关键步骤) 3 基于Creator的地形 ...
- 【典型案例】RapidEye Mosaics影像管理模式
RapidEye卫星星座为德国所有的商用卫星,2008年8月29日,RapidEye 5颗对地观测卫星已成功发射升空,目前运行状况良好. RapidEye与Esri合作建成RapidEye Mosai ...
- ArcMap:第一届全国大学生GIS应用技能大赛(滁州学院)详解-上午题
目录 01 上午题 1.1 题目 1.2 数据 1.2.1 如何添加比赛数据? 1.2.2 比赛数据展示 1.3 思路 1.3.1 坐标系问题 1.4 实操 1.4.1 建立空间数据库和比赛数据 ...
- GeoTools——读取shapefile数据
目录 一.引言 二.代码操作 1.服务端 2.返回数据 3.客户端 三.总结 一.引言 GeoTools在开源gis世界中使用极为常见,地位类比于arcgis中的arcgis engine,当我们要使 ...
- Shape 文件格式解释
ESRI Shapefile(shp)是Esri公司开发的空间数据开放格式. 该文件格式已经成为了地理信息软件界的一个开放标准,成为一个非常重要的交换数据格式,基本上所有的GIS软件都支持Shapef ...
- GeoServer学习笔记-2、基本使用(发布shapefile文件)
一.shapefile文件 ESRI Shapefile(shp),或简称shapefile,是美国环境系统研究所公司(ESRI)开发的一种空间数据开放格式,用于描述几何体对象:点,折线与多边形,仅仅 ...
- 打开Shapefile文件的正确方式
打开Shapefile文件的正确方式 作者:阿振 邮箱:tanzhenyugis@163.com 博客:https://blog.csdn.net/theonegis/article/details/ ...
最新文章
- call(),apply()和bind()的详解使用:
- SpringFlux入门(上篇)
- 百练OJ:2767:简单密码
- Jquery的动态创建DOM元素
- 【C++ Primer】 神秘的 sizeof(union) 、sizeof(struct) 和内存对齐技术
- HDU 4946 Area of Mushroom 凸包 第八次多校
- MFC窗口最小化到托盘
- Win7允许/禁用 PING命令
- php中几个数组函数array_slice() array_filter array_unique() in_array()
- java class类
- atheros ar9285 wireless network Adaper设备的驱动器正防止机器进入待机状态
- AttributeError: module ‘win32com.gen_py.00020905-0000-0000-C000-000000000046x0x8x7‘ has no attribute
- 我的世界服务器总是显示错误,win 10 进mc服务器总是错误 怎么办
- c#怎么设置winform中dgv的表头边框线
- 关于移动硬盘插入后无显示的问题
- Hive通过-f调用sql文件并进行传参
- intel rst linux 驱动下载,下载:Intel RST存储驱动10.1.2.1004
- python bind绑定失败_Python tkinter之Bind(绑定事件)的使用示例
- mapUnderscoreToCamelCase作用- 开启驼峰
- JDK8 下载与安装教程,超简单版(Windows)