Polygon

公開最終課 多邊形 擴充物件

地球表面上的多邊形。多邊形可以是凸面或斜體,可以橫跨 180 個 而且可能有未填滿的孔。並包含下列屬性:

輪廓
外框是由以順時針或逆時針順序的端點清單指定。這項服務 不需要更改起點和終點;如果沒有,多邊形 線段是由較短的連續點之間繪製 (東或西)。
孔洞
孔是多邊形中未填滿的區域。坑洞位置 與外框相同輪廓必須完全包含在輪廓中。多個 可指定孔,但是不支援重疊的孔。
筆劃寬度
螢幕像素中的線段寬度。寬度會固定,獨立於相機的 或縮放等級。預設值為 10。
筆劃顏色
採用 ARGB 格式的線段顏色,與 Color 所使用的格式相同。 預設值為黑色 (0xff000000)。
筆劃接頭類型
連接類型定義了要用於彙整相鄰線段的形狀 多邊形輪廓的頂點。如要瞭解支援的彙整類型,請參閱 JointType。 預設值為 DEFAULT
筆劃圖案
實線 (預設,以 null 表示) 或 PatternItem 物件的序列 和多邊形的外框重複。可用的 PatternItem 類型:Gap (以像素長度定義)、Dash (以筆劃寬度和破折號定義) 以像素為單位) 和 Dot (圓形、以多邊形的輪廓為中心,直徑為中心) 定義)。
填滿顏色
使用 ARGB 格式填滿顏色,與 Color 所使用的格式相同。 預設值為透明 (0x00000000)。如果未指定多邊形幾何圖形 正確 (請參閱上述的 Outline 和 Holes),則不會繪製任何填滿。
Z 索引
這個多邊形與其他疊加層之間的繪製順序,包括 PolylineCircleGroundOverlayTileOverlay,但不包括 Marker 秒。系統會將 Z-index 值較大的疊加層繪製在較小的疊加層上 Z 索引。如果疊加層的 Z-index 值相同,則疊加順序是隨機決定的。預設值為 0.
能見度
指出多邊形是否可見,亦即是否在地圖上繪製。一個 不可見的多邊形不會繪製,但會保留其所有其他屬性。預設值為 true,也就是可見。
測地線狀態
指出多邊形路段是否應繪製為測地線,而非 麥卡托投影上的直線。測地線是兩條線之間的最短路徑 就會發生故障並假設地球為 球體
,瞭解如何調查及移除這項存取權。
可點擊屬性
如要處理使用者點擊多邊形時觸發的事件,請將這項屬性設為 true。您隨時可以變更這個值。預設值為 false。如果這是 屬性設為 true,您的應用程式將收到透過 setOnPolygonClickListener(GoogleMap.OnPolygonClickListener) 註冊的 GoogleMap.OnPolygonClickListener 通知。
標記
與多邊形相關聯的 Object。例如,Object 可以包含 多邊形所代表意義的相關資料這種做法比儲存單獨的 Map<Polygon, Object> 更簡單。另一個範例是,您可以將 String ID 對應至資料集的 IDGoogle Maps SDK for Android 未讀取和 寫入此屬性。

此類別中的方法必須在 Android UI 執行緒上呼叫。否則會在執行階段擲回 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
等於(物件其他)
測試此 Polygon 是否等於另一個。
int
getFillColor()
取得這個多邊形的填滿顏色。
清單<LatLng>>
getHoles()
傳回此多邊形目前孔的快照。
字串
getId()
取得這個多邊形的 ID。
清單<LatLng>
getPoints()
傳回此多邊形目前端點的快照。
int
getStrokeColor()
取得這個多邊形的筆劃顏色。
int
getStrokeJointType()
取得多邊形外框所有頂點使用的筆劃連接類型。
清單<PatternItem>
getStrokePattern()
取得多邊形輪廓的筆劃圖案。
float
getStrokeWidth()
取得這個多邊形的筆劃寬度。
物品
getTag()
取得多邊形的標記。
float
getZIndex()
取得這個多邊形的 zIndex。
int
boolean
isClickable()
取得多邊形的可點擊性。
boolean
isGeodesic()
取得線條的每個線段是否以測地線繪製。
boolean
isVisible()
取得這個多邊形的可見度。
void
remove()
從地圖中移除多邊形。
void
setClickable(可點擊的布林值)
設定多邊形的可點擊性。
void
setFillColor(色調)
設定此多邊形的填滿顏色。
void
setGeodesic(boolean geodesic)
設定是否要繪製線條每個線段的測地線。
void
setHoles(List<? extends List<LatLng>> 洞)
設定這個多邊形的孔。
void
setPoints(List<LatLng> Point)
設定這個多邊形的點。
void
setStrokeColor(色調)
設定這個多邊形的筆劃顏色。
void
setStrokeJointType(int jointType)
設定多邊形輪廓所有頂點的連接類型。
void
setStrokePattern(List<PatternItem> 模式)
設定多邊形外框的筆劃圖案。
void
setStrokeWidth(浮點寬度)
設定這個多邊形的筆劃寬度。
void
setTag(物件標記)
設定多邊形的標記。
void
setVisible(boolean visible)
設定這個多邊形的顯示設定。
void
setZIndex(浮點 zIndex)
設定這個多邊形的 zIndex。

繼承方法摘要

公用方法

公開 布林值 等於 (其他物件)

測試此 Polygon 是否等於另一個。

參數
其他 Object
傳回
  • 如果兩個物件是同一個物件,也就是 == other。

公開 攔截 getFillColor ()

取得這個多邊形的填滿顏色。

