我使用mysql空间函数。
我必须了解点是否位于多面中。
最初,我使用MBRContains
,但是它以一种奇怪的方式工作,所以我遇到了以下错误:Mysql function MBRContains is not accurate
我的下一步是切换到功能ST_Contains
。但是我发现,如果我使用来自polypolygon的polygon(来自multipolygon)顶点作为参数-函数返回false,但我想取消所有multipolygon边界。
我发现函数在哪里
ST_Touches(g1,g2)
如果两个几何的内部不相交,它们在空间上会相互接触, 但其中一个几何的边界与 边界或另一个的内部
看起来像我想要的那样工作(在OR
的{{1}}条件下),但是文档对我来说并不明确。你能解释两个条件如何一起成为真理吗?
1.内部不相交
2.边界与边界相交。
?
如何实现我想要的行为?
答案 0 :(得分:1)
看起来像可行的解决方案:
ST_Contains(g1,g2) || ST_Touches(g1, g2)
答案 1 :(得分:0)
看起来ST_Distance(AREA, @point)) = 0
带有边框