02 PostGIS常用空间分析函数
常用的PostGIS空间分析函数清单:
序号 | 函数名 | 描述 | 示例 |
---|---|---|---|
1 | ST_AsText(geometry) | 将几何对象转换为文本形式的WKT字符串 | ST_AsText(ST_GeomFromText(‘POINT(1 2)’)) 返回 ‘POINT(1 2)’ |
2 | ST_GeometryType(geometry) | 返回几何对象的类型,如POINT、LINESTRING、POLYGON等 | ST_GeometryType(ST_GeomFromText(‘LINESTRING(1 2, 3 4)’)) 返回 ‘LINESTRING’ |
3 | ST_SRID(geometry) | 返回几何对象的空间参考系ID | ST_SRID(ST_GeomFromText(‘POINT(1 2)’, 4326)) 返回 4326 |
4 | ST_SetSRID(geometry, srid) | 设置几何对象的空间参考系ID | ST_SetSRID(ST_GeomFromText(‘POINT(1 2)’), 4326) 返回 SRID 为 4326 的 POINT(1 2) |
5 | ST_Dimension(geometry) | 返回几何对象的维度,如0表示点、1表示线、2表示面 | ST_Dimension(ST_GeomFromText(‘POINT(1 2)’)) 返回 0 |
6 | ST_Envelope(geometry) | 返回几何对象的最小外接矩形(MBR) | ST_Envelope(ST_GeomFromText(‘LINESTRING(1 2, 3 4)’)) 返回 POLYGON((1 2, 1 4, 3 4, 3 2, 1 2)) |
7 | ST_Length(geometry) | 计算线或多线段的长度 | ST_Length(ST_GeomFromText(‘LINESTRING(1 2, 3 4)’)) 返回 2.828427 |
8 | ST_Area(geometry) | 计算面或多边形的面积 | ST_Area(ST_GeomFromText(‘POLYGON((0 0, 0 1, 1 1, 1 0, 0 0))’)) 返回 1 |
9 | ST_Buffer(geometry, distance) | 计算几何对象的缓冲区,参数distance表示缓冲区的半径或者宽度 | ST_Buffer(ST_GeomFromText(‘POINT(1 2)’), 0.5) 返回以 POINT(1 2) 为中心,半径为0.5的圆 |
10 | ST_Intersection(geometry A, geometry B) | 计算两个几何对象的交集 | ST_Intersection(ST_GeomFromText(‘LINESTRING(0 0, 2 2)’), ST_GeomFromText(‘LINESTRING(1 0, 0 1)’)) 返回 POINT(0.5 0.5) |
11 | ST_Union(geometry A, geometry B) | 计算两个几何对象的并集 | ST_Union(ST_GeomFromText(‘LINESTRING(0 0, 1 1)’), ST_GeomFromText(‘LINESTRING(1 1, 2 2)’)) 返回 MULTILINESTRING((0 0, 1 1, 2 2)) |
12 | ST_Difference(geometry A, geometry B) | 计算两个几何对象的差集 | ST_Difference(ST_GeomFromText(‘LINESTRING(0 0, 2 2)’), ST_GeomFromText(‘LINESTRING(1 0, 0 1)’)) 返回 MULTILINESTRING((0 0, 1 1)) |
13 | ST_SymDifference(geometry A, geometry B) | 计算两个几何对象的对称差集 | ST_SymDifference(ST_GeomFromText(‘LINESTRING(0 0, 2 2)’), ST_GeomFromText(‘LINESTRING(1 0, 0 1)’)) 返回 MULTILINESTRING((0 0, 1 1), (1 1, 2 2)) |
14 | ST_Equals(geometry A, geometry B) | 判断两个几何对象是否相等 | ST_Equals(ST_GeomFromText(‘POINT(1 2)’), ST_GeomFromText(‘POINT(1 2)’)) 返回 true |
15 | ST_Disjoint(geometry A, geometry B) | 判断两个几何对象是否不相交 | ST_Disjoint(ST_GeomFromText(‘POINT(1 2)’), ST_GeomFromText(‘LINESTRING(0 0, 2 2)’)) 返回 true |
16 | ST_Touches(geometry A, geometry B) | 判断两个几何对象是否相接触 | ST_Touches(ST_GeomFromText(‘LINESTRING(0 0, 1 1)’), ST_GeomFromText(‘LINESTRING(1 1, 2 2)’)) 返回 true |
17 | ST_Crosses(geometry A, geometry B) | 判断两个几何对象是否相交但不在同一平面内 | ST_Crosses(ST_GeomFromText(‘LINESTRING(0 0, 1 1)’), ST_GeomFromText(‘LINESTRING(1 0, 0 1)’)) 返回 true |
18 | ST_Within(geometry A, geometry B) | 判断几何对象A是否在几何对象B内部 | ST_Within(ST_GeomFromText(‘POINT(1 2)’), ST_GeomFromText(‘POLYGON((0 0, 0 3, 3 3, 3 0, 0 0))’)) 返回 true |
19 | ST_Contains(geometry A, geometry B) | 判断几何对象A是否包含几何对象B | ST_Contains(ST_GeomFromText(‘POLYGON((0 0, 0 3, 3 3, 3 0, 0 0))’), ST_GeomFromText(‘POINT(1 2)’)) 返回 true |
20 | ST_Intersects(geometry A, geometry B) | 判断两个几何对象是否相交 | ST_Intersects(ST_GeomFromText(‘POINT(1 2)’), ST_GeomFromText(‘LINESTRING(0 0, 2 2)’)) 返回 true |
21 | ST_Centroid(geometry) | 计算几何对象的中心点 | ST_Centroid(ST_GeomFromText(‘POLYGON((0 0, 0 3, 3 3, 3 0, 0 0))’)) 返回 POINT(1.5 1.5) |
22 | ST_PointOnSurface(geometry) | 计算几 何对象的表面上的点 | ST_PointOnSurface(ST_GeomFromText(‘POLYGON((0 0, 0 3, 3 3, 3 0, 0 0))’)) 返回 POINT(1.5 1.5) |
23 | ST_Transform(geometry, srid) | 将几何对象从一个空间参考系转换为另一个空间参考系 | ST_Transform(ST_GeomFromText(‘POINT(1 2)’, 4326), 3857) 返回在Web墨卡托投影下的 POINT(111319.49079327357 222684.20875941086) |
24 | ST_Distance(geometry A, geometry B) | 计算两个几何对象之间的距离 | ST_Distance(ST_GeomFromText(‘POINT(1 2)’), ST_GeomFromText(‘POINT(3 4)’)) 返回 2.828427 |
25 | ST_Distance_Sphere(geometry A, geometry B) | 计算两个几何对象之间的球面距离,单位为米 | ST_Distance_Sphere(ST_GeomFromText(‘POINT(1 2)’, 4326), ST_GeomFromText(‘POINT(3 4)’, 4326)) 返回 314274.3882001206 |
26 | ST_Azimuth(geometry A, geometry B) | 计算从几何对象A到几何对象B的方位角,单位为弧度 | ST_Azimuth(ST_GeomFromText(‘POINT(1 2)’, 4326), ST_GeomFromText(‘POINT(3 4)’, 4326)) 返回 0.785398 |
27 | ST_MakePoint(x, y) | 创建一个二维点 | ST_MakePoint(1, 2) 返回 POINT(1 2) |
28 | ST_MakeLine(geometry A, geometry B, …) | 创建一个线段 | ST_MakeLine(ST_MakePoint(1, 2), ST_MakePoint(3, 4)) 返回 LINESTRING(1 2, 3 4) |
29 | ST_MakePolygon(geometry A, geometry B, …) | 创建一个多边形 | ST_MakePolygon(ST_MakeLine(ST_MakePoint(1, 2), ST_MakePoint(3, 4), ST_MakePoint(5, 6), ST_MakePoint(1, 2))) 返回 POLYGON((1 2, 3 4, 5 6, 1 2)) |
30 | ST_GeomFromText(text) | 从WKT字符串创建几何对象 | ST_GeomFromText(‘POINT(1 2)’) 返回 POINT(1 2) |
相关文章:
02 PostGIS常用空间分析函数
常用的PostGIS空间分析函数清单: 序号函数名描述示例1ST_AsText(geometry)将几何对象转换为文本形式的WKT字符串ST_AsText(ST_GeomFromText(‘POINT(1 2)’)) 返回 ‘POINT(1 2)’2ST_GeometryType(geometry)返回几何对象的类型,如POINT、LINESTRING、P…...

