У меня проблема с пересечением двух географических регионов в PostGIS: у меня есть таблица1 с географическим столбцом, заполненная несколькими полигонами в wgs84 (по одному на строку). Вторая таблица2 также имеет столбец географии, заполненный мульти-полигонами в wgs84 (по одному в каждой строке). Затем я делаю пересечение (выбираю (..), где ST_Intersects ()) между ними обоими.
В некоторых (очень редких) случаях мне кажется, что это не работает правильно, потому что пересечение возвращает false, где ожидается истина: у меня есть перепроецированный tif, представляющий географию из одной строки в table1, он охватывает большую область в Танзания. У меня также есть перепроецированный tif для одной строки в table2, он покрывает только небольшую площадь в несколько км². В ArcMap оба пересекаются, маленькая область находится на краю большой, но PostGIS возвращает false для ST_Intsersects (geog1, geog2).
Когда я экспортирую table1 как шейп-файл через дампер, угловые точки географии соединяются прямыми линиями, а не частями больших кругов. Тогда я получаю тот же результат: область из таблицы 2 теперь находится за пределами области из таблицы 1. Итак, я думаю, PostGis также выполняет вычисления с этим упрощенным многоугольником, но, насколько я понял, география предназначена для расчета с частями больших кругов, а не с прямыми линиями?
Я уже перепробовал все, чтобы убедиться, что обе таблицы действительно заполнены географией, а не геометрией, но даже явное приведение к географии не изменило результатов.
Случалось ли что-то подобное раньше или вы знаете, что я сделал не так? Может быть проблема, что table2 также имеет геометрию и растровый столбец (= 3 пространственных столбца вместе)?