מצולע

מחלקה סופית ציבורית פוליגון מרחיב את האובייקט

פוליגון על פני השטח של כדור הארץ. פוליגון יכול להיות קמור או קעור, הוא יכול להתפרס על פני קו האורך 180 וייתכן שיהיו בו חורים שלא מולאו. יש לו את המאפיינים הבאים:

קווי מתאר
המתווה מצוינים על ידי רשימת קודקודים בסדר בכיוון השעון או נגד כיוון השעון. אין צורך שנקודות ההתחלה ונקודות הסיום חופפות זו לזו. אם הן לא חופפות, הפוליגון ייסגר באופן אוטומטי. משורטטים קטעי קו בין נקודות עוקבות במסלול הקצר מבין שני הכיוונים (מזרח או מערב).
חורים
חור הוא אזור בתוך הפוליגון שלא מלא. חור מצוין בדיוק באותו אופן כמו קווי המתאר. חור חייב להיות ממוקם במלואו בתוך קו המתאר. ניתן לציין כמה חורים, אבל אין תמיכה בחורים חופפים.
רוחב קו
רוחב מקטע הקו בפיקסלים של המסך. הרוחב קבוע ובלתי תלוי ברמת הזום של המצלמה. ערך ברירת המחדל הוא 10.
צבע הקו
צבע מקטע הקו בפורמט ARGB, באותו פורמט שבו נעשה שימוש ב-Color. ערך ברירת המחדל הוא שחור (0xff000000).
סוג מפרק הקו
סוג המחבר מגדיר את הצורה שבה יש להשתמש כשמחברים בין קטעי קו סמוכים בכל הקודקודים בקווי המתאר של הפוליגון. בJointType מפורטים סוגי החיבורים הנתמכים. ערך ברירת המחדל הוא DEFAULT.
תבנית משיכה
קבוע (ברירת המחדל, מיוצג על ידי null) או רצף של PatternItem אובייקטים שיש לחזור עליהם לאורך קווי המתאר של הפוליגון. סוגי הPatternItem הזמינים: Gap (מוגדר על ידי אורך הפער בפיקסלים), Dash (מוגדר לפי רוחב הקו והקו המפריד בפיקסלים) ו-Dot (עיגול, במרכז קו המתאר של הפוליגון, הקוטר מוגדר לפי רוחב הקו בפיקסלים).
צבע מילוי
צבע מילוי בפורמט ARGB, באותו פורמט שבו משתמש Color. ערך ברירת המחדל הוא שקוף (0x00000000). אם גיאומטריית הפוליגון לא מוגדרת נכון (ראו למעלה כדי לראות את קווי המתאר וחורים), לא יצויר מילוי.
מדד Z
הסדר שבו משורטט הפוליגון הזה ביחס לשכבות-על אחרות, כולל Polyline, Circle, GroundOverlay ו-TileOverlay, אבל לא Marker. שכבת-על עם אינדקס-z גדול יותר משורטטת מעל שכבות-על עם אינדקסים קטנים יותר. הסדר של שכבות-העל עם אותו ערך z-index הוא שרירותי. ערך ברירת המחדל הוא 0.
חשיפה
מראה אם הפוליגון גלוי או מוסתר, כלומר אם הוא משורטט במפה. לא משורטטים פוליגון בלתי נראה, אבל כל המאפיינים האחרים שלו נשמרים. ברירת המחדל היא true, כלומר גלויה.
סטטוס גיאודזי
מראה אם צריך לצייר את קטעי הפוליגון כגיאודזי, ולא כקווים ישרים בהיטל של המרקטור. נתיב גיאודזי הוא הדרך הקצרה ביותר בין שתי נקודות על פני כדור הארץ. העקומה הגיאודזית נבנתה בהנחה שכדור הארץ הוא כדור
קליקביליות
אם רוצים לטפל באירועים שהופעלו כשהמשתמש לוחץ על הפוליגון, צריך להגדיר את המאפיין הזה כ-true. אפשר לשנות את הערך הזה בכל שלב. ברירת המחדל היא false. אם המאפיין הזה מוגדר ל-true, האפליקציה שלך תקבל התראות ל-GoogleMap.OnPolygonClickListener שנרשמו דרך setOnPolygonClickListener(GoogleMap.OnPolygonClickListener).
תיוג
Object המשויך לפוליגון. לדוגמה, השדה Object יכול להכיל נתונים על מה שהפוליגון מייצג. זה קל יותר מאשר אחסון Map<Polygon, Object> נפרד. דוגמה נוספת: אפשר לשייך מזהה String שתואם למזהה ממערך נתונים. ה-SDK של מפות Google ל-Android לא קורא או כותב את הנכס הזה.

