このページでは、データセットを地図に追加し、スタイル設定を適用する方法について説明します。
前提条件
先へ進む前に、マップ ID、地図スタイル、データセット ID を用意しましょう。
データセット ID を地図スタイルと関連付ける
データセットの対象物をスタイル設定するには、対象物にスタイル関数を データセット対象物レイヤです。データセット対象物レイヤは、 データセットを地図のスタイルに関連付ける
作成しておいたデータセットを使用する地図スタイルと関連付けましょう。手順は次のとおりです。
- Google Cloud コンソールで、[データセット] ページに移動します。
- 目的のデータセットの名前をクリックします。[データセットの詳細] ページが表示されます。
- [プレビュー] タ��をクリックします。
- [関連付けられている地図のスタイル] セクションで、
地図スタイルを追加します。
- 関連付ける地図スタイル(複数可)のチェックボックスをオンにして、[保存] をクリックします。
データセットにスタイルを適用する
データセット レイヤの対象物のスタイルを設定するには、
GMSDatasetFeature
。スタイルを定義する GMSFeatureStyle
を返します。
属性です。次に、スタイル プロパティをスタイル設定用クロージャに設定します。これには、
スタイル設定する。
スタイリングのクロージャは決定論的で、戻り値の一貫性がなければなりません。 自動的に適用されます。対象物のスタイリング仕様に スタイルを再び適用する必要があります。
ストローク、塗りつぶし、ポイントの半径を設定する
スタイル ファクトリ関数で対象物をスタイル設定する場合、次の要素を設定できます。
UIColor
で定義される枠線のストロークの色と不透明度 クラスです。デフォルト値は透明(UIColor.clearColor
)です。枠線のストローク幅(画面のピクセル単位)。デフォルト値は 2 です。
UIColor
クラスで定義されている塗りつぶしの色と不透明度。デフォルト 値が透明(UIColor.clearColor
)である。対象物のポイントの半径(0 ~ 128 ピクセル)。
単純なスタイル規則を使用する
対象物をスタイ��設定する最も簡単な方法は、 色、不透明度、線の太さを変更します対象物のスタイル オプションを カスタム スタイルと組み合わせて使用することもできます。
Swift
let mapView = GMSMapView(frame: .zero, mapID: GMSMapID(identifier: "YOUR_MAP_ID"), camera: GMSCameraPosition(latitude: 40.7, longitude: -74.0, zoom: 12)) let layer = mapView.datasetFeatureLayer(of: "YOUR_DATASET_ID") // Define a style with green fill and stroke. // Apply the style to all features in the dataset. layer.style = { feature in let style = MutableFeatureStyle() style.fillColor = .green.withAlphaComponent(0.1) style.strokeColor = .green style.strokeWidth = 2.0 return style }
Objective-C
GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero mapID:[GMSMapID mapIDWithIdentifier:@"MAP_ID"] camera:[GMSCameraPosition cameraWithLatitude: 40.7 longitude: -74.0 zoom:12]]; GMSDatasetFeatureLayer *layer = [mapView datasetFeatureLayerOfDatasetID:@"YOUR_DATASET_ID"]; // Define a style with green fill and stroke. // Apply the style to all features in the dataset. layer.style = ^(GMSDatasetFeature *feature) { GMSMutableFeatureStyle *style = [GMSMutableFeatureStyle style]; style.fillColor = [[UIColor greenColor] colorWithAlphaComponent:0.1]; style.strokeColor = [UIColor greenColor]; style.strokeWidth = 2.0; return style; };
宣言型のスタイル規則を使用する
スタイルルールは、対象物の属性に基づいて宣言的に設定できます。
データセット全体に適用できますnil
は、以下から返品できます:
対象物スタイル関数。たとえば、対象物のサブセットを
表示されません。
たとえば、
GMSDatasetFeature.datasetAttributes
特徴のデータセット属性の値を返すことができます。その後、カスタマイズする
その属性に基づいて、対象物のスタイルを設定できます。
この例では、「highlightColor」の値を決定しています。属性の を使用して、スタイル設定をコントロールします。
Swift
layer.style = { feature in var attributeColor: String = feature.datasetAttributes["highlightColor"] // Conditionalize styling based on the value of the "highlightColor" attribute. ... }
Objective-C
// Apply the style to a single dataset feature. layer.style = ^(GMSDatasetFeature *feature) { NSString *attributeColor = feature.datasetAttributes[@"highlightColor"]; // Conditionalize styling based on the value of the "highlightColor" attribute. ... };
レイヤからスタイル設定を削除する
レイヤからスタイル設定を削除するには、次のように style
を null
に設定します。
Swift
layer.style = nil
Objective-C
layer.style = nil;
一部の対象物を不可視のままにする場合などは、対象物スタイル関数(FeatureStyleFunction)で nil
を返すことも可能です。