נתונה נקודה במישור וציור של לב, איך יודעים אם הנקודה נמצאת בתוך הלב או מחוצה לו ?
https://encrypted-tbn2.google.com/im...4D1hLTrihpgNYA
Printable View
נתונה נקודה במישור וציור של לב, איך יודעים אם הנקודה נמצאת בתוך הלב או מחוצה לו ?
https://encrypted-tbn2.google.com/im...4D1hLTrihpgNYA
תחלק את הלב לשני חצאים. כל חצי לב הוא צורה קמורה.
כל חצי לב קרב לפוליגוון באיזה דיוק שתרצה (אפילו כל שתי נקודות עוקבות שיוצרות ישר).
כעת בדוק האם הנקודה נמצא בתוך הפוליגון שייצרת. הבדיקה תיעשה ע"י מעבר על כל הצלעות ולוודא שעבור כל הישרים הללו כולם הנקודה תימצא מאותו הצד של הישר.
בצע הבדיקה עבור שני חצאי הלב במידה והנקודה לא נמצאת בשניהם תבדוק אם הנקודה נמצאת על הישר המחבר בין השפיצים של הלב אם גם לא שם אז היא בחוץ.
איך תבדוק אם הנקודה נמצאת מאותו צד של הישר ?
בכל מקרה, יש פתרון הרבה יותר פשוט ומהיר.
תבדוק זוויות בין נקודה לקודקוד הישר.
אם יש פתרון יותר טוב שתף.
מהיר זה גם פונקציה של מימוש (:
מהיר ללא תלות בכל מימוש.
אני מחכה לעוד תשובות לפני שאני משתף.
אני לא הבנתי את החידה.
אם זאת תהיה בדיחה של יום האהבה, אני בטוח שיהיו פה הרבה אנשים שמאוכזבים ממך. :cool:
זאת לא בדיחה.
השאלה היא למצוא דרך פשוטה בה ניתן לקבוע בודאות אם הנקודה בתוך הלב או מחוצה לו.
אם הלב מסובך אפשר להחליף את הצורה למצולע , נניח כוכב...
http://www.insidegraphics.com/corel_..._star_tips.gif
מה שימי נגמרו הנזילות מהמרפסת ומשעמם לך אז נעשתה לנו חמיצר ;)
עידו
טוב אז הנה הפתרון,
בגדול מדובר בחלק מענף מתימטי מרהיב בשם טופולוגיה העוסק בצורות מתעוותות, מבוכים וכל מיני יצירות דמיון מטורף.
http://en.wikipedia.org/wiki/Point_in_polygon
מעבירים קרן מהנקודה לכיוון כלשהו, אם הקרן לא נפגשת עם שום קו , הנקודה מחוץ לפוליגון.
אם היא חוצה מספר זוגי של צלעות היא גם נמצאת מחוץ למצולע.
אם היא חוצה מספר אי-זוגי של צלעות היא בתוך המצולע.
העקרון הוא שאם הנקודה בחוץ הקרן צריכה לחצות מספר זוגי של צלעות.
אם למשל מדובר בכוכב, היא יכולה לחצות 2 צלעות לצאת החוצה, להכנס שוב ולחצות 2 צלעות,
כלומר מספר זוגי של מפגשים.
אבל אם הנקודה בפנים, הקרן שיוצאת ממנה חוצה תמיד צלע אחת פחות מהקרן שבאה מבחוץ.
המשפט נכון לצורות מורכבות יותר ומעוקלות יותר אבל, הצורה הכללית נקראת העקום של ז'ורדן, שזה בעצם לולאה שלא חוצה את עצמה.
דוגמה לצורה שאותו כלל פשוט עובד :
http://i223.photobucket.com/albums/d...dle_gr_229.gif
הכלל נכון גם לצורות תלת-מימדיות.
עוד דוגמא קצת מופרעת למי בפנים ומי בחוץ , תחום שהטופולוגים אוהבים לעסוק בו,
במקרה הנ"ל, הווסט מבחינה טופולוגית לא נמצא בתוך החליפה.
הפרוצדורה בסדרת הצילומים עובדת, בדקתי בעצמי, רק שבמקום לקנות חליפת 3 חלקים גזרתי גופייה פשוטה.
https://sites.google.com/site/howdow...ology vest.jpg
מעמידים את ראשית הצירים במרכז הלב וכעת מותחים קו ישר שיוצא מהנקודה ועובר דרך ראשית הצירים. אם הישר חוצה את גבולות הלב יותר מפעם אחת-הרי שהנקודה מחוץ ללב,אם הוא חוצה פעם אחת בלבד-הוא בתוך הלב.
מסתבר שפיספסתי בכמה דקות :)