gma 2 教程(二)数据操作:8.矢量数据功能逻辑架构和格式支持

news2024/9/27 19:19:00

安装 gma:pip install gma

功能逻辑架构

gma矢量数据操作类主要包括数据资源(DataSource)、矢量图层(Layer)、矢量要素(Feature),三者的示意图如下:

图 29 矢量数据组成图

矢量要素(Feature)是gma矢量数据的最小组成单元,其由一个几何体及其对应的字段构成。

矢量图层(Layer)是gma矢量数据的基础,其由一个或多个矢量要素构成。

数据资源(DataSource)由多个矢量图层组成,一般的矢量文件仅含有一个矢量图层。

gma内矢量数据功能/属性的关系结构如下图所示:

图 210 矢量数据处理功能结构图

矢量数据类型

几何形状类型

gma几何形状类型继承自OGR,但又有所不同,详细关系见下表:

gma类型解释OGR使用说明
Pointogr.wkbPoint数据中仅有一个点
Line线ogr.wkbLineString数据中仅有一条线
Polygon多边形ogr.wkbPolygon数据中仅有一个多边形
MultiPoint多点wkbMultiPoint数据中有多个点
MultiLine多线wkbMultiLineString数据中有多条线
MultiPolygon多多边形wkbMultiPolygon数据中有多个多边形

属性表数据类型

gma属性表数据类型继承自pandas,矢量创建/修改时内部与OGR进行数据交换,详细关系见下表:

pandas解释OGR
Int32/Int16/Int8/bool UInt32/UInt16/UInt8整型(≤32位)ogr.OFTInteger
Int64/UInt64长整型(64位)ogr.OFTInteger64
datetime64[ns]/datetime64[ns, tz]/timedelta[ns]日期ogr.OFTDateTime
float64/float32实数ogr.OFTReal
object字符串ogr.OFTString

矢量格式支持

矢量格式信息统计

gma继承了OGR全部的矢量数据读取支持,并按照矢量数据特征进行了归类。gft模块的VectorSummary类,完整统计了gma内所有栅格格式。

矢量格式分类统计方法

类属性说明返回值示例返回值类型格式数量
CopyableFormats可复制的格式{‘GPKG’, ‘NGW’, ‘PDF’, ‘netCDF’}set4
CreatableFormats可创建的格式{‘AmigoCloud’, ‘CARTO’, …}set47
MultiLayersFormats多图层支持的格式{‘AVCBIN’, ‘CAD’, ‘DGN’, …}set25
ReadableFormats可读取的格式{‘AVCBIN’, ‘AVCE00’, …}set60
TransformableFormats可转换的格式{‘AmigoCloud’, ‘CARTO’, …}set47
UpdatableFormats可更新的格式{‘CSV’, ‘DGN’, ‘DXF’, …}set16

示例 (查看可复制的栅格格式):

创建一个矢量格式

(一)函数简介

矢量格式控制类方法/属性统计

类功能说明类型返回值
Copyable可复制性属性str
Creatable可创建性属性str
CreationFieldDataTypes支持创建字段的数据类型属性list
CreationOptionInfo创建信息属性DataFrame
CreationOptions创建选项属性dict
Details格式详情属性dict
Extension扩展名属性str
Format格式短名称属性str
GeoReferencing地理参考可具备性属性str
LongName格式长名称属性str
MultiLayer多图层支持性属性str
SetCreationOptions设置创建选项(参数如CreationOptions,每种格式不相同)方法/
Transformable可转换性属性str
Updatable可更新性属性str
VLCOptionsogr创建选项属性list

(二)示例 (查看并修属性表编码方式)

可生成的矢量格式

