折線

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

折線是清單的清單,其中連續點之間繪製線段。折線具備下列屬性:

積分
線條的頂點。系統會在連續點之間繪製線條區隔。根據預設,折線「不會」封閉。如要建立封閉折線,起點和終點必須相同。
寬度
螢幕區隔的螢幕寬度寬度保持不變,且與相機的縮放等級無關。預設值為 10。
顏色
折線圖採用 ARGB 格式,與 Color 使用的格式相同。 預設值為黑色 (0xff000000)。
開始/結尾上限
定義在折線的開頭或結尾要使用的形狀。支援的上限類型:ButtCapSquareCapRoundCap (適用於純筆劃圖案) 和 CustomCap (適用於任何筆劃圖案)。開始和結束預設值:ButtCap
連接類型
接合類型定義了在折線和所有頂點的所有頂點加入相鄰的線段時要使用的形狀。請參閱 JointType,瞭解支援的彙整類型。預設值為 DEFAULT
筆劃圖案
固體 (預設值,以 null 表示) 或序列中的 PatternItem 物件序列。可用的 PatternItem 類型:Gap (由像素寬度的間隔長度定義)、Dash (以線條寬度和像素長度的單位定義,以像素為單位) 和 Dot (以線條為中心,以線條為中心,直徑以線條寬度定義,以像素為單位)。
Z-index
此圖塊疊加層相對於其他疊加層的繪製順序 (包括 GroundOverlayTileOverlayCirclePolygon,但不是 Marker)。系統會將 Z-index 值較大的疊加層繪製在 Z 索引較低的疊加層上;具有相同 Z-index 的疊加層順序為任意順序。預設的 zIndex 為 0。
顯示設定
指出折線是否可見,例如是否繪製在地圖上。系統不會繪製隱藏的折線,但仍保留所有其他屬性。預設值為 true,也就是可見。
測地線狀態
指出折線是否應繪製為測地線段,而不是麥卡托投影中的直線。測地線是地球表面上兩點之間的最短路徑。測地線是依照地球的球體而建構的
可點擊性
如果想處理使用者點擊折線時觸發的事件,請將這個屬性設為 true。您隨時可以變更這個值。預設值為 false。如果這個屬性設為 true,應用程式將會收到透過 setOnPolylineClickListener(GoogleMap.OnPolylineClickListener) 註冊的 GoogleMap.OnPolylineClickListener 通知。
標記
與折線相關聯的 Object。舉例來說,Object 可包含折線代表的資料。這種做法比儲存單獨的 Map<Polyline, Object> 更輕鬆。另一個例子是,您可以將與 ID 對應的 String ID 與資料集建立關聯。Google Maps SDK for Android 不會讀取或寫入這項屬性。
Span
使用用來定義此折線的不同樣式定義 Span。您可以使用這個屬性在折線的不同區隔中建立含不同 StrokeStyle 的折線。

此類別的方法必須在 Android UI 執行緒上呼叫。否則,系統會在執行階段擲回 IllegalStateException

範例

GoogleMap map;
 // ... get a map.
 // Add a thin red line from London to New York.
 Polyline line = map.addPolyline(new PolylineOptions()
     .add(new LatLng(51.5, -0.1), new LatLng(40.7, -74.0))
     .width(5)
     .color(Color.RED));
 

開發人員指南

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

公用方法摘要

布林
等於(物件其他)
測試這個 Polyline 是否等於另一個。
整數
getColor()
取得此折線的顏色。
上限
getEndCap()
取得此折線末端端點上的端點。
字串
getId()
取得此折線和 ID。
整數
getJointType()
取得折線所有頂點使用的接合類型,但起始端點和端點除外。
List<PatternItem>
getPattern()
取得此折線的筆劃圖案。
List<LatLng>
getPoints()
傳回此折線目前頂點的快照。
上限
getStartCap()
取得此折線開頭端點的值。
物件
getTag()
取得折線的標記。
浮點值
getWidth()
取得此折線的寬度。
浮點值
getZIndex()
取得此折線的 zIndex。
整數
布林
isClickable()
取得折線的可點擊屬性。
布林
isGeodesic()
獲取線條的每段段是否繪製為測地線。
布林
isVisible()
取得此折線的顯示設定。
void
remove()
從地圖中移除此折線。
void
setClickable (布林值可點擊)
設定折線的可點擊屬性。
void
setColor(整數)
設定此折線的顏色。
void
setEndCap (Cap endCap)
設定此折線的末端頂點上限。
void
setGeodesic (布林值測地線)
設定是否要將線條的每一個片段繪製為測地線。
void
setJointType (int JointType)
設定折線所有頂點的連接類型,但起始端點和端點除外。
void
setPattern(List<PatternItem>pattern)
設定折線的筆劃圖案。
void
setPoints (清單<LatLng>點)
設定此折線的點。
void
setSpans(List<StyleSpan> spans)
設定折線的時距。
void
setStartCap(Cap startCap)
設定此折線的起始頂點的端點。
void
setTag(物件標記)
設定折線的標記。
void
setVisible (布林值顯示)
設定此折線的顯示設定。
void
setWidth(浮動寬度)
設定此折線的寬度。
void
setZIndex(浮動值 zIndex)
設定此折線的 zIndex。

