تشخیص نقطه در کانتور یا چند ضلعی - هفت خط کد انجمن پرسش و پاسخ برنامه نویسی

تشخیص نقطه در کانتور یا چند ضلعی

0 امتیاز
سلام .

برای اینکم تشخیص بدیم یک نقطه در یک کانتور یا چند ضلعی وجود داره یا نه چیکار کنم؟
سوال شده اردیبهشت 2, 1394  بوسیله ی ملک پور (امتیاز 145)   8 27 33

1 پاسخ

+1 امتیاز
 
بهترین پاسخ
از آنجایی که شما قصد دارید در OpenCV اینکار را انجام بدید تابعی به نام pointPolygonTest اینکار را برای شما انجام میده این تابع 3 تا پارامتر می گیره که اولی همان چند ضلعی یا کانتور شما هستش و دومی نقطه ای که قصد دارید چک کنید و پارامتر سوم هم اگر true بااشه در خزوجی تابع میزان فاصله برگشت داده میشه.

اگر نقطه داخل چند ضلعی باشه عدد مثبت و اگر روی چند ضلعی صفر و اگر خارجش باشه میزان دوری نقطه از چند ضلعی  را به صورت عدد منفی بر می گردونه.

اگر خودتان هم قصد اینکار را انجام بدید باید در راستای افق و عمود این نقطه را با چند ضلعی تقاطع بدید اگر تعداد نقاط تقاطع در 2 طرف نقطه فرد باشد(در هر دو راستا) آنگاه نقطه داخل است اگر نقطه مساوی باشد با نقطه تقاطع دیگری یعنی بر روی چند ضلعی هستید و در غیر اینصورت هم خارج از چند ضلعی هستید.
پاسخ داده شده اردیبهشت 4, 1394 بوسیله ی مصطفی ساتکی (امتیاز 21,998)   24 34 75
انتخاب شد دی 2, 1396 بوسیله ی farnoosh
...