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