sql - 在 PostGIS 中沿折线提取栅格像素值
问题描述
我有一个 PostGIS 数据库,其中包含一个包含栅格的表,我想在特定时间提取沿折线(任意数量的坐标点)的像素值。所以目标是:
- 选择给定折线和时间戳的相关图块
- 返回折线穿过的所有像素的值
因此,每个输出行将包含一个坐标对和相应的像素值。
从我到目前为止谷歌搜索的内容中,我了解到我要么
- 将线转换为栅格,然后进行交集,或
- 将栅格转换为矢量事物,然后进行交集
但是,我无法将我发现的几个例子应用到我的案例中。有人可以给个提示吗?
栅格表被调用air_temperature
,相关列是rast
和timestamp
。我了解到我可以提供适当的几何图形,例如"st_transform(st_setsrid(st_geomfromtext('MULTILINESTRING ((7.294832 52.697831, 7.294074 52.698534))'), 4326), 3857)"
.
我想我可以通过包含 where caluse 来选择相关的图块和时间戳,如下所示:
where st_intersects(st_transform(st_setsrid(st_geomfromtext('MULTILINESTRING ((7.294832 52.697831, 7.294074 52.698534))'), 4326), 3857), rast) and timestamp='2017-01-01 01:00:00'
但是这select
部分看起来怎么样?
解决方案
推荐阅读
- sql-server - 可以在 sql server 中使用 Cursor 截断多个表
- html - css选择器之间星号(*)的含义
- r - R - 一次重命名所有列值
- mysql - 转换 SQL SERVER 表
- java - 属性值相同的不同对象可以在Java中具有相同的哈希码吗
- javascript - 获取 iframe 中地图的经纬度 onclick
- javascript - 如何在 vuex 商店的 getter 方法中使用突变的功能
- service-worker - 如何在服务人员中设置自定义 userAgent?
- java - Map Db compact 方法的使用方法以及它如何用于清除内存
- python - 用于注释短语的并行列表