多邊形

透過集合功能整理內容 你可以依據偏好儲存及分類內容。
公開最終類別多邊形來擴充物件

地球表面上的多邊形。多邊形可以是凸面或凹面,可跨越 180 度的階線,並且可能包含空缺的孔。其屬性如下:

輪廓
外框以順時針或逆時針順序指定頂點清單。起點和終點不需要,而且如果沒有,多邊形會自動關閉。兩條路線的較短點 (東方或西方) 內相鄰的線段。
全彩
孔是指多邊形中未填滿的區域。孔的定位方式與輪廓完全相同。大綱中必須包含一個孔。您可以指定多個孔,但系統不支援重疊孔。
筆劃寬度
螢幕區隔的螢幕寬度寬度保持不變,且與相機的縮放等級無關。預設值為 10。
筆劃顏色
折線圖採用 ARGB 格式,與 Color 使用的格式相同。 預設值為黑色 (0xff000000)。
筆劃接種類型
連接類型定義了將多邊形和外框所有頂點合併的相鄰線條時要使用的形狀。請參閱 JointType,瞭解支援的彙整類型。預設值為 DEFAULT
筆劃圖案
固體 (預設以 null 表示) 或一系列 PatternItem 物件 (沿著多邊形和外框重複)。可用的 PatternItem 類型:Gap (由像素寬度的間隔長度定義)、Dash (以筆劃寬度和虛線長度的像素定義) 和 Dot (以多邊形為中心,以多邊形的筆劃為中心,以筆劃寬度表示的寬度) (以像素為單位)。
填滿顏色
填入 ARGB 格式的顏色,與 Color 使用的格式相同。預設值為透明 (0x00000000)。如果未正確指定多邊形幾何圖形 (請參閱上方大綱和空洞),則不會繪製任何填滿。
Z-index
此多邊形相對於其他疊加層的繪製順序,包括 PolylineCircleGroundOverlayTileOverlay,但 Marker 除外。系統會將 Z-index 值較大的疊加層繪製在 Z 索引較低的疊加層上;具有相同 Z-index 值的疊加層順序是任意的。預設值為 0。
顯示設定
指出多邊形是否可見,例如是否繪製在地圖上。系統不會繪製不可見的多邊形,但會保留所有其他屬性。預設值為 true,也就是可見。
測地線狀態
指出多邊形是否應繪製成測地線段,而非麥卡托投影中的直線。測地線是地球表面上兩點之間的最短路徑。測地線是依照地球的球體而建構的
可點擊性
如要處理使用者點選多邊形時觸發的事件,請將這個屬性設為 true。您隨時可以變更這個值。預設值為 false。如果這個屬性設為 true,應用程式將會收到透過 setOnPolygonClickListener(GoogleMap.OnPolygonClickListener) 註冊的 GoogleMap.OnPolygonClickListener 通知。
標記
與多邊形相關聯的 Object。舉例來說,Object 可包含多邊形代表的資料。這種做法比儲存單獨的 Map<Polygon, Object> 更輕鬆。另一個例子是,您可以將與 ID 對應的 String ID 與資料集建立關聯。Google 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));
 

開發人員指南

詳情請參閱形狀開發人員指南。

公用方法摘要

布林
等於(物件其他)
測試這個 Polygon 是否等於另一個。
整數
getFillColor()
取得此多邊形的填滿顏色。
List<List<LatLng>>
getHoles()
傳回此多邊形孔的快照。
字串
getId()
取得這個多邊形的 ID。
List<LatLng>
getPoints()
傳回此多邊形的頂點快照。
整數
getStrokeColor()
取得這個多邊形的筆劃顏色。
整數
getStrokeJointType()
取得多邊形外框所有頂點使用的筆劃接縫類型。
List<PatternItem>
getStrokePattern()
取得這個多邊形的筆劃圖案。
浮點值
getStrokeWidth()
取得此多邊形的筆劃寬度。
物件
getTag()
取得多邊形的標記。
浮點值
getZIndex()
取得這個多邊形的 zIndex。
整數
布林
isClickable()
取得多邊形的可點擊性。
布林
isGeodesic()
獲取線條的每段段是否繪製為測地線。
布林
isVisible()
取得此多邊形的顯示設定。
void
remove()
從地圖中移除多邊形。
void
setClickable (布林值可點擊)
設定多邊形的可點擊性。
void
setFillColor (整數)
設定此多邊形的填滿顏色。
void
setGeodesic(布林值測地線)
設定是否要將線條的每一個片段繪製為測地線。
void
setHoles(List<?extends List<LatLng>> hole)
設定此多邊形的空洞。
void
setPoints (清單<LatLng>點)
設定此多邊形的點。
void
setStrokeColor (整數)
設定此多邊形的筆劃顏色。
void
setStrokeJointType(整數的彙整類型)
設定多邊形外框所有頂點的連接類型。
void
setStrokePattern (清單<圖案項目> 模式)
設定多邊形和外框的筆劃圖案。
void
setStrokeWidth(浮動寬度)
設定此多邊形的筆劃寬度。
void
setTag (物件標記)
設定多邊形的標記。
void
setVisible(布林值顯示)
設定此多邊形的顯示設定。
void
setZIndex(浮動值 zIndex)
設定此多邊形的 zIndex。