繼承方法摘要

公用方法

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

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

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

public int getColor ()

取得此折線的顏色。

傳回
  • ARGB 格式的顏色。

publicCapgetEndCap()

取得此折線末端端點上的端點。

傳回
  • 結尾端點類型。

public String getId ()

取得此折線和 ID。地圖上所有折線中的 ID 均不得重複。

傳回
  • 此折線和 ID。

public int getJointType ()

取得折線所有頂點使用的接合類型,但起始端點和端點除外。請參閱 JointType 瞭解可能的值。

傳回
  • 連接類型。

public List<PatternItem> getPattern ()

取得此折線的筆劃圖案。

傳回
  • 筆劃圖案。

public List<LatLng> getPoints ()

傳回此折線目前頂點的快照。傳回的清單是頂點清單的副本,因此針對折線頂點進行的變更不會反映在這份清單中,也不會對折線進行反映。如要變更折線的頂點,請呼叫 setPoints(List)

publicCapgetStartCap()

取得此折線開頭端點的值。

傳回
  • 起始值。

public Object getTag ()

取得折線的標記。

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

public float getWidth ()

取得此折線的寬度。

傳回
  • 螢幕寬度。

public float getZIndex ()

取得此折線的 zIndex。

傳回
  • 折線的 zIndex。

public int hashCode ()

public 布林值 isClickable ()

取得折線的可點擊屬性。如果折線是可點擊的,使用者點擊折線時,您的應用程式就會通知 GoogleMap.OnPolylineClickListener。事件監聽器是透過 setOnPolylineClickListener(GoogleMap.OnPolylineClickListener) 註冊。

傳回
  • 如果折線是可點擊的 true,否則會傳回 false

public 布林值 isGeodesic ()

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

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

公開布林值 isVisible ()

取得此折線的顯示設定。

傳回
  • 此折線和顯示設定。

public 移除 ()

從地圖中移除此折線。移除折線後,所有方法的行為皆未定義。

public setClickable (布林值可點擊)

設定折線的可點擊屬性。如果折線是可點擊的,使用者點擊折線時,您的應用程式就會通知 GoogleMap.OnPolylineClickListener。事件監聽器是透過 setOnPolylineClickListener(GoogleMap.OnPolylineClickListener) 註冊。

參數
可點擊 新的折線可點擊設定。

public setColor (int color)

設定此折線的顏色。

參數
顏色 ARGB 格式的顏色

public setEndCap(Cap endCap)

設定此折線的末端頂點上限。預設的結尾展示值為 ButtCap

參數
endCap 結尾展示畫面。不得使用 null

public setGeodesic (布林值幾何圖形)

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

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

public setJointType (int JointType)

設定折線所有頂點的連接類型,但起始端點和端點除外。

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

參數
連接類型 連接類型。

public setPattern (List<PatternItem>pattern)

設定折線的筆劃圖案。預設的筆劃圖案為實心,以 null 表示。

參數
圖案 筆劃圖案。

public setPoints (List<LatLng> points)

設定此折線的點。此方法會複製點,因此對 points 的進一步變異不會影響這個折線。

參數
points 做為折線頂點的 LatLng 清單。

public setSpans (List<StyleSpan> spans)

設定折線的時距。

參數
範圍

public setStartCap(Cap startCap)

設定此折線的起始頂點的端點。預設開始上限為 ButtCap

參數
startCap 起始上限。不得為 null

public setTag (物件標記)

設定折線的標記。

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

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

public setVisible (布林值顯示)

設定此折線的顯示設定。如未顯示,系統不會繪製折線,但會保留所有其他屬性。

參數
顯示 如果為 true,則表示折線為可見;如果為 false,則為折線。

public setWidth (float width)

設定此折線的寬度。

參數
寬度 螢幕像素寬度

public setZIndex(float zIndex)

設定此折線的 zIndex。ZIN 索引值較高的折線繪製於指數較低的折線。

參數
ZIndex 此折線的 zIndex。