חובה לקרוא לשיטות במחלקה הזו ב-thread UI של Android. אחרת, המערכת תשליך IllegalStateException בזמן הריצה.

דוגמה

GoogleMap map;
 // ... get a map.
 // Add a triangle in the Gulf of Guinea
 Polygon polygon = map.addPolygon(new PolygonOptions()
     .add(new LatLng(0, 0), new LatLng(0, 5), new LatLng(3, 5), new LatLng(0, 0))
     .strokeColor(Color.RED)
     .fillColor(Color.BLUE));
 

מדריך למפתחים

מידע נוסף זמין במדריך למפתחים בנושא צורות.

סיכום אמצעי תשלום ציבורי

boolean
equals(אובייקט אחר)
הפונקציה בודקת אם Polygon הזה שווה לערך אחר.
int
getFillColor()
הפונקציה מקבלת את צבע המילוי של הפוליגון הזה.
List<List<LatLng>>
getHoles()
מחזירה תמונת מצב של החורים במצולע זה בשלב זה .
מחרוזת
getId()
הפונקציה מקבלת את המזהה של הפוליגון הזה.
List<LatLng>
getPoints()
מחזירה תמונת מצב של הקודקודים של המצולע באותו זמן .
int
getStrokeColor()
הפונקציה מקבלת את צבע הקווים של הפוליגון הזה.
int
getStrokeJointType()
הפונקציה מקבלת את סוג החיבור הקווי שבו נעשה שימוש בכל הקודקודים של קווי המתאר של הפוליגון.
List<PatternItem>
getStrokePattern()
הפונקציה מקבלת את תבנית הקווים של קווי המתאר של הפוליגון הזה.
float
getStrokeWidth()
הפונקציה מקבלת את רוחב הקווים של הפוליגון הזה.
אובייקט
getTag()
הפונקציה מקבלת את התג של הפוליגון.
float
getZIndex()
הפונקציה מקבלת את ה-zIndex של הפוליגון הזה.
int
boolean
isClickable()
הפונקציה מקבלת את הקליקביליות של הפוליגון.
boolean
isGeodesic()
הפונקציה הזו קובעת אם כל מקטע של הקו משורטט כגיאודזי או לא.
boolean
isVisible()
מקבל את החשיפה של הפוליגון הזה.
void
remove()
הסרת הפוליגון מהמפה.
void
setClickable(ערך בוליאני לחיץ)
מגדיר את הקליקביליות של הפוליגון.
void
setFillColor(צבע סנט)
הגדרת צבע המילוי של פוליגון זה.
void
setGeodesic(גיאודזי בוליאני)
קובעת אם לשרטט כל מקטע של הקו כגיאודזי או לא.
void
setHoles(רשימה<? מרחיב חורים של רשימה<LatLng>>)
מגדיר את החורים בפוליגון זה.
void
setPoints(רשימה<LatLng> נקודות)
מגדיר את הנקודות של פוליגון זה.
void
setStrokeColor(צבע צבע)
הגדרת צבע הקווים של הפוליגון הזה.
void
setStrokeJointType(int jointType)
הגדרת סוג החיבור לכל הקודקודים בקווי המתאר של הפוליגון.
void
setStrokePattern(רשימה<PatternItem> תבנית)
מגדיר את תבנית הקווים של קווי המתאר של הפוליגון.
void
setStrokeWidth(רוחב צף)
הגדרת רוחב הקווים של הפוליגון הזה.
void
setTag(תג אובייקט)
מגדיר את התג של הפוליגון.
void
setVisible(גלוי בוליאני)
מגדיר את החשיפה של הפוליגון הזה.
void
setZIndex(float zIndex)
מגדיר את zIndex של פוליגון זה.