格式名生成模式多矢量图层 支持属性表数据类型支持(OGR)扩展名更新支持空间参考 支持
AmigoCloud创建String/Integer/Integer64/Real
CARTO创建Integer/Integer64/Real/String/Date/DateTime/Time
CSV创建Integer/Integer64/Real/String/Date/DateTime/Time/IntegerList/Integer64List/RealList/StringList.csv
DGN创建.dgn
DXF创建.dxf
Elasticsearch创建Integer/Integer64/Real/String/Date/DateTime/Time/IntegerList/Integer64List/RealList/StringList/Binary
FlatGeobuf创建Integer/Integer64/Real/String/Date/DateTime/Binary.fgb
Geoconcept创建.gxt/.txt
GeoJSON创建Integer/Integer64/Real/String/IntegerList/Integer64List/RealList/StringList/Date/DateTime.json/.geojson
GeoJSONSeq创建Integer/Integer64/Real/String/IntegerList/Integer64List/RealList/StringList.geojsonl/.geojsons
GeoRSS创建
GML创建Integer/Integer64/Real/String/Date/DateTime/IntegerList/Integer64List/RealList/StringList.gml/.xml
GMT创建.gmt
GPKG创建/复制Integer/Integer64/Real/String/Date/DateTime/Binary.gpkg
GPSBabel创建
GPX创建.gpx
JML创建Integer/Integer64/Real/String/Date/DateTime.jml
KML创建Integer/Real/String.kml
LIBKML创建Integer/Real/String.kml/.kmz
MapML创建Integer/Integer64/Real/String/Date/DateTime/Time
Memory创建Integer/Integer64/Real/String/Date/DateTime/Time/IntegerList/Integer64List/RealList/StringList/Binary
MSSQLSpatial创建Integer/Integer64/Real/String/Date/Time/DateTime/Binary
MVT创建Integer/Integer64/Real/String.mvt/.mvt.gz/.pbf
netCDF创建/复制Integer/Integer64/Real/String/Date/DateTime.nc
NGW创建/复制Integer/Integer64/Real/String/Date/DateTime/Time
ODS创建Integer/Integer64/Real/String/Date/DateTime/Time/Binary.ods
PDF创建/复制Integer/Integer64/Real/String/Date/DateTime/Time.pdf
PostgreSQL创建Integer/Integer64/Real/String/Date/DateTime/Time/IntegerList/Integer64List/RealList/StringList/Binary
PGDump创建Integer/Integer64/Real/String/Date/DateTime/Time/IntegerList/Integer64List/RealList/StringList/Binary.sql
S57创建
Selafin创建
ESRI Shapefile创建Integer/Integer64/Real/String/Date.shp/.dbf/.shz/.shp.zip
SQLite创建Integer/Integer64/Real/String/Date/DateTime/Time/Binary/IntegerList/Integer64List/RealList/StringList.sqlite/.db
TIGER创建
VDV创建Integer/Integer64/String.txt/.x10
WAsP创建.map
XLSX创建Integer/Integer64/Real/String/Date/DateTime/Time.xlsx/.xlsm
DGNv8创建
FileGDB创建
HANA创建
IDB创建
INTERLIS 1创建

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1018803.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【JAVA-Day22】深度解析 Java 的包机制

深度解析 Java 的包机制 深度解析 Java 的包机制摘要引言一、什么是包机制1.1 包的定义1.2 包的命名规范1.3 包的声明1.4 包的导入1.5 包的访问权限1.6 包的层次结构1.7 包的目录结构 二、包的命名冲突问题三、总结参考资料 博主 默语带您 Go to New World. ✍ 个人主页—— 默…

ARM架构过程调用标准AAPCS(学习)

AAPCS是ARM架构的处理器规定的一些标准。 参数和返回值传递,对于简单的情况,输入参数由R0-R3分别用来记录第1到4个参数。当传递的参数超过4个时,就需要借助栈来保存参数。函数的返回值通常保存在R0中,若返回值为64位,…

Linux 多线程 ( 多线程概念 )

文章目录 Linux线程概念什么是线程?二级页表线程的优点线程的缺点线程异常 Linux线程概念 什么是线程? 在一个程序里的一个执行路线叫做线程 thread ),更准确的定义为:“线程是一个进程内部的控制序列"。一切进程至少有一个执行线程。…

ArcGIS Maps SDK for JavaScript系列之四:添加自定义底图

目录 Basemap类介绍Basemap类的常用属性Basemap类的常用方法 使用Basemap添加自定义底图引用Basemap引用切片图层创建一个新的Basemap对象将自定义图层应用到地图视图中引入并创建Camera对象引入并创建SceneView对象 Basemap类介绍 Basemap类是ArcGIS Maps SDK for JavaScript…

Linux:centos9的本地yum仓库配置

其实9和7的配置方法是差不多一样的,只不过你使用7的本地yum仓库里面直接挂载就可以直接把仓库位置指向挂载点 具体可以看我往期文章,但是先看完我下面的描述再去看我链接的文章才能看懂如何配置centos9的yum仓库 Linux:YUM仓库服务_鲍海超-…

Scratch游戏------打砖块(不用VIP)

打砖块游戏是一款较老的动作电子游戏。玩家操作“挡板”,让一颗不断弹来弹去的“球”击碎砖块,作为过关目标消去的“砖块”且的途中不会落到屏幕底下。 目录 1.操作说明: 2.背景: 3.挡板: 4.游戏控制: …

【算法训练-二叉树 二】【重建二叉树】依据前序与中序遍历序列重建二叉树

废话不多说,喊一句号子鼓励自己:程序员永不失业,程序员走向架构!本篇Blog的主题是【重建二叉树】,使用【二叉树】这个基本的数据结构来实现,这个高频题的站点是:CodeTop,筛选条件为&…

