หน้านี้จะแสดงวิธีเพิ่มชุดข้อมูลลงในแผนที่และใช้การจัดรูปแบบ
ข้อกำหนดเบื้องต้น
คุณควรมีรหัสแผนที่และรูปแบบแผนที่ รวมถึงรหัสชุดข้อมูลก่อนดำเนินการต่อ
เชื่อมโยงรหัสชุดข้อมูลกับรูปแบบแผนที่
หากต้องการจัดสไตล์ฟีเจอร์ของชุดข้อมูล ให้ใช้ฟังก์ชันสไตล์กับเลเยอร์ฟีเจอร์ชุดข้อมูลของแผนที่ ระบบจะสร้างเลเยอร์ฟีเจอร์ชุดข้อมูลเมื่อคุณ เชื่อมโยงชุดข้อมูลกับรูปแบบแผนที่
ทำตามขั้นตอนต่อไปนี้เพื่อเชื่อมโยงชุดข้อมูลกับรูปแบบแผนที่ โดยใช้:
- ในคอนโซล Google Cloud ให้ไปที่หน้าชุดข้อมูล
- คลิกชื่อชุดข้อมูล หน้ารายละเอียดชุดข้อมูลจะปรากฏขึ้น
- คลิกแท็บแสดงตัวอย่าง
- ในส่วนรูปแบบแผนที่ที่เกี่ยวข้อง ให้คลิก
เพิ่มรูปแบบแผนที่
- คลิกช่องทําเครื่องหมายสําหรับรูปแบบแผนที่ที่ต้องการเชื่อมโยง แล้วคลิก บันทึก
นำรูปแบบไปใช้กับชุดข้อมูล
ในการจัดรูปแบบคุณลักษณะของเลเยอร์ชุดข้อมูล ให้ใช้การปิดการจัดรูปแบบที่ยอมรับ
GMSDatasetFeature
และแสดงค่า GMSFeatureStyle
เพื่อกำหนดรูปแบบ
จากนั้นตั้งค่าพร็อพเพอร์ตี้สไตล์เป็น Closure การจัดรูปแบบ ซึ่งมีเหตุผลการจัดรูปแบบ
การปิดการจัดรูปแบบจำเป็นต้องกำหนดได้และให้ผลลัพธ์ที่สอดคล้องกัน เมื่อนำมาใช้ หากข้อกำหนดการจัดรูปแบบฟีเจอร์ มีการเปลี่ยนแปลง จะต้องใช้รูปแบบอีกครั้ง
ตั้งค่าเส้นโครงร่าง สีเติม และรัศมีสำหรับจุด
เมื่อจัดรูปแบบฟีเจอร์ในฟังก์ชันเริ่มต้นของรูปแบบ คุณสามารถตั้งค่าฟังก์ชันต่อไปนี้
สีเส้นโครงร่างและความทึบแสงของเส้นขอบตามที่กำหนดโดย
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;
คุณยังแสดงผล nil
จากฟังก์ชันรูปแบบฟีเจอร์ได้ด้วย ตัวอย่างเช่น หาก
ต้องการให้คุณลักษณะบางส่วนยังคงมองไม่เห็น