חישוב מרחק בין נקודות ציון
-
לכל נקודת ציון יש קו אורך ורוחב (longitude וlatitude). עם נוסחה מתמטית אפשר להגיע למרחק במטרים ביניהם (חפש distance coordinates geolocation). בדוטנט יש לכך כבר מתודה מוכנה.
המשפט בסוגריים הוא משימה נוספת לכאורה. אני חושב שגוגל נותנת רשימת מקומות בעלי עניין בריבוע נתון. השאלה אם איזה API אתה משתמש.פורסם במקור בפורום CODE613 ב06/06/2016 00:59 (+03:00)
-
תודה רבה.
השאלה שלי היא בעיקר בגלל שהמרחק בין המעלות משתנה לאורך כדור הארץ.
למשל, באיזור קו המשווה המרחק בק"מ בין קו אורך למשנהו גדול בהרבה מהמרחק באיזור חוג הקוטב הצפוני או הקוטב הדרומי.
ולכן אי אפשר בעיקרון לעשות סתם חישוב לפי משפט פיתגורס.
מה שכן, כמדומני שיש שיטות (כך במפות גוגל ובמכשירי ניווט) שמחלקים איכשהו את (רוב) כדור הארץ לכמעין טבלה מרובעת. ואז אפשר לעשות חישובים כמו על מישור דו מימדי.
מעניין לבדוק את המתודה הנ"ל. האם היא רק מחזירה תוצאה של משפט פיתגורס.לגבי החלק השני: מדובר בנקודות עניין שאני יוצר. צריך לבדוק אם אפשר להוסיף אותם לשכבה מותאמת אישית במפה וגוגל יחפש בשכבה זו.
(בעיה: ה-API הזה מוגבל לשימוש מסוים. אח"כ צריך לשלם).פורסם במקור בפורום CODE613 ב06/06/2016 01:25 (+03:00)
-
אתה צודק בקשר לשינויי המרחק בין הקוים, אבל זה לגמרי לא משמעותי ("למרחקים ארוכים, אי דיוק של פחות מעשירית האחוז" - MSDN שם). והמתודה אכן מתייחסת כאילו המרחק שווה, בשביל להתגבר על זה צריך לחשב את אליפסיות הכדור, מעצבן.
בקשר לAPI הוא בתשלום אבל זול מאוד (וגם התשלום מתחיל אחרי מכסה הגונה במידה וניגשים עם מפתח).
פורסם במקור בפורום CODE613 ב06/06/2016 01:40 (+03:00)
-
אבל אני רוצה שהשרת יחשב את זה לבד.
תתן לו נקודת ציון והוא יתן לך את התוצאות הקרובות.
האלגוריתם שיש ב-C# הוא כנראה מציאת אורך קשת.
טריגונומטריה בסיסית.
אבל הם מחשבים כאילו כדור הארץ עגול ולא אליפסה.
ובאמת בשבילי חישוב כזה מספיק.
אגב, זה אמור להיות שאילתה במסד נתונים, שתשחשב את כל הנוסחא ותביא את התוצאות שנמצאות ברדיוס.
בעיקרון כבר מצאתי את הפיתרון.פורסם במקור בפורום CODE613 ב06/06/2016 19:22 (+03:00)
-
ברמת בסיס הנתונים MSSQL 2008 ומעלה נותן פתרון מצוין לנושא הגיאוגרפי
https://technet.microsoft.com/en-us/library/bb933808.aspxפורסם במקור בפורום CODE613 ב07/06/2016 13:16 (+03:00)
-
ברמת בסיס הנתונים MSSQL 2008 ומעלה נותן פתרון מצוין לנושא הגיאוגרפי
https://technet.microsoft.com/en-us/library/bb933808.aspxאיך שהבנתי גם שם אין זה מדויק ממש.
כל המדידות האלו מתבססות על כמה אלגוריתמים מקורבים.
כשהנפוץ והמדויק (להבנתי) הוא: "Haversine formula".
זה טריגונומטריה בסיסית.
כל הבעיה היא שזה מבוסס על כדור עגול. אבל כדוה"א אינו עגול. אך זה מספיק לקירוב.פורסם במקור בפורום CODE613 ב07/06/2016 14:41 (+03:00)