I'm trying to execute a simple st_intersects query:
select st_intersects('MULTIPOLYGON(((1 5,4 8,7 5,4 2,1 5)),((5 5,8 8,11 5,8 2,5 5)))','POLYGON((3 4.5,3 5,4 5,4 4,3 4.5))');
which crush the console and returns the following error:
Error: GEOSIntersects: TopologyException: side location conflict at: 6 4
Which is completely odd because the following query works:
select st_intersects('MULTIPOLYGON(((1 5,4 8,7 5,4 2,1 5)),((5 5,8 8,11 5,8 2,5 5)))','POLYGON((3 4,3 5,4 5,4 4,3 4))');
The only difference between the two is the 4 / 4.5 in the last polygon..
I use POSTGIS version 2.2.1 what am i missing here?
I found a relevant solution to my problem.
select st_intersects(st_buffer('MULTIPOLYGON(((1 5,4 8,7 5,4 2,1 5)),((5 5,8 8,11 5,8 2,5 5)))',0),'POLYGON((3 4.5,3 5,4 5,4 4,3 4.5))');
When i added the st_buffer
it merge the two polygons of the multipolygon to one and solved the issue.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With