傳回
  • 也呈現出 ARGB 格式的色彩

公開 清單<List<LatLng>> getHoles ()

傳回此多邊形目前孔的快照。傳回的清單是 因此,此清單也不會反映此多邊形中洞的變更 這個清單的變更會反映在多邊形上

公開 字串 getId ()

取得這個多邊形的 ID。地圖上所有的多邊形都不會有相同的 ID。

公開 清單<LatLng> getPoints ()

傳回此多邊形目前端點的快照。傳回的清單為副本 因此對多邊形頂點所做的變更不會反映到 也不會對這份清單進行的變更。如要變更 多邊形,呼叫 setPoints(List)

公開 攔截 getStrokeColor ()

取得這個多邊形的筆劃顏色。

傳回
  • 也呈現出 ARGB 格式的色彩

公開 攔截 getStrokeJointType ()

取得多邊形外框所有頂點使用的筆劃連接類型。詳情請參閱 JointType 可能的值

傳回
  • 筆劃接頭類型

公開 清單<PatternItem> getStrokePattern ()

取得多邊形輪廓的筆劃圖案。

傳回
  • 以及筆觸圖案

公開 浮點值 getStrokeWidth ()

取得這個多邊形的筆劃寬度。

傳回
  • 以螢幕像素為單位的寬度

公開 物品 getTag ()

取得多邊形的標記。

傳回
  • 標記 (如果使用 setTag 設定標記);如果未設定任何代碼,則為 null

公開 浮點值 getZIndex ()

取得這個多邊形的 zIndex。

傳回
  • 多邊形的 zIndex。

公開 攔截 hashCode ()

公開 布林值 isClickable ()

取得多邊形的可點擊性。如果多邊形可以點擊,您的應用程式就會收到 當使用者按一下多邊形時,會向 GoogleMap.OnPolygonClickListener 發出通知。 事件監聽器是透過 setOnPolygonClickListener(GoogleMap.OnPolygonClickListener) 註冊。

傳回
  • 如果多邊形可點擊,則為 true;如果沒有,則會傳回 false

公開 布林值 isGeodesic ()

取得線條的每個線段是否以測地線繪製。

傳回
  • true (如果每個線段繪製為測地線);如果每個區隔都是false 繪製在麥卡托投影上時,以直線繪製。

公開 布林值 isVisible ()

取得這個多邊形的可見度。

傳回
  • 這個多邊形能見度。

公開 void 移除 ()

從地圖中移除多邊形。移除某個多邊形後,該多邊形的所有行為 方法均未定義。

公開 void setClickable (可點擊布林值)

設定多邊形的可點擊性。如果多邊形可以點擊,您的應用程式就會收到 當使用者按一下多邊形時,會向 GoogleMap.OnPolygonClickListener 發出通知。 事件監聽器是透過 setOnPolygonClickListener(GoogleMap.OnPolygonClickListener) 註冊。

參數
可點擊 新增多邊形的可點擊性設定。

公開 void setFillColor (顏色)

設定此多邊形的填滿顏色。

參數
顏色 ARGB 格式的顏色

公開 void setGeodesic (布林值測地線)

設定是否要繪製線條每個線段的測地線。

參數
geodesic 如果是 true,則每個線段繪製成測地線;如 false、 每個線段在麥卡托投影中會以直線繪製。

公開 void setHoles (List<? extends List<LatLng>>洞)

設定這個多邊形的孔。這個方法會擷取孔洞,因此後續變動 到 holes 不會對這個多邊形產生任何影響。

參數
孔洞清單,其中孔是 LatLng 的清單。

公開 void setPoints (List<LatLng> 點)

設定這個多邊形的點。這個方法會複製點數,因此 對 points 的異動不會對這個多邊形造成任何影響。

參數
points 這個 LatLng 清單是多邊形的頂點。

公開 void setStrokeColor (顏色)

設定這個多邊形的筆劃顏色。

參數
顏色 ARGB 格式的顏色

公開 void setStrokeJointType (int jointType)

設定多邊形輪廓所有頂點的連接類型。

如要瞭解允許的值,請參閱 JointType。預設值 DEFAULT 將 在彙整類型未定義或不是允許值的情況下使用。

參數
jointType 筆劃接頭類型

公開 void setStrokePattern (List<PatternItem> 模式)

設定多邊形外框的筆劃圖案。預設的筆劃圖案為實心。 以 null 表示。

參數
圖案 以及筆觸圖案

公開 void setStrokeWidth (浮點寬度)

設定這個多邊形的筆劃寬度。

參數
寬度 以顯示像素的寬度為準

公開 void setTag (物件標記)

設定多邊形的標記。

您可以使用這個屬性,將任意 Object 與這個多邊形建立關聯。適用對象 舉例來說,Object 可以包含多邊形所代表的相關資料。這樣比較容易 而不是儲存獨立的 Map<Polygon, Object>再舉一個例子,您可以將 與資料集的 ID 對應的 String ID。Google Maps SDK for Android 不會讀取或寫入這個屬性您有責任呼叫 setTag(null) 指出問題所在 ,以避免應用程式發生記憶體流失的問題。

參數
標記 如果為空值,系統會清除標記。

公開 void setVisible (可見布林值)

設定這個多邊形的顯示設定。在不可見的情況下,多邊形不會繪製,但會保留全部 和其他屬性

參數
顯示 如果 true,則可以看到多邊形;如果為 false,則不是。

公開 void setZIndex (浮點值 zIndex)

設定這個多邊形的 zIndex。zIndice 較高的多邊形會繪製在數值較低的多邊形之上 索引。

參數
zIndex 這個多邊形的 zIndex。