في Oracle المكاني (SDO)، هل هناك طريقة للحصول على نقطة حيلة من مضلع موجود من خلال سطح المضلع؟

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

سؤال

أحتاج إلى العثور على المركزية من مضلع في Oracle المكاني الموجود داخل المضلع نفسه. لا يمكنني استخدام الطريقة sdo_geom.sdo_centroid لأن هذا إرجاع نقطة خارج الشكل إذا كان الشكل يشبه حدوة حدوة.

لقد وجدت sdo_geom.sdo_pointonsurface الطريقة، لكنها ترجع نقطة فقط على حافة المضلع. في حين أن هذه الأعمال الرياضية، إلا أنها غير آمنة في بيئتنا لأن جميع المضلعات تشترك في حدود مع مضلعات أخرى وأحيانا يوجد تداخل بسيط في البيانات. لا يمكن أن يتضمن هذا التداخل النقطة المحسوبة.

هل هناك نهج آخر لإيجاد هذه النقطة دون كتابة رمز مخصص؟ أنا لا أعارض كتابة التعليمات البرمجية المخصصة لهذا، ولكن أود استخدام شيء ما تم بناؤه مسبقا إذا كان موجودا بالفعل.

شكرا!

هل كانت مفيدة؟

المحلول

سيمون اخضرار لديه حزمة ل "الفقرة الوسطى": codesys.geom.sdo_centroid.

يمكنك تنزيله، لكنني لا أعرف ما إذا كان هناك أي نوع من الترخيص المرفقة بالمصدر.

فيما يلي روابط:

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top