Oracle Spatial (SDO) で、ポリゴンのサーフェスに含まれるポリゴンの重心を取得する方法はありますか?

StackOverflow https://stackoverflow.com/questions/587863

質問

Oracle Spatial でポリゴン自体の内部に存在するポリゴンの重心を見つける必要があります。形状が馬蹄形に似ている場合、sdo_geom.sdo_centroid メソッドは形状の外側の点を返すため、このメソッドは使用できません。

sdo_geom.sdo_pointonsurface メソッドを見つけましたが、次の点が返されます。 ただ ポリゴンの端にあります。これは数学的には機能しますが、すべてのポリゴンが他のポリゴンと境界を共有し、データにわずかな重複が存在する場合があるため、この環境では安全ではありません。この重なりには計算された点を含めることはできません。

カスタムコードを書かずにこの点を見つける別のアプローチはありますか?このためにカスタム コードを作成することに反対はしませんが、事前に構築されたものが既に存在する場合はそれを使用したいと思います。

ありがとう!

役に立ちましたか?

解決

Simon Greener には「パラセントロイド」用のパッケージがあります。 codesys.geom.sdo_centroid.

ダウンロードすることはできますが、ソースに何らかのライセンスが付与されているかどうかはわかりません。

ここにリンクがあります:

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top