میتوانید رفتار تصادم نشانگرهایی را که به نقشه سهبعدی اضافه میکنید سفارشیسازی کنید.
نمونه کد زیر نشان میدهد که چگونه
collisionBehavior
یک Marker3D را پیکربندی کنید تا مشخص شود که اگر نشانگر با نشانگر یا برچسب نقشه دیگری برخورد (همپوشانی) کند، چگونه باید رفتار کند.
Map(camera: $camera, mode: .hybrid) {
Marker3D(
position: .init(
latitude: 37.794724,
longitude: -122.39442,
altitude: 100.0),
altitudeMode: .relativeToMesh,
collisionBehavior: .optionalAndHidesLowerPriority,
extruded: true,
label: "Marker 1"
)
Marker3D(
position: .init(
latitude: 37.7943220,
longitude: -122.395073,
altitude: 100.0),
altitudeMode: .relativeToMesh,
collisionBehavior: .required,
extruded: true,
label: "Marker 2"
)
Marker3D(
position: .init(
latitude: 37.7934108,
longitude: -122.396144,
altitude: 100.0),
altitudeMode: .relativeToMesh,
collisionBehavior: .requiredAndHidesOptional,
extruded: true,
label: "Marker 3"
)
}