Мне нужно найти центр тяжести многоугольника в Oracle Spatial, который существует внутри самого многоугольника. Я не могу использовать метод sdo_geom.sdo_centroid, потому что он возвращает точку вне формы, если форма напоминает подкову.
Я нашел метод sdo_geom.sdo_pointonsurface, но он возвращает точку, равную на краю многоугольника. Хотя это математически работает, в нашей среде это небезопасно, поскольку все полигоны имеют общую границу с другими полигонами, и иногда данные слегка перекрываются. Это перекрытие не может включать расчетную точку.
Есть ли другой подход к поиску этой точки без написания специального кода? Я не против написания собственного кода для этого, но я хотел бы использовать что-то предварительно созданное, если оно уже существует.
Спасибо!