این صفحه به شما نشان میدهد که چگونه یک مجموعه داده را به نقشه اضافه کنید و یک ظاهر طراحی کنید.
پیش نیازها
قبل از ادامه، باید یک شناسه نقشه و سبک نقشه و یک شناسه مجموعه داده داشته باشید.
شناسه مجموعه داده را با سبک نقشه مرتبط کنید
برای استایل دادن به ویژگیهای یک مجموعه داده، یک تابع سبک را در لایه ویژگی مجموعه داده یک نقشه اعمال میکنید. لایه ویژگی مجموعه داده زمانی ایجاد می شود که یک مجموعه داده را با یک سبک نقشه مرتبط کنید .
برای مرتبط کردن مجموعه داده خود با سبک نقشه ای که استفاده می کنید، مراحل زیر را انجام دهید:
- در Google Cloud Console، به صفحه Datasets بروید .
- روی نام مجموعه داده کلیک کنید. صفحه جزئیات Dataset ظاهر می شود.
- روی تب Preview کلیک کنید.
- در بخش سبکهای نقشه مرتبط ، روی ADD MAP STYLE کلیک کنید.
- روی کادر(های) انتخاب سبک(های) نقشه برای مرتبط کردن کلیک کنید و سپس روی ذخیره کلیک کنید.
اعمال سبک ها به مجموعه داده
برای استایل دادن به یکی از ویژگی های لایه داده، از یک بسته بندی استایلی استفاده کنید که یک GMSDatasetFeature
را می پذیرد و یک GMSFeatureStyle
برای تعریف ویژگی های سبک برمی گرداند. سپس ویژگی style را روی یک بسته بندی استایل قرار دهید که حاوی منطق استایل است.
بسته شدن یک ظاهر طراحی شده باید قطعی باشد و هنگام اعمال آن نتایج ثابتی را ارائه دهد. اگر هر یک از مشخصات ظاهری هر ویژگی تغییر کند، سبک باید دوباره اعمال شود.
سکته مغزی، پر کردن، و شعاع نقطه را تنظیم کنید
هنگام استایل دادن به یک ویژگی در تابع style factory، می توانید موارد زیر را تنظیم کنید:
رنگ Stroke و کدورت حاشیه همانطور که توسط کلاس
UIColor
تعریف شده است. مقدار پیش فرض شفاف است (UIColor.clearColor
).عرض سکته مغزی حاشیه در پیکسل های صفحه نمایش. مقدار پیش فرض 2 است.
رنگ و کدورت را طبق کلاس
UIColor
پر کنید. مقدار پیش فرض شفاف است (UIColor.clearColor
).شعاع نقطه یک نقطه بین 0 تا 128 پیکسل است.
از قوانین سبک ساده استفاده کنید
ساده ترین راه برای استایل دادن به ویژگی ها، تعریف ویژگی های ثابت سبک مانند رنگ، کدورت و عرض خط است. گزینههای سبک ویژگی را مستقیماً روی یک لایه ویژگی مجموعه داده اعمال کنید یا از آنها در ارتباط با استایل سفارشی استفاده کنید.
سویفت
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 }
هدف-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" هر یک از ویژگی های یک مجموعه داده را برای کنترل استایل تعیین می کند:
سویفت
layer.style = { feature in var attributeColor: String = feature.datasetAttributes["highlightColor"] // Conditionalize styling based on the value of the "highlightColor" attribute. ... }
هدف-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
قرار دهید:
سویفت
layer.style = nil
هدف-C
layer.style = nil;
همچنین می توانید nil
از تابع سبک ویژگی خود برگردانید، برای مثال اگر می خواهید زیرمجموعه ای از ویژگی ها نامرئی باقی بماند.