Clirio Scan Views
Eine Sammlung von Funktionen in den Clirio View Apps zum Laden und Anzeigen von Photogrammetrie-Scans. Enthält Karten-, XR-, Vergleichs- und andere Ansichten.
Übersicht
Eine der wichtigsten Funktionen der Clirio-Produktsuite ist die Möglichkeit, photogrammetrische Scans mit LiDAR-fähigen iOS-Geräten zu erfassen und diese Scans anschließend zu verwalten und anzuzeigen. Erfasste Scans können auf der Karte angezeigt werden, sie können immer als integraler Bestandteil der Karte angezeigt werden, oder sie können im Scan-Ansichtsmodus angezeigt werden, der je nach Plattform über Mess-, Vergleichs- und XR-Funktionen verfügt. In der XR-Ansicht kann der Scan skaliert werden auf 1m³ oder im Maßstab 1:1, oder frei mit der Hand manipuliert werden. Auf iOS und Desktop wird die Ansicht durch Touch- oder Mauseingaben gesteuert. Vergleichsansichten bieten die Modi Seite-an-Seite, Streichen und Überlagern. Neben Scans, die mit Clirio Scan erfasst wurden, werden auch andere 3D-Modelle unterstützt und können hochgeladen werden in die Clirio Cloud.
Entwicklung
An den Scanansichten wurde von 2021 bis 2023 kontinuierlich gearbeitet. In diesem Zeitraum war ich für die Einrichtung der meisten Logiken und Ansichten verantwortlich. Zu meinem Arbeitsablauf gehörte das Entwerfen von UX und UI und dann das schnelle Prototyping und die Verfeinerung, bis jede Funktion für die Veröffentlichung bereit war. Meine Teamkollegen Tonio Stillman, Timothy Thibault, Jordan Wischmann und Erdem Gunay leisteten ebenfalls Beiträge. Einige Funktionen wurden auch von der Ada-Viewer-App übernommen, auf der die Clirio-View-App basiert.
Die ersten Anforderungen waren das Laden und Betrachten von Scans in einem Scan-Ansichtsmodus (keine Karte), der in AR auf der HoloLens 2 und in 3D-Non-AR auf iOS unterstützt werden sollte. Nachdem diese Kernfunktionalitäten implementiert worden waren, war eine der wichtigsten Ergänzungen der Vergleichs- und Messmodus. Ein wichtiger Arbeitsablauf, der von den Clirio View-Apps unterstützt wird, ist die Analyse und Überwachung von Baustellen, bei denen Scan-Vergleiche helfen, Unterschiede zu erkennen, und Scan-Messungen helfen, den Maßstab zu verstehen.
Später kamen weitere Funktionen hinzu, z. B. die Anzeige von Scans auf der Karte, weitere Anzeigewerkzeuge wie die Freihandmanipulation in XR und weitere Vergleichsmodi wie der Überlagerungsmodus, mit dem die Transparenzen in XR ausgeblendet werden, und die Swipe-Vergleichsansicht in iOS, die die Ansichtsfenster beschneidet.
Herausforderungen
Eine der größten Herausforderungen war die Komplexität, die sich aus den verschiedenen UX-Flows, Plattformen, Funktionen und Zuständen ergab, die im Laufe der Zeit langsam erweitert wurden. Besonders in den letzten MRTK2 Versionen der Clirio View-Apps hatte die Komplexität stark zugenommen, da MRTK2 nur unzureichend plattformübergreifende Unterstützung bot, was zu unterschiedlichen Prefabs, UI und Logik für iOS und HMDs führte.
Eine weitere Ebene der Komplexität waren die verschiedenen Dateiformate, Funktionen und Quellen für 3D-Modelle. Insbesondere die verschiedenen Materialeigenschaften, Texturreferenzformate, Koordinaten- und Einheitensysteme waren schwierig zu entwickeln und zu testen.
Die Lösungen für diese Komplexitätsherausforderungen bestanden in der Regel in der Vereinheitlichung von Verhaltensweisen, sobald Ähnlichkeiten identifiziert worden waren und Zeit für ein Refactoring zur Verfügung stand. So wurden beispielsweise das Speichern des Ausgangszustands und das Rücksetzverhalten plattform- und modusübergreifend vereinheitlicht, und die Logik für das Ein- und Ausschalten von AR in der Scanansicht wurde mit der Logik für dasselbe in der Kartenansicht kombiniert. Außerdem wurde mit der Migration zu MRTK3 Ansichtslogik und Prefabs kombiniert, was die Komplexität erheblich reduzierte.