gdal平面几何空间关系

2024-01-07 05:20

本文主要是介绍gdal平面几何空间关系,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

        关于平面几何的空间关系判定,gdal提供了8个函数,分别是:Intersects(相交),Equals(相等),Disjoint(不相交),Touches(接触),Crosses(交叉),Within(被包含),Contains(包含),Overlaps(重叠)。关于几种空间关系的概念,网上有许多权威解释,此处不做解释说明。本文仅研究gdal如何判定平面几何的空间关系。

        面与面        

        上图给出了一组多边形poly1~poly7,通过gdal判定poly1和其他几个多边形的空间关系,可以得到下面两张表(OP表示poly1.OP(poly*),!OP表示poly*OP(poly1)):

        线与面

        上图给出了一个多边形poly和一组线段line1~line6,通过gdal计算poly和line1~line6的空间关系,可以的到西面两张表(OP表示poly.OP(line*),!OP表示line*OP(poly)):

        点与面

        上图给出了一个多边形poly和一组点F,C,G,通过gdal计算poly和F,C,F的空间关系,得出下面两张表(OP表示poly.OP(point*),!OP表示line*OP(poly)):

        线与线

        上图给出了一组线line1~line5,通过gdal计算line1和其他线line2~line5的空间关系,得出下面两张表(OP表示line1.OP(line*),!OP表示line*OP(line)):

        点与线

        上图给出了一条线line和三个点B、C、D,通过gdal计算line和点B、C、D的空间关系,得出下面两张表(OP表示line.OP(point*),!OP表示point*OP(line)):  

        由上面的表可以得出下面的结论:

  • Intersects和Disjoint两种空间关系互斥,两个几何图形要么Intersects,要么Disjoint,并且两种空间关系对于参与运算的双方是相互的,即如果A OP B成立,那么B OP A一定成立

  • Touches,  Crosses,Within, Contains, Overlaps属于Intersects的特殊情况,Crosses、Intersects和Overlaps对于参与运算的双方是相互的,即如果A OP B成立,那么B OP A一定成立

  • Within和Contains两种位置关系不是相互的,即如果A OP B成立,那么B OP A一定不成立,但两种位置关系相反,即如果A Within B成立,那么B Contains A一定成立

  • 面与面的空间关系包括 Intersects, Disjoint, Touches, Within, Contains, Overlaps

  • 面与线的空间关系包括 Intersects, Disjoint, Touches, Crosses, Within, Contains

  • 面与点的空间关系包括 Intersects, Disjoint, Touches,  Within, Contains

  • 线与线的空间关系包括 Intersects, Disjoint, Touches, Crosses, Within, Contains

  • 线与点的空间关系包括 Intersects, Disjoint, Touches,  Within, Contains

这篇关于gdal平面几何空间关系的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!


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

相关文章

MySQL启动报错:InnoDB表空间丢失问题及解决方法

《MySQL启动报错:InnoDB表空间丢失问题及解决方法》在启动MySQL时,遇到了InnoDB:Tablespace5975wasnotfound,该错误表明MySQL在启动过程中无法找到指定的s... 目录mysql 启动报错:InnoDB 表空间丢失问题及解决方法错误分析解决方案1. 启用 inno

在Java中基于Geotools对PostGIS数据库的空间查询实践教程

《在Java中基于Geotools对PostGIS数据库的空间查询实践教程》本文将深入探讨这一实践,从连接配置到复杂空间查询操作,包括点查询、区域范围查询以及空间关系判断等,全方位展示如何在Java环... 目录前言一、相关技术背景介绍1、评价对象AOI2、数据处理流程二、对AOI空间范围查询实践1、空间查

MySQL表空间结构详解表空间到段页操作

《MySQL表空间结构详解表空间到段页操作》在MySQL架构和存储引擎专题中介绍了使用不同存储引擎创建表时生成的表空间数据文件,在本章节主要介绍使用InnoDB存储引擎创建表时生成的表空间数据文件,对... 目录️‍一、什么是表空间结构1.1 表空间与表空间文件的关系是什么?️‍二、用户数据在表空间中是怎么

CentOS7增加Swap空间的两种方法

《CentOS7增加Swap空间的两种方法》当服务器物理内存不足时,增加Swap空间可以作为虚拟内存使用,帮助系统处理内存压力,本文给大家介绍了CentOS7增加Swap空间的两种方法:创建新的Swa... 目录在Centos 7上增加Swap空间的方法方法一:创建新的Swap文件(推荐)方法二:调整Sww

Tomcat版本与Java版本的关系及说明

《Tomcat版本与Java版本的关系及说明》:本文主要介绍Tomcat版本与Java版本的关系及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Tomcat版本与Java版本的关系Tomcat历史版本对应的Java版本Tomcat支持哪些版本的pythonJ

查看Oracle数据库中UNDO表空间的使用情况(最新推荐)

《查看Oracle数据库中UNDO表空间的使用情况(最新推荐)》Oracle数据库中查看UNDO表空间使用情况的4种方法:DBA_TABLESPACES和DBA_DATA_FILES提供基本信息,V$... 目录1. 通过 DBjavascriptA_TABLESPACES 和 DBA_DATA_FILES

python安装whl包并解决依赖关系的实现

《python安装whl包并解决依赖关系的实现》本文主要介绍了python安装whl包并解决依赖关系的实现,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面... 目录一、什么是whl文件?二、我们为什么需要使用whl文件来安装python库?三、我们应该去哪儿下

Linux环境变量&&进程地址空间详解

《Linux环境变量&&进程地址空间详解》本文介绍了Linux环境变量、命令行参数、进程地址空间以及Linux内核进程调度队列的相关知识,环境变量是系统运行环境的参数,命令行参数用于传递给程序的参数,... 目录一、初步认识环境变量1.1常见的环境变量1.2环境变量的基本概念二、命令行参数2.1通过命令编程

MYSQL关联关系查询方式

《MYSQL关联关系查询方式》文章详细介绍了MySQL中如何使用内连接和左外连接进行表的关联查询,并展示了如何选择列和使用别名,文章还提供了一些关于查询优化的建议,并鼓励读者参考和支持脚本之家... 目录mysql关联关系查询关联关系查询这个查询做了以下几件事MySQL自关联查询总结MYSQL关联关系查询

POJ1269 判断2条直线的位置关系

题目大意:给两个点能够确定一条直线,题目给出两条直线(由4个点确定),要求判断出这两条直线的关系:平行,同线,相交。如果相交还要求出交点坐标。 解题思路: 先判断两条直线p1p2, q1q2是否共线, 如果不是,再判断 直线 是否平行, 如果还不是, 则两直线相交。  判断共线:  p1p2q1 共线 且 p1p2q2 共线 ,共线用叉乘为 0  来判断,  判断 平行:  p1p