3D मैप में जोड़े गए मार्कर के कोलिज़न के व्यवहार को पसंद के मुताबिक बनाया जा सकता है.
यहां दिए गए कोड सैंपल में, Marker के collisionBehavior को कॉन्फ़िगर करने का तरीका बताया गया है. इससे यह तय किया जा सकता है कि अगर कोई मार्कर, किसी दूसरे मार्कर या मैप लेबल से टकराता है (ओवरलैप होता है), तो उसे कैसे काम करना चाहिए.
Map(camera: $camera, mode: .hybrid) {
Marker(
position: .init(
latitude: 37.794724,
longitude: -122.39442,
altitude: 100.0),
altitudeMode: .relativeToMesh,
collisionBehavior: .optionalAndHidesLowerPriority,
extruded: true,
label: "Marker 1"
)
Marker(
position: .init(
latitude: 37.7943220,
longitude: -122.395073,
altitude: 100.0),
altitudeMode: .relativeToMesh,
collisionBehavior: .required,
extruded: true,
label: "Marker 2"
)
Marker(
position: .init(
latitude: 37.7934108,
longitude: -122.396144,
altitude: 100.0),
altitudeMode: .relativeToMesh,
collisionBehavior: .requiredAndHidesOptional,
extruded: true,
label: "Marker 3"
)
}