oracle - 将点捕捉到线并获取线 ID
问题描述
我有一个包含 SDO_GEOMETRY 表的 Oracle 18c 数据库:
- 人行道折线表
- 人行道检查点表
创建人行道检查点后,我想自动将这些点捕捉到最近的线——并且——将线的 ID 插入一列。
- 我对捕捉线顶点不感兴趣(人行道缺陷/检查不一定发生在顶点处)。我需要能够捕捉到沿线最近的位置(即使它是中间段)。
- 搜索容差为 5 米。
有没有办法通过 Oracle Spatial/SDO_GEOMETRY 插入触发器来做到这一点?
(我已经在文档中四处寻找,但到目前为止我还没有看到任何适合捕捉的东西。)
解决方案
我在这里回答了这个问题:https ://gis.stackexchange.com/a/352809/21232
简而言之,解决方案是使用 Oracle Spatial 的线性参考特性
推荐阅读
- maven - 无法从配置文件配置附加系统属性
- fortran - Gfortran 编译错误:必须将 (1) 处的逻辑与 .eqv 进行比较。而不是==
- node.js - 在 var 中使用查询字符串进行搜索在 mongoose 中不起作用
- php - JSON在解码时只返回第一个字符?
- c# - 是否可以仅为单个命名空间创建 Nuget 包?
- c# - 如何在线找到最近的点?
- python - 有什么方法可以在没有 cmp sort 参数的情况下对大对象进行排序?
- pandas - 具有多个元素的数组的真值是不明确的。使用 a.any() 或 a.all()',
- npm - 进行 npm 审计修复时不修改 package.json
- c++ - 从另一个文件c ++访问变量值