סיכום שיטות שעברו בירושה

שיטות ציבוריות

ערך בוליאני ציבורי שווה (אובייקט אחר)

הפונקציה בודקת אם Polygon הזה שווה לערך אחר.

פרמטרים
אחר Object.
החזרות
  • TRUE אם שני האובייקטים הם אותו אובייקט, כלומר == אחר.

int ציבורי getFillColor ()

הפונקציה מקבלת את צבע המילוי של הפוליגון הזה.

החזרות
  • את הצבע בפורמט ARGB.

רשימה ציבורית<List<LatLng>> getHoles ()

מחזירה תמונת מצב של החורים במצולע זה בשלב זה . הרשימה שמוחזרת היא עותק של רשימת החורים, כך ששינויים בחורי הפוליגון לא יבואו לידי ביטוי ברשימה הזו, וכמו כן, שינויים ברשימה לא יבואו לידי ביטוי בפוליגון.

מחרוזת ציבורית getId ()

הפונקציה מקבלת את המזהה של הפוליגון הזה. המזהה יהיה ייחודי בין כל הפוליגונים במפה.

רשימה ציבורית<LatLng> getPoints ()

מחזירה תמונת מצב של הקודקודים של המצולע באותו זמן . הרשימה שמוחזרת היא עותק של רשימת הקודקודים ולכן שינויים בקודקודים של הפוליגון לא יבואו לידי ביטוי ברשימה זו, ושינויים ברשימה הזו לא יבואו לידי ביטוי בפוליגון. כדי לשנות את הקודקודים של הפוליגון, צריך לקרוא לפונקציה setPoints(List).

int ציבורי getStrokeColor ()

הפונקציה מקבלת את צבע הקווים של הפוליגון הזה.

החזרות
  • את הצבע בפורמט ARGB.

Public int getStrokeJointType ()

הפונקציה מקבלת את סוג החיבור הקווי שבו נעשה שימוש בכל הקודקודים של קווי המתאר של הפוליגון. ערכים אפשריים: JointType.

החזרות
  • סוג חיבור הקו.

רשימה ציבורית<PatternItem> getStrokePattern ()

הפונקציה מקבלת את תבנית הקווים של קווי המתאר של הפוליגון הזה.

החזרות
  • את תבנית הקווים.

מספר ממשי (float) ציבורי getStrokeWidth ()

הפונקציה מקבלת את רוחב הקווים של הפוליגון הזה.

החזרות
  • הרוחב בפיקסלים של המסך.

Public אובייקט getTag ()

הפונקציה מקבלת את התג של הפוליגון.

החזרות
  • התג אם התג הוגדר עם setTag; null אם לא הוגדר תג.

מספר ממשי (float) ציבורי getZIndex ()

הפונקציה מקבלת את ה-zIndex של הפוליגון הזה.

החזרות
  • את ה-zIndex של הפוליגון.

int ציבורי hashCode ()

ערך בוליאני ציבורי isClickable ()

הפונקציה מקבלת את הקליקביליות של הפוליגון. אם אפשר ללחוץ על הפוליגון, האפליקציה תקבל התראות ל-GoogleMap.OnPolygonClickListener כשהמשתמש ילחץ על הפוליגון. ה-event listener רשום דרך setOnPolygonClickListener(GoogleMap.OnPolygonClickListener).

החזרות
  • true אם ניתן ללחוץ על הפוליגון. אחרת, הפונקציה מחזירה את הערך false.

ערך בוליאני ציבורי isGeodesic ()

הפונקציה הזו קובעת אם כל מקטע של הקו משורטט כגיאודזי או לא.

החזרות
  • true אם כל מקטע משורטט כגיאודזי. false אם כל מקטע משורטט כקו ישר בהיטל המרקטור.

ערך בוליאני ציבורי isVisible ()

מקבל את החשיפה של הפוליגון הזה.

החזרות
  • החשיפה של הפוליגון.

Public void הסרה ()

הסרת הפוליגון מהמפה. לאחר הסרת פוליגון, ההתנהגות של כל השיטות שלו לא מוגדרת.