繼承方法摘要

公用方法

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

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

參數
其他 Object
傳回
  • 如果兩個物件都相同,則物件的值為 true,也就是其他值 ==。

public int getFillColor()

取得此多邊形的填滿顏色。

傳回
  • ARGB 格式的顏色。

public List<List<LatLng>> getHoles ()

傳回此多邊形孔的快照。傳回的清單是空洞清單的副本,因此多邊形的孔不會反映在此清單中,也不會由多邊形反映。

public String getId ()

取得這個多邊形的 ID。地圖上顯示的所有多邊形 ID 不得重複。

public List<LatLng> getPoints ()

傳回此多邊形的頂點快照。傳回的清單是頂點清單的副本,因此多邊形的頂點不會反映在這份清單中,也不會對多邊形反映任何變更。如要變更多邊形的頂點,請呼叫 setPoints(List)

public int getStrokeColor ()

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

傳回
  • ARGB 格式的顏色。

public int getStrokeJointType ()

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

傳回
  • 筆劃關節類型。

public List<PatternItem> getStrokePattern ()

取得這個多邊形的筆劃圖案。

傳回
  • 筆劃圖案。

public float getStrokeWidth()

取得此多邊形的筆劃寬度。

傳回
  • 螢幕寬度。

public Object getTag ()

取得多邊形的標記。

傳回
  • 如使用 setTag 設定標記,如未設定標記則傳回 null

public float getZIndex ()

取得這個多邊形的 zIndex。

傳回
  • 多邊形的 zIndex。

public int hashCode ()

public 布林值 isClickable ()

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

傳回
  • 如果多邊形是可點擊的 true,否則會傳回 false

public 布林值 isGeodesic ()

獲取線條的每段段是否繪製為測地線。

傳回
  • 如果每個片段都是以測地線段繪製,則為 true;如果區隔在麥卡托投影中繪製為直線,則為 false

公開布林值 isVisible ()

取得此多邊形的顯示設定。

傳回
  • 此多邊形顯示設定。

public 移除 ()

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

public setClickable (布林值可點擊)

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

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

public setFillColor (整數)

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

參數
顏色 ARGB 格式的顏色

public setGeodesic (布林值幾何圖形)

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

參數
geodesic 如為 true,則每個片段都會繪製為測地線;如果為 false,每個區隔則會在麥卡托投影中繪製為直線。

public setHoles (List<?extends List<LatLng>> hole)

設定此多邊形的空洞。此方法會複製孔,因此對 holes 的額外變異不會對此多邊形造成影響。

參數
孔清單,其中空白處是 LatLngs。

public setPoints (List<LatLng> points)

設定此多邊形的點。此方法會複製點,因此對 points 的進一步變異對這個多邊形沒有影響。

參數
points 包含多邊形頂點的 LatLng 清單。

public setStrokeColor(整數顏色)

設定此多邊形的筆劃顏色。

參數
顏色 ARGB 格式的顏色

public setStrokeJointType(int JointType)

設定多邊形外框所有頂點的連接類型。

如要瞭解允許的值,請參閱 JointType。如果未定義連接類型或非許可值,系統就會使用預設值 DEFAULT

參數
連接類型 筆劃關節類型。

public setStrokePattern(List<PatternItem>pattern)

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

參數
圖案 筆劃圖案。

public setStrokeWidth(浮點寬度)

設定此多邊形的筆劃寬度。

參數
寬度 顯示寬度的單位。

public setTag (物件標記)

設定多邊形的標記。

您可以使用這個屬性將任意 Object 與此多邊形建立關聯。舉例來說,Object 可以包含多邊形代表的資料。這種做法比儲存單獨的 Map<Polygon, Object> 更輕鬆。另一個例子是,您可以將 String 對應的 ID 與資料集中的 ID 建立關聯。Google Maps SDK for Android 不會讀取或寫入這項屬性。不再需要使用標記時,您必須呼叫 setTag(null) 清除標記,以免應用程式發生記憶體流失。

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

public setVisible (布林值顯示)

設定此多邊形的顯示設定。如未顯示,多邊形就不會繪製,但會保留所有其他屬性。

參數
顯示 如為 true,則表示多邊形為可見;如果為 false,則不會顯示。

public setZIndex(float zIndex)

設定此多邊形的 zIndex。zIndi 值較高的多邊形會繪製在較低索引的多邊形之上。

參數
ZIndex 此多邊形的 zIndex。