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

网站备案法律福田住房和建设局网站

网站备案法律,福田住房和建设局网站,经常修改网站的关键词好不好,wordpress logo 编辑官方文档 概要 geometry ST_CoverageInvalidEdges(geometry winset geom, float8 tolerance 0); 描述 一个窗口函数,用于检查窗口分区中的多边形是否形成有效的多边形覆盖范围。 它返回线性指示器,显示每个多边形中无效边(如果有&#x…

官方文档

概要

geometry ST_CoverageInvalidEdges(geometry winset geom, float8 tolerance = 0);

描述

一个窗口函数,用于检查窗口分区中的多边形是否形成有效的多边形覆盖范围。 它返回线性指示器,显示每个多边形中无效边(如果有)的位置。

如果满足以下条件,则一组有效多边形是有效的覆盖范围:

  • Non-overlapping-多边形不重叠(它们的内部不相交)

  • Edge-Matched-沿共享边的顶点相同

作为窗口函数,为每个输入多边形返回一个值。 对于违反一个或多个有效性条件的多边形,返回值是包含有问题边的 MULTILINESTRING。 覆盖范围有效的面返回值 NULL。 非多边形或空几何图形也会产生 NULL 值。

只要周围的多边形边缘匹配,这些条件就允许有效的覆盖范围包含孔(多边形之间的间隙)。 然而,非常窄的间隙通常是不希望的。 如果使用非零距离指定公差参数,则形成较窄间隙的边缘也将被返回为无效。

正在检查覆盖范围有效性的多边形也必须是有效的几何图形。 这可以使用ST_IsValid 进行检查。

可用性:3.4.0

需要GEOS >= 3.12.0

由重叠和不匹配顶点引起的无效边

WITH coverage(id, geom) AS (VALUES(1, 'POLYGON ((10 190, 30 160, 40 110, 100 70, 120 10, 10 10, 10 190))'::geometry),(2, 'POLYGON ((100 190, 10 190, 30 160, 40 110, 50 80, 74 110.5, 100 130, 140 120, 140 160, 100 190))'::geometry),(3, 'POLYGON ((140 190, 190 190, 190 80, 140 80, 140 190))'::geometry),(4, 'POLYGON ((180 40, 120 10, 100 70, 140 80, 190 80, 180 40))'::geometry)
)
SELECT id, ST_AsText(ST_CoverageInvalidEdges(geom) OVER ())FROM coverage;id |               st_astext
----+---------------------------------------1 | LINESTRING (40 110, 100 70)2 | MULTILINESTRING ((100 130, 140 120, 140 160, 100 190), (40 110, 50 80, 74 110.5))3 | LINESTRING (140 80, 140 190)4 | null

解析:

这个方法有2个功能。

  • 1、检测多边形集合是否有效。
  • 2、把多边形集合无效(例如相交、重叠)的部分给依次列举出来。

返回值

  • 1、返回几何对象
  • 2、返回NULL(没有相交) 

我把数据插入到表中。因为最终使用都会在表中使用。

  --新建表create table t2(id serial primary key,geom geometry(POLYGON,4326))--插入数据insert into t2 values(1, 'POLYGON ((10 190, 30 160, 40 110, 100 70, 120 10, 10 10, 10 190))'::geometry),(2, 'POLYGON ((100 190, 10 190, 30 160, 40 110, 50 80, 74 110.5, 100 130, 140 120, 140 160, 100 190))'::geometry),(3, 'POLYGON ((140 190, 190 190, 190 80, 140 80, 140 190))'::geometry),(4, 'POLYGON ((180 40, 120 10, 100 70, 140 80, 190 80, 180 40))'::geometry)

我把示例中的4条数据插入到了数据库,下图是4条数据的集合。

举例说明

数据可视化

你会发现,有些多边形有重叠的部分,我们把数据在详细展开。拿id=1和id=2为例。

数据分析

通过数据可视化我们发现,id=1和id=2的数据有相交的,对于多边形数组来说是无效的。

则一组有效多边形是有效的覆盖范围:

  • Non-overlapping-多边形不重叠(它们的内部不相交)

  • Edge-Matched-沿共享边的顶点相同

 相交抛分

通过查询,我们可以得到id=1和id=2相交的部分。

  select id,geom,ST_AsText(ST_CoverageInvalidEdges(geom) OVER ()),ST_GeomFromText(ST_AsText(ST_CoverageInvalidEdges(geom) OVER ()),4326)from t2 where id=1 or id=2

  • 图1是第1条数据相交部分
  • 图2是第2条数据相交部分

 如果数据集合没有相交,则会返回NULL。见下图。

 id=4的数据与前面2条数据不相交,所以通过函数返回NULL。

场景

本函数适用于校验多边形是否有效,并返回错误的几何的位置,有助于去辨别修改。

ST_IsValid函数只是判定是否有效,且不能鉴别定位。

http://www.yayakq.cn/news/391485/

相关文章:

  • 吉林省住房和城乡建设厅网站6wordpress文章图片显示不出
  • 自己做网站的二维码art2008cms网站开发
  • 做网站公司费用用凡科网建设的网站
  • 网站建网站建站现在推广网站最好的方式
  • 网站后台如何上传图片微信网站开发服务外包
  • 关键词与网站标题关键词seo排名优化
  • 企业网站都是静态的吗wordpress 编辑页脚
  • 怎么做旅游网站中天建设集团有限公司电话号码
  • 徐州网站建设公司哪个好做网站的自我介绍
  • 网站建设规划方案.ppt成全视频在线观看免费高清动漫
  • 阿里巴巴建设网站服饰 公司 网站建设
  • 靖江网站建设众筹插件 wordpress
  • 查网站开发语言php创建网页
  • 一个网站有多大深圳网站建设费用大概多少
  • 高端网站的设计开发公司搜索引擎排名优化公司
  • 哪里建网站性价比高网站建设的背景及意义
  • 做织带的网站设计网站建设价格
  • 做一套二级域名网站怎么做山东聊城建设局网站
  • 网站卖了对方做违法吗企业网站设计建设长春
  • 网站建设管理情况番禺seo
  • 教学网站建设目的网站建站和推广服务公司
  • 北京网站建设网站开发中国建筑网官网企业愿景
  • 重庆网站关键词排名优化上海58同城招聘网最新招聘
  • 三联网站建设网站目录提交
  • 重庆商城网站建设地址个人网站怎么备案
  • 做网站需要网站负责人销售管理软件app
  • 网站开发的公司推荐网站开发 合同范本
  • 贵阳自助建站软件asp微信网站
  • 做百科的网站外贸流程图解
  • 做的网站怎么提交到百度上去用python写一个简单的网站