当前位置: 首页 > news >正文

postgis ST_ClipByBox2D用法

官方文档

概述

geometry ST_ClipByBox2D(geometry geom, box2d box);

描述

以快速且宽松但可能无效的方式通过 2D 框剪切几何体。 拓扑上无效的输入几何图形不会导致抛出异常。 不保证输出几何图形有效(特别是,可能会引入多边形的自相交)。

这个函数是由 GEOS 模块执行的。

可用性:2.2.0

示例

-- Rely on implicit cast from geometry to box2d for the second parameter
SELECT ST_ClipByBox2D(geom, ST_MakeEnvelope(0,0,10,10)) FROM mytab;

解读:

有2个参数,第1个是目标几何对象数据,第2个是裁剪框。返回裁剪内容(相交部分)。

需要注意的是,返回结果不保证输出几何图形有效。

裁剪框三种情况:

  • 裁剪框是点:返回NULL数据。因为点不构成最小矩阵。
  • 裁剪框是线:把线转换成最小矩阵,然后对比目标数据进行裁剪。
  • 裁剪框是多边形:可直接对比目标数据进行裁剪

返回值有三种

  • NULL—裁剪框是点
  • 空值—没有相交部分
  • 几何对象—相交的部分

我画了张图,应该就比较清晰了。 

举例说明

SELECT  ST_GeomFromText('POLYGON ((1 3,2 4,4 4,4 3,1 3))',4326) as "裁剪框",
'POLYGON ((1 5, 5 5, 5 1, 1 1, 1 5))'::geometry as "数据库数据",
ST_ClipByBox2D('POLYGON ((1 5, 5 5, 5 1, 1 1, 1 5))'::geometry, ST_GeomFromText('POLYGON ((1 3,2 4,4 4,4 3,1 3))',4326)) as "相交部分"

 1、裁剪框

2、目标数据

 3、裁剪数据(相交)

通过三张图可以发现,图1和图2是箱体里面,因为图1在图2中是个长方形,图2就是相交数据。 

此功能类似arcgis的裁剪功能,比arcgis裁剪弱一些,因为看不到属性信息。

http://www.lryc.cn/news/208813.html

相关文章:

  • 【MyBatis Plus】深入探索 MyBatis Plus 的条件构造器,自定义 SQL语句,Service 接口的实现
  • 基于AI与物联网技术的智能视频监控系统架构剖析
  • mysql 基础知识
  • Flink CDC 2.0 主要是借鉴 DBLog 算法
  • win10 + VS2017 编译libjpeg(jpeg-9b)--更新
  • 使用pycharm远程调试
  • rust学习
  • GCC、g++、gcc的关系
  • IP应用场景API的反欺诈潜力:保护在线市场不受欺诈行为侵害
  • 常用的主流音乐编曲软件有哪些?
  • 面试题:为什么HashMap 使用的时候指定容量?
  • 基于C/C++的UG二次开发流程
  • “第五十二天”
  • Lvs+Nginx+NDS
  • JavaWeb——Servlet原理、生命周期、IDEA中实现一个Servlet(全过程)
  • Android 12.0 ota升级之SettingsProvider新增和修改系统数据相关功能实现
  • python---for循环结构中的else结构(是同级关系)
  • XLua中lua读写cs对象的原理
  • 新手小白怎么选择配音软件?
  • linux查看硬件信息命令
  • TSINGSEE青犀省级高速公路视频上云联网方案:全面实现联网化、共享化、智能化
  • 知识图谱相关的操作
  • 【Javascript】json
  • 零资源的大语言模型幻觉预防
  • 智能终端界面自动化测试操作工具 - Appium常见用法
  • 结构体数组经典运用---选票系统
  • code too large
  • vue中把弹出层.vue文件注册成组件供其他.vue文件调用的写法
  • mac 查看GPU使用
  • 工业4.0的安全挑战与解决方案