He:Rendering

הצגת נתוני המפה היא תהליך הכנה של תצוגה ויזואלית על בסיס נתונים גיאו-מרחביים גלמיים ותגיות. הביטוי "הצגת נתונים" חל יותר על תצוגת ראסטר, או סט של אריחי ראסטר, אך יכול להתייחס גם לפלט בפורמט וקטורי. ניתן גם להציג את הנתונים בתמונה "תלת מימדית" אם לוקחים את נתוני המפה כקלט. היכולת ליצור מפה בסגנונות חדשים ומעניינים או להדגיש תכונות של עניין מיוחד היא אחד מההיבטים המרגשים ביותר עם גישה לנתונים גאוגרפיים. קהילת OpenStreetMap יצרה מגוון רחב של תכנות להצגת נתוני OpenStreetMap. נתונים אלה ניתנים להמרה לפורמטי נתונים אחרי להצגה על ידי תכנות קיימות.
הצגת המפה על שרתי OpenStreetMap
הדוגמאות הברורות ביותר להצגת נתוני OpenStreetMap הן אלה המצויות ב]https://openstreetmap.org/ דף הבית של OpenStreetMap]. יש להקליק על כפתור בחירת השכבות כדי לעבוד לשכבת סגנון תצוגה אחר. קיימות מספר שכבות שנוצרו תוך שימוש בתכנת Mapnik כולל את שכבת ברירת המחדל הסטנדרטית. כדי להבין יותר בתשתיות המעורבות בהצגת הנתונים ושירות סגנונות מפות אריחים אלה, ראו סקירת רכיבים כללית והצגת נתוני Mapnik.
קיימים מימדים בלתי מוגבלים של גמישות המעורבת בהצגת הנתונים. רוב תכנות ההצגה תומכות בסוג כלשהו של דף סגנונות לשליטה בדברים כגון צבע, עובי הקו, אוריינטציית הטקסט, צלמיות לנקודות עניין, ועוד דקויות של גורמים ויזואליים.
כלי שרת ושורת פקודה
| שם | פלטפורמת יעד | שפת יעד | רשיון | הערות |
|---|---|---|---|---|
| Carto | JavaScript | N/A | Apache v2 | המרת דף הסגנונות CartoCSS לשפת ה־XML של Mapnik |
| Mapnik | Windows, macOS, Linux | C++, JavaScript, Python, Ruby, Java | LGPL | מציג המפות הדו ממדיות הפופולרי ביותר בצד השרת. דורש PostgreSQL וספריות ++C שונות. מיועד להיות מהיר ומתאים לחילול אריחים בשרתים הנחשבים ביותר, אך לא קל במיוחד לשנות בו הגדרות. |
| MapOSMatic | Cross-platform | Python | AGPLv3 | יכול להציג מפות עם רשת ואינדקס רחובות. נכתב ב־Python/Django + mapnik |
| Smrender | Cross-platform | C | GPLv3 | מנוע הצגת נתונים מבוסס כללים. נכתב בשפת C. |
| TileServer GL | Cross-platform | BSD | שרת אריחים לקבצים בפורמטי ראסטר ופורמטים וקטוריים. | |
| Map Machine | Cross-platform | Python | MIT | מציג OPenStreetMap פשוט עם צלמיות מותאמות המכוון להציג מספר תגיות רב ככל האפשר |
אפליקציות GUI בצד הלקוח
| שם | פלטפורמת היעד | רישיון | הערות |
|---|---|---|---|
| Kosmtik | Node.js | WTFPL | כלי פיתוח לסגנון CartoCSS (תצוגה מקדימה של סגנונות). מבוסס על Mapnik. |
| Maperitive | Windows, macOS, Linux | קנייני | יישום למחשבים שולחניים המציג קבצים מקומיים (.osm, .osm.bz2 ו־GPX) עם כללי תצוגה המוגדרים בקובץ טקסט. מחולל פלט בפורמטי BMP' PNG ו־SVG. לא מיועד לתצוגה עם ביצועים גבוהים או לנפחים עצומים של נתונים, אך קל להגדרה וגמיש, ואפשרות טובה להצגה חד-פעמית (למשל, מפת העיר שלך). זהו גם מחולל אריחים, יוצר צללים על פי גובה, צביעת עליות ו רשימה של פונקציות נוספות |
| OSM2World | Java SE | LGPL | כלי היוצר מודלי תלת־ממד ריאליסטיים מקבצי נתוני OSM. |
| OSMBuildings | JavaSript (WebGL) | ... | כלי היוצר מודלי תלת־ממד מקבצי נתוני OSM. |
| OSM go | JavaScript | GPL | כלי היוצר מודלי תלת־ממד פשוטים עפ אובייקטי OSM ניתנים לבחירה מקבצי נתוני OSM. |
| Phototiler | Linux, macOS, Windows | קנייני | A tool to create high quality maps using photo-realistic shading and vector tile data.
כלי ליצירת מפות באיכות גבוהה עם הצללה ריאליסטית ונתונים וקטוריים של אריחים. |
| TileMill | Windows, macOS, Linux | 3-clause BSD | סביבת פיתוח לסגנונות CartoCSS. |
ספריות צד לקוח
- מאמר ראשי: Frameworks
| שם | פלטפורמת היעד | שפת היעד | רישיון | הערות |
|---|---|---|---|---|
| CartoType | Windows, iOS, Android, macOS, Unix, Web Assembly | C++, C#, Java, Swift, Objective C | קנייני | ספריית הצגה וניתוב. משתמשת בהאצת OpenGL ES. דפי סגנונות ניתנים להתאמה אישית ופרופילי ניתוב. תומכת בפרספקטיבות ובניינים בתלת־ממד. |
| GLMap | iOS, Android | Objective-C, Swift, Java | קנייני | מפה וקטורית מקוונת או לא מוצגת על המכשיר על ידי OpenGL ES. |
| libosmscout | Linux, macOS, iOS, Windows, Android, Qt | C++, Java | LGPL | מציעה ממשק פשוט ברמה גבוהה להצגה וניתוב לא מקוונים, מבוססת על נתוני OPenStreetMap. |
| Mapbox GL | Android, iOS, Web | Kotlin, JavaScript, Swift | קנייני | מציגה אריחים מאורחים ב־Mapbox ואריחי Mapbox וקטוריים על ידי OpenGL ES ו־WebGL |
| Mapbox Unity SDK | Cross-platform | C# | Apache/BSD | מספקת נתונים לחילול נופי תלת־ממד מותאמים אישית בשימוש. |
| MapLibre GL JS | Web | JavaScript | BSD | התפצלות מובלת על ידי קהילה ונגזר מ־Mapbox GL JS v1.13 מלפני המעבר שלהם לרישיון שאינו OSS |
| MapLibre GL Native | Android, iOS | Java, Objective-C, Swift, Interface Builder | BSD | התפצלות מובלת על ידי קהילה ונגזר מ־Mapbox GL Native v1.6.0 מלפני המעבר שלהם לרישיון שאינו OSS |
| Mapsforge | Android, Java ME | Java | LGPLv3 | ארגז כלים חפשי ופתוח המאפשר לקהילה ליצור יישומים חדשים מבוססי OpenStreetMap. מספק כלים וממשקי פיתוח כולל פתרונות להצגת מפה, תכנון נתיב וניווט, מִפתוח נקודות עניין וחיפוש, ציפויי מפות ועוד. |
| MapTiler JavaScript Maps SDK | Web | JavaScript | BSD | התפצלות של MapLibre GL JS |
| Prettymaps | Cross-platform | Python | GNU AGPLv3 | תצוגה גרפית דו־ממדית בפורמטי ראסטר ווקטור על ידי פיית'ון. מבוססת על ספריות osmnx' matplotlib ו־shapely. |
| Tangram NG | Cross-platform | C++, Java, Objective-C | MIT | התפצלות מתוחזקת באופן פעיל של Tangram ES מוסיפה תכונות תלת־ממד של קרקע ותכונות נוספות. |
| QtPBFImagePlugin | Cross-platform | C++ | LGPLv3 | תוסף תמונת Qt להצגת אריחים וקטוריים של Mapbox. בשימוש על ידי GPXSee. |
כלים מהעבר
הכלים הבאים אינם מתוחזקים עוד, רך יש להם ערך הטטורי
- AlaCarte - מנוע הצגת אריחים לחלונות מיקרוסופט ולינוקס. אין התקדמות מאז 2016. רישיון AGPL.
- Hardware accelerated real-time rendering - נכתב בדוטנט. קנייני. משתמש בכרטיס גרפי להציג תמונות בזמן אמת במקום להציג אריחים מוכנים מראש להצגה.
- Kartograph - מסגרת פיית'ון ברישיון AGPL להכנת מפות SVG, רשמית מת [משנת 2016]
- Kartograph ברישיון LGPL ספריית JavaScript להצגת מפות מחוללות בפורמט וקטורי על כל דפדפן.
- Kendzi3d - תוסף ל־JOSM, מאפשר צפייה בנתונים ערוכים בתלת־ממד.
- Kothic JS - רישיון BSD, מנוע הצגת מפות עם כל התכונות המשתמש בבד ציור של HTML 5, בתחילה פותח כפורט JavaScript של Kothic.
- Kothic - רישיון LGPL. מנוע CSS/0.2 הצגת מפות שנכתב בפיית'ון (פרויקט מת, משנת 2015 אין פעילות).
- LunaRender - תוכנה לחלונות מיקרוסופט שנכתבה ב־LUA עם רישיון MIT. מציג XML2SVG.
- MapboxGL - במקור בעל רישיון BSD, וזמין למערכות אנדרואיד, iOS, macOS, QT וברשת. הושעה על ידי MapLibre קוד-פתוח ותוכנות Mapbox SDK )קנייני).
- Mapweaver - ממשיך דרכו של mapbox.pl מציג בשפת פרל. ממיר OSM ל־SVG ומשם עם אינקסקייפ ל־PNG ו־PDF מפתח מפה אוטומטי. תומך ברשימת רחובות ונקודות עניי, רשתות ותוספת קואורדינטות. הוצאה אוטומטית של מקום מבוקש מתוך קובץ OSM. לא רץ תחת חלונות מיקרוסופט.
- MapSurfer.NET - קנייני, מסגרת דוטנט לסגנוּן ופרסום(הצגה, אחסון במטמון) של נתוני מפה גאו־מרחביים לרשת.
- Memphis - יישום הצגת מפות וספריה עבור OpenStreetMap שנכתב ב־C עם Cairo, eXpat ו־GLib. היישום מורשה תחת תנאי GNU Lesser Public Lisense.
- Osmarender - קובץ XSLT המבצע טרנספורמציה מ־OSM XML ל־SVG. tiles.home היה פרויקט המשתמש ב־Osmarender ליצור ערכת אריחים שתשרת שכבת מפה לצד זו של Mapnik, אך Osmarender יכול להוות גם אופציה לביצוע הצגות נתונים חד־פעמיות. פורמט SVG מאפשר לבצע שינויים שלאחר העיבוד (ראו באופציות שבהמשך) במפה הראשית של osm.org ויתרו על זה בראשון למרץ 2012.
- osmbrowser - יכול לטעון שחים גדולים של נתוני OSM ולהציג אותם בגרפיקה וקטורית.
- osmrender.pl - מפות פשוטות המצוירות בקלות עם תכנית פרל. משתמש בקבצי *.osm כקלט.
- XNavigator - מציג תלת־ממד כתוב ב־ִJava SE עם רישיון GPLv2. שוחרר לאחרונה בשנת 2012 על פי דף הוויקי של OSM.
- Osm2pov - כלי ליצירת מפות איזומטריות מנתוני OSM.
- Pyrender - אוסף של רעיונותוקצת קוד בפיית'ון לצעדים השונים של הצגת השרת.
- Tangram - מציג מפות דו־ממדיות ותלת־ממדיות תוך שימוש ב־WebGL על ידי Mapzen
- Tangram ES - מציג מפות דו־ממדיות ותלת־ממדיות תוך שימוש ב־WebGL ES על ידי Mapzen
- TileSweep - שרת אריחים עבור Mapnik.
- VTM - מציג אריחים וקטוריים שפותח על ידי פרויקט OpenScienceMap
ראו גם
- יצירת אריחים משלך - אופציות שונות עם תיאורים מהירים.
- רשימת שירותים מבוססי OSM - בעיקר רשימה של תצוגות מפה שונות.
- Category:Renderers - קטגורית וויקי לדפים אודות מציגים.
- פיתוח תלת־ממד
- OSM על נייר
- GPS tracks#Rendering