地表上のポリゴン。ポリゴンには、凸面または凸面があり、それらが 180 子午線に及び、穴が埋められていない場合もあります。次のプロパティがあります。
- アウトライン
- アウトラインは、頂点のリストによって、時計回りまたは反時計回りの順に指定されます。始点と終点が一致する必要はありません。一致していない場合、ポリゴンは自動的に閉じられます。線分は、両方向(東または西)の短い方の連続する点の間に描画されます。
- 穴
- 穴は、ポリゴンの内部にある塗りつぶしされていない領域です。穴は、輪郭線とまったく同じ方法で指定されます。輪郭内に穴が完全に空いている必要があります。複数の穴を指定できますが、同じ穴を重複させることはできません。
- ストロークの幅
- 線分の幅(画面ピクセル単位)。幅は一定であり、カメラのズームレベルとは無関係です。デフォルト値は 10 です。
- ストロークの色
Color
で使用されているものと同じ形式の ARGB 形式の線分色。 デフォルト値は黒(0xff000000
)です。- ストローク ジョイントのタイプ
- ジョイント タイプは、ポリゴンのアウトラインのすべての頂点で隣接するライン セグメントを結合するときに使用するシェイプを定義します。サポートされているジョイント タイプについては、
JointType
をご覧ください。デフォルト値はDEFAULT
です。 - ストロークのパターン
- ポリゴンの枠線に沿って繰り返し実行される単色の(デフォルト、
null
で表される)または一連のPatternItem
オブジェクト。使用可能なPatternItem
タイプ:Gap
(ギャップの長さ(ピクセル単位))、Dash
(ストローク幅とダッシュの長さで定義)、Dot
(ポリゴン、アウトラインの中心、ストローク幅(ピクセル単位)) - 塗りつぶしの色
Color
で使用されているものと同じ形式の ARGB 形式で塗りつぶし。デフォルト値は透明度(0x00000000
)です。ポリゴン ジオメトリが正しく指定されていない場合(前述の「アウトラインとホール」を参照)、塗りつぶしは描画されません。- Z-Index
- このポリゴンが他のオーバーレイに対して相対的に描画される順序(
Polyline
、Circle
、GroundOverlay
、TileOverlay
など。ただし、Marker
は描画しない)。z インデックスが大きいオーバーレイは、z インデックスが小さいオーバーレイの上に描画されます。z インデックス値が同じオーバーレイの順序は任意です。デフォルトは 0 です。 - 可視性
- ポリゴンが表示可能かどうか、つまり地図上に描画されたかどうかを示します。非表示のポリゴンは描画されませんが、他のすべてのプロパティが保持されます。デフォルトは
true
です。つまり表示されます。 - 測地線ステータス
- メルカトル図法上の直線ではなく、ポリゴンのセグメントを測地線として描画するかどうかを指定します。測地線は、地表面上の 2 地点間の最短経路です。測地線曲線は、地球が球体であると仮定して構築されています。
- クリック可能
- ユーザーがポリゴンをクリックしたときにイベントが発生するようにするには、このプロパティを
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));
デベロッパー ガイド
詳しくは、シェイプのデベロッパー ガイドをご覧ください。
パブリック メソッドの概要
ブール値 | |
整数 |
getFillColor()
このポリゴンの塗りつぶし色を取得します。
|
List<List<LatLng>> |
getHoles()
このときのポリゴンの穴のスナップショットを返します。
|
文字列 |
getId()
このポリゴンの ID を取得します。
|
List<LatLng> |
getPoints()
その時点でこのポリゴンの頂点のスナップショットを返します。
|
整数 |
getStrokeColor()
このポリゴンのストローク色を取得します。
|
整数 |
getStrokeJointType()
ポリゴンのアウトラインのすべての頂点で使用されるストローク ジョイント タイプを取得します。
|
List<PatternItem> |
getStrokePattern()
このポリゴンのアウトラインのストローク パターンを取得します。
|
浮動小数点数 |
getStrokeWidth()
このポリゴンのストローク幅を取得します。
|
オブジェクト |
getTag()
ポリゴンのタグを取得します。
|
浮動小数点数 |
getZIndex()
このポリゴンの zIndex を取得します。
|
整数 |
hashCode()
|
ブール値 |
isClickable()
ポリゴンのクリック可能性を取得します。
|
ブール値 |
isGeodesic()
ラインの各セグメントを測地線として描画するかどうかを指定します。
|
ブール値 |
isVisible()
このポリゴンの視認性を取得します。
|
void |
remove()
地図からポリゴンを除去します。
|
void |
setClickable(クリック可能なブール値)
ポリゴンのクリック可能性を設定します。
|
void |
setFillColor(int color)
このポリゴンの塗りつぶしの色を設定します。
|
void |
setGeodesic(ブール値の測地線)
ラインの各セグメントを測地線として描画するかどうかを設定します。
|
void | |
void | |
void |
setStrokeColor(int color)
このポリゴンのストローク色を設定します。
|
void |
setStrokeJointType(int joinType)
ポリゴンのアウトラインのすべての頂点のジョイント タイプを設定します。
|
void | |
void |
setStrokeWidth(浮動小数点幅)
このポリゴンのストローク幅を設定します。
|
void |
setTag(オブジェクト タグ)
ポリゴンのタグを設定します。
|
void |
setVisible(ブール値を表示)
このポリゴンの表示を設定します。
|
void |
setZIndex(浮動小数点数の zIndex)
このポリゴンの zIndex を設定します。
|
継承されたメソッドの概要
パブリック メソッド
public boolean equals (Object other)
public int getFillColor ()
このポリゴンの塗りつぶし色を取得します。
戻り値
- ARGB 形式の色。
public List<List<LatLng>> getHoles ()
このときのポリゴンの穴のスナップショットを返します。返されるリストは、穴のリストのコピーであるため、ポリゴンに加えた変更はポリゴンには反映されません。また、このリストへの変更もポリゴンに反映されません。
公開 文字列 getId ()
このポリゴンの ID を取得します。この ID は、地図上のすべてのポリゴンにおいて一意です。
public List<LatLng> getPoints ()
その時点でこのポリゴンの頂点のスナップショットを返します。返されるリストは頂点のリストのコピーであるため、ポリゴンの頂点への変更はこのリストには反映されません。また、このリストへの変更はポリゴンに反映されません。ポリゴンの頂点を変更するには、setPoints(List)
を呼び出します。
public int getStrokeColor ()
このポリゴンのストローク色を取得します。
戻り値
- ARGB 形式の色。
public int getStrokeJointType ()
ポリゴンのアウトラインのすべての頂点で使用されるストローク ジョイント タイプを取得します。設定可能な値については、JointType
をご覧ください。
戻り値
- ストローク ジョイントのタイプ。
public float getStrokeWidth ()
このポリゴンのストローク幅を取得します。
戻り値
- 画面ピクセル幅。
public Object getTag ()
ポリゴンのタグを取得します。
戻り値
- タグが
setTag
に設定されている場合はタグ。タグが設定されていない場合はnull
。
public float getZIndex ()
このポリゴンの zIndex を取得します。
戻り値
- ポリゴンの zIndex。
public int hashCode ()
public boolean isClickable ()
ポリゴンのクリック可能性を取得します。ポリゴンがクリック可能な場合、ユーザーがポリゴンをクリックすると、アプリは GoogleMap.OnPolygonClickListener
に通知を受け取ります。イベント リスナーは setOnPolygonClickListener(GoogleMap.OnPolygonClickListener)
を介して登録されます。
戻り値
- ポリゴンがクリック可能である場合は
true
、それ以外の場合はfalse
を返します。
public boolean isGeodesic ()
ラインの各セグメントを測地線として描画するかどうかを指定します。
戻り値
- 各セグメントが測地線として描画される場合、
true
。各セグメントがメルカトル図法上の直線として描画される場合。false
public boolean isVisible ()
このポリゴンの視認性を取得します。
戻り値
- このポリゴンの表示設定です。
public void remove ()
地図からポリゴンを除去します。ポリゴンを除去した後、すべてのメソッドの動作は未定義になります。
public void setClickable (ブール値のクリック可能)
ポリゴンのクリック可能性を設定します。ポリゴンがクリック可能な場合、ユーザーがポリゴンをクリックすると、アプリは GoogleMap.OnPolygonClickListener
に通知を受け取ります。イベント リスナーは setOnPolygonClickListener(GoogleMap.OnPolygonClickListener)
を介して登録されます。
パラメータ
クリックできます | ポリゴンの新しいクリック可能性設定。 |
---|
public void setFillColor (int color)
このポリゴンの塗りつぶしの色を設定します。
パラメータ
色 | ARGB 形式の色 |
---|
public void setGeodesic (ブール値の測地線)
ラインの各セグメントを測地線として描画するかどうかを設定します。
パラメータ
geodesic | true の場合、各セグメントは測地線として描画されます。false の場合、各セグメントはメルカトル図法上に直線として描画されます。 |
---|
public void setHoles (List<? は List<LatLng>> 穴を拡張する)
このポリゴンの穴を設定します。このメソッドでは穴のコピーが取得されるため、holes
にミューテーションを追加してもこのポリゴンには影響しません。
パラメータ
holes | ホールのリスト。ホールは LatLng のリストです。 |
---|
public void setPoints (List<LatLng> points)
このポリゴンの点を設定します。このメソッドは点のコピーを取得するため、points
に変更を加えてもこのポリゴンには影響しません。
パラメータ
points | ポリゴンの頂点である LatLng のリスト。 |
---|
public void setStrokeColor (int color)
このポリゴンのストローク色を設定します。
パラメータ
色 | ARGB 形式の色 |
---|
public void setStrokeJointType (int joinType)
public void setStrokePattern (List<PatternItem> pattern)
ポリゴンのストロークのパターンを設定します。デフォルトのストローク パターンは単色で、null
で表されます。
パラメータ
pattern | ストロークのパターン。 |
---|
public void setStrokeWidth (浮動小数点幅)
このポリゴンのストローク幅を設定します。
パラメータ
width | 表示ピクセルの幅。 |
---|
public void setTag (オブジェクト タグ)
ポリゴンのタグを設定します。
このプロパティを使用すると、任意の Object
をこのポリゴンに関連付けることができます。たとえば、Object
にはポリゴンが表す内容に関するデータを含めることができます。別の Map<Polygon, Object>
を保存するよりも簡単です。別の例として、データセットの ID に対応する String
ID を関連付けることができます。Google Maps SDK for Android は、このプロパティの読み取りも書き込みも行いません。アプリのメモリリークを防ぐため、不要になったら setTag(null)
を呼び出してタグを消去する必要があります。
パラメータ
タグ | null の場合、タグはクリアされます。 |
---|
public void setVisible (ブール値の表示)
このポリゴンの表示を設定します。表示されていない場合、ポリゴンは描画されませんが、他のすべてのプロパティは保持されます。
パラメータ
表示 | true の場合はポリゴンが表示され、false の場合は表示されません。
|
---|
public void setZIndex (浮動小数点数 zIndex)
このポリゴンの zIndex を設定します。z インデックスが大きいポリゴンは、インデックスが低いインデックスの上に描画されます。
パラメータ
Z-index | このポリゴンの zIndex。 |
---|