يمكنك تخصيص سلوك التصادم للعلامات التي تضيفها إلى خريطة ثلاثية الأبعاد.
يوضّح نموذج الرمز البرمجي التالي كيفية ضبط
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"
)
}