[Golang] 管理日志信息就用Zap包
😚一个不甘平凡的普通人,致力于为Golang社区和算法学习做出贡献,期待您的关注和认可,陪您一起学习打卡!!!😘😘😘 🤗专栏:算法学习 &am…...

【pytest】执行环境切换的两种解决方案
一、痛点分析 在实际企业的项目中,自动化测试的代码往往需要在不同的环境中进行切换,比如多套测试环境、预上线环境、UAT环境、线上环境等等,并且在DevOps理念中,往往自动化都会与Jenkins进行CI/CD,不论是定时执行策略…...

2023国赛tomcat题
环境: 10.10.120.128 安装 tomcaA 10.10.120.129 安装tomcatB 10.10.120.130 安装 nginx 配置dns: 正向解析 反向解析 Tomcat ssl配置 [root@localhost ~]# tar -zxvf jdk-11.0.8_linux-x64_bin.tar.gz [root@localhost ~]# mv jdk-11.0.8 /usr/local/ Vim /etc/profile …...

计算机视觉——day 92 基于跨领域协作学习的单图像去雨
基于跨领域协作学习的单图像去雨 1. Introduction3. Proposed method3.1 网络架构 4. Experiments and results4.1 数据集和指标4.3 合成图像的结果4.8 建模复杂度和运行时间 5. Conclusion 1. Introduction 深度卷积神经网络(DCNN)在图像解析任务中取得了优异的性能。然而&am…...
Java 正则表达式
Java 正则表达式 正则表达式定义了字符串的模式。 正则表达式可以用来搜索、编辑或处理文本。 正则表达式并不仅限于某一种语言,但是在每种语言中有细微的差别。 示例 boolean b String.matches(String regex) ;regex 有2种形式: 字符串 直接就是一…...
Oracle索引知识看这一篇就足够
🏆 文章目标:本篇介绍Oracle索引知识以及案例场景 🍀 Oracle索引知识看这一篇就足够 ✅ 创作者:Jay… 🎉 个人主页:Jay的个人主页 🍁 展望:若本篇讲解内容帮助到您,请帮忙…...
kafka命令行操作
新老版本kafka命令行操作 啓動Kafka: kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties Kafka命令行操作 查看当前集群中已存在的主题topic 旧的方式 kafka-topics.sh --zookeeper bdphdp01:2181 --list kafka-topics.sh --zookeeper bdphd…...