Public void setClickable (ניתנת ללחיצה בוליאנית)

מגדיר את הקליקביליות של הפוליגון. אם אפשר ללחוץ על הפוליגון, האפליקציה תקבל התראות ל-GoogleMap.OnPolygonClickListener כשהמשתמש ילחץ על הפוליגון. ה-event listener רשום דרך setOnPolygonClickListener(GoogleMap.OnPolygonClickListener).

פרמטרים
מאפשר לחיצה הגדרה חדשה ללחיצה על הפוליגון.

Public void setFillColor (int color)

הגדרת צבע המילוי של פוליגון זה.

פרמטרים
color [צבע] את הצבע בפורמט ARGB

Public void setGeodesic (boolean geodesic)

קובעת אם לשרטט כל מקטע של הקו כגיאודזי או לא.

פרמטרים
גיאודזי אם true, אז כל מקטע משורטט כגיאודזי. אם false, כל מקטע משורטט כקו ישר בהיטל המרקטור.

Public void setHoles (רשימה<? מרחיב חורי רשימה<LatLng>>)

מגדיר את החורים בפוליגון זה. השיטה הזו תיצור עותק של החורים, כך שמוטציות נוספות ל-holes לא ישפיעו על הפוליגון הזה.

פרמטרים
חורים רשימת חורים, כאשר חור הוא רשימה של LatLng.

Public void setPoints (רשימה<LatLng> נקודות)

מגדיר את הנקודות של פוליגון זה. השיטה הזו תיצור עותק של הנקודות, כך שמוטציות נוספות של points לא ישפיעו על הפוליגון הזה.

פרמטרים
נקודות רשימה של יחידות LatLng שהן הקודקודים של הפוליגון.

Public void setStrokeColor (int color)

הגדרת צבע הקווים של הפוליגון הזה.

פרמטרים
color [צבע] את הצבע בפורמט ARGB

Public void setStrokeJointType (int jointType)

הגדרת סוג החיבור לכל הקודקודים בקווי המתאר של הפוליגון.

הערכים המותרים מופיעים בכתובת JointType. ייעשה שימוש בערך ברירת המחדל DEFAULT אם סוג השילוב לא מוגדר או שאינו אחד מהערכים המותרים.

פרמטרים
jointType סוג חיבור הקו.

Public void setStrokePattern (List<PatternItem> דפוס)

מגדיר את תבנית הקווים של קווי המתאר של הפוליגון. דפוס הקווים המוגדר כברירת מחדל הוא קבוע ומיוצג על ידי null.

פרמטרים
קו ביטול נעילה את תבנית הקווים.

Public void setStrokeWidth (float רוחב)

הגדרת רוחב הקווים של הפוליגון הזה.

פרמטרים
רוחב הרוחב בפיקסלים לתצוגה.

Public void setTag (תג אובייקט)

מגדיר את התג של הפוליגון.

אפשר להשתמש במאפיין הזה כדי לשייך Object שרירותי לפוליגון הזה. לדוגמה, השדה Object יכול להכיל נתונים על מה שהפוליגון מייצג. זה קל יותר מאשר אחסון של שדה Map<Polygon, Object> נפרד. דוגמה נוספת: אפשר לשייך מזהה String שתואם למזהה ממערך נתונים. ה-SDK של מפות Google ל-Android לא קורא או כותב את הנכס הזה. עליך להפעיל את setTag(null) כדי לנקות את התג כשלא צריכים אותו יותר, כדי למנוע דליפות זיכרון באפליקציה.

פרמטרים
תג אם null, התג ינוקה.

Public void setVisible (boolean visible)

מגדיר את החשיפה של הפוליגון הזה. כשלא רואים את הפוליגון, לא משורטטים עליו, אבל כל המאפיינים האחרים שלו נשמרים.

פרמטרים
גלוי אם true, הפוליגון גלוי. אם false הוא לא גלוי.

Public void setZIndex (float zIndex)

מגדיר את zIndex של פוליגון זה. מצולעים עם אינדקסים גבוהים יותר משורטטים מעל אלה עם אינדקסים נמוכים יותר.

פרמטרים
zIndex את ה-zIndex של הפוליגון.