基于matlab实现的电磁波反射折射动态仿真

完整程序: %题目要求电场入射到xo平面 clear; clc; u04*pi*1e-7; %自由空间中的磁导率 e01e-9/(36*pi); %自由空间中的电介质常数 f1e8; %电磁波的频率 w2*pi*f; Ei5*1.41; %入射波幅度 R0.052; …

Linux: Cache 简介

文章目录 1. 前言2. 背景3. Cache 硬件基础3.1 什么是 Cache ?3.2 Cache 工作原理3.3 Cache 层级架构3.4 内存架构中各级访问速度概览3.5 Cache 分类3.6 Cache 的 查找 和 组织方式3.6.1 Cache 组织相关术语3.6.2 Cache 查找3.6.2.1 Cache 查找过程概述3.6.2.2 Cach…

函数式编程汇总

目录 一 . Lambda 表达式 实例 省略规则 二. Stream 流 案例数据准备 入门实例 调试技巧 常用操作 创建流 1. 单例集合 2. 数组 3. 双列集合 中间操作 1. filter 2. map 3. distinct 4. sorted 5. limit 7. flatMap 终结操作 1. forEach 2. count 3. max…

解决MySQL8.0本地计算机上的MySQL服务启动后停止没有报告任何错误

1.启动MySQL的错误信息如下 (1)“本地计算机上的MySQL服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止。” (2)又在PowerShell中运行"net start MySQL",服务启动失败。“MySQL 服务无法启…

27、git的安装和配置(自用简易版)

1.git的安装 安装没有什么好说的,运行安装包,一直下一步下一步,就好了 2.配置 首先配置用户名和邮箱吧 git config -global user.name "liu_liangyi"git config -global user.email 993261877qq.com配置好后可以查看一下,输入指令…

Java - LambdaQueryWrapper 的常用方法

1、查看项目中是否导入mybatisPlus的jar包 2、servie 层和实现类要集成mybatisPlus service 继承IService<> 实现类中要继承IService的实现类ServiceImpl<mapper,实体类> 3、如果想要mapper中的一些方法&#xff0c;mapper 要继承BaseMapper<实体类> 4、在实…

Nginx替代产品-Tengine健康检测

1、官网地址 官网地址&#xff1a;The Tengine Web Server 文档地址&#xff1a;文档 - The Tengine Web Server 健康检测模块&#xff1a;ngx_http_upstream_check_module - The Tengine Web Server 2、安装 下载 wget https://tengine.taobao.org/download/tengine-3.…

JAVA智慧物业源码 智慧物业系统源码

JAVA智慧物业源码 智慧物业系统源码 基于SpringBoot、Spring Security、Jwt、Vue的前后端分离的后台管理系统 编号&#xff1a;LQ8 1、系统环境 Java EE 8Servlet 3.0Apache Maven 3 2、主框架 Spring Boot 2.2.xSpring Framework 5.2.xSpring Security 5.2.x 3、持久层…

​全球人类读书会《乡村振兴战略下传统村落文化旅游设计》中国建筑出版传媒许少辉博士著作

​全球人类读书会《乡村振兴战略下传统村落文化旅游设计》中国建筑出版传媒许少辉博士著作

基于Xml方法的Bean的配置-实例化Bean的方法-构造方法

SpringBean的配置详解 Bean的实例化配置 Spring的实例化方法主要由以下两种 构造方法实例化&#xff1a;底层通过构造方法对bean进行实例化 构造方法实例化bean又分为无参方法实例化和有参方法实例化&#xff0c;在Spring中配置的<bean>几乎都是无参构造该方式&#xff…

如何把文件从本地上传云服务器

1、从服务器下载文件到本地&#xff08;如win电脑&#xff09; scp&#xff1a;命令&#xff0c; iss_train0110.33.16.2是服务器用户名&#xff0c;10.33.16.2是服务器ip&#xff0c; :是选择 /mnt/linaro/sample/sample/YOLOv8/cpp/yolov8_bmcv/yolov8_bmcv.soc&#xff1a;服…

AJAX 技术学习笔记(基础)

Asynchronous JavaScript And XML 概念&#xff1a;异步的 JavaScript 和 XML 原生 AJAX 介绍 作用&#xff1a; 和服务器进行数据交换&#xff0c;利用HTML一起代替耦合的JSP动态页面完成异步交互 同步交互和异步交互&#xff1a; 同步交互&#xff1a;客户端向服务器端发…

基于Java新枫之谷游戏攻略设计实现(源码+lw+部署文档+讲解等)

博主介绍&#xff1a;✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、Java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战✌ &#x1f345;文末获取源码联系&#x1f345; &#x1f447;&#x1f3fb; 精彩专…