Pinia 上手使用(store、state、getters、actions)
参考链接:https://juejin.cn/post/7121209657678364685 Pinia官方:https://pinia.vuejs.org/zh/introduction.html 一、安装 npm i pinia -S二、main.js 引入 import { createApp } from "vue" import App from "./App.vue" impor…...

C++小项目之文本编辑器mynote(1.0.0版本)
2023年5月19日,周五晚上: 今天晚上突然想写一个运行在命令行上的文本编辑器,因为平时写文本时老是要创建新的文本文件,觉得太麻烦了。捣鼓了一个晚上,才选出一个我觉得比较满意的。我把这个程序添加到了系统环境变量中…...

人工智能的界面革命,消费者与企业互动的方式即将发生变化。
本文来源于 digitalnative.substack.com/p/ais-interface-revolution 描述了一种社会现象: 随着真实友谊的减少和虚拟友谊的增加,越来越多的人开始将AI聊天机器人视为自己的朋友,甚至建立了深厚的情感纽带。这可能与当前人们越来越孤独的现实…...

深度学习课程:手写体识别示例代码和详细注释
Pytorch 的快速入门,参见 通过两个神经元的极简模型,清晰透视 Pytorch 工作原理。本文结合手写体识别项目,给出一个具体示例和直接关联代码的解释。 1. 代码 下面代码展示了完整的手写体识别的 Python 程序代码。代码中有少量注释。在本文后…...

10-03 单元化架构设计
设计原则 透明 对开发者透明 在做实现时,不依赖于单元划分和部署对组件透明 在组件运行时,不感知其承载单元对数据透明 数据库并不知道为哪个单元提供服务 业务可分片 系统业务复杂度足够高系统可以按照某一维度进行切分系统数据必须可以被区分 业务…...

JAVA—实验3 继承与多态
一、实验目的 1.掌握类的继承机制 2.掌握抽象类的定义方法 2.熟悉类中成员变量和方法的访问控制 3.熟悉成员方法或构造方法的多态性 二、实验内容 1. Circle类及其子类 【问题描述】 实现类Circle,半径为整型私有数据成员 1)构造方法:参数为…...

TCP协议和相关特性
1.TCP协议的报文结构 TCP的全称为:Transmission Control Protocol。 特点: 有连接可靠传输面向字节流全双工 下面是TCP的报文结构: 源端口和目的端口: 源端口表示数据从哪个端口传输出来,目的端口表示数据传输到哪个端口去。…...

【SpringCloud组件——Eureka】
前置准备: 分别提供订单系统(OrderService)和用户系统(UserService)。订单系统主要负责订单相关信息的处理,用户系统主要负责用户相关信息的处理。 一、微服务当中的提供者和消费者 1.1、概念 服务提供…...

JVM面试题(一)
JVM内存分哪几个区,每个区的作用是什么? java虚拟机主要分为以下几个区: JVM中方法区和堆空间是线程共享的,而虚拟机栈、本地方法栈、程序计数器是线程独享的。 (1)方法区: a. 有时候也成为永久代,在该区内…...
c# 无损压缩照片大小,并且设计了界面,添加了外部Ookii.Dialogs.dll,不一样的选择文件夹界面,并且可以把外部dll打包进exe中
c# 无损压缩照片大小,并且设计了界面,添加了外部Ookii.Dialogs.dll,不一样的选择文件夹界面,并且可以把外部dll打包进exe中 using System; using System.Collections; using System.Collections.Generic; using System.ComponentM…...

《统计学习方法》——隐马尔可夫模型(上)
引言 这是《统计学习方法》第二版的读书笔记,由于包含书上所有公式的推导和大量的图示,因此文章较长,正文分成三篇,以及课后习题解答,在习题解答中用Numpy实现了维特比算法和前向后向算法。 《统计学习方法》——隐马…...
ElasticSearch删除索引【真实案例】
文章目录 背景分析解决遇到的问题 - 删除超时报错信息解决办法1:调大超时时间解决办法2:调大ES堆内存参考背景 项目中使用了ELK技术栈实现了日志管理,但是日志管理功能目前并没有在生产上实际使用。 但ELK程序依然在运行,导致系统磁盘发生告警,剩余可用磁盘不足10%。 所以…...
CVPR 2025 MIMO: 支持视觉指代和像素grounding 的医学视觉语言模型
CVPR 2025 | MIMO:支持视觉指代和像素对齐的医学视觉语言模型 论文信息 标题:MIMO: A medical vision language model with visual referring multimodal input and pixel grounding multimodal output作者:Yanyuan Chen, Dexuan Xu, Yu Hu…...

css实现圆环展示百分比,根据值动态展示所占比例
代码如下 <view class""><view class"circle-chart"><view v-if"!!num" class"pie-item" :style"{background: conic-gradient(var(--one-color) 0%,#E9E6F1 ${num}%),}"></view><view v-else …...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动
一、前言说明 在2011版本的gb28181协议中,拉取视频流只要求udp方式,从2016开始要求新增支持tcp被动和tcp主动两种方式,udp理论上会丢包的,所以实际使用过程可能会出现画面花屏的情况,而tcp肯定不丢包,起码…...

VB.net复制Ntag213卡写入UID
本示例使用的发卡器:https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

遍历 Map 类型集合的方法汇总
1 方法一 先用方法 keySet() 获取集合中的所有键。再通过 gey(key) 方法用对应键获取值 import java.util.HashMap; import java.util.Set;public class Test {public static void main(String[] args) {HashMap hashMap new HashMap();hashMap.put("语文",99);has…...

SCAU期末笔记 - 数据分析与数据挖掘题库解析
这门怎么题库答案不全啊日 来简单学一下子来 一、选择题(可多选) 将原始数据进行集成、变换、维度规约、数值规约是在以下哪个步骤的任务?(C) A. 频繁模式挖掘 B.分类和预测 C.数据预处理 D.数据流挖掘 A. 频繁模式挖掘:专注于发现数据中…...

vscode(仍待补充)
写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh? debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...

学校招生小程序源码介绍
基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码,专为学校招生场景量身打造,功能实用且操作便捷。 从技术架构来看,ThinkPHP提供稳定可靠的后台服务,FastAdmin加速开发流程,UniApp则保障小程序在多端有良好的兼…...
vue3 字体颜色设置的多种方式
在Vue 3中设置字体颜色可以通过多种方式实现,这取决于你是想在组件内部直接设置,还是在CSS/SCSS/LESS等样式文件中定义。以下是几种常见的方法: 1. 内联样式 你可以直接在模板中使用style绑定来设置字体颜色。 <template><div :s…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...