96 lines
3.9 KiB
Swift
96 lines
3.9 KiB
Swift
import SwiftUI
|
|
import Foundation
|
|
|
|
struct HelpView: View {
|
|
var body: some View {
|
|
List {
|
|
HelpAppInfoSection()
|
|
|
|
HelpTopicSection(
|
|
title: "Projekte und Tankauswahl",
|
|
systemImage: "folder",
|
|
explanation: "Tippe in der Projektübersicht auf +, um ein Projekt anzulegen. Öffne ein Projekt, um seine Daten anzusehen und den gewünschten Tank auszuwählen. Über „AR-Modus starten“ wechselst du zur Darstellung in der realen Umgebung."
|
|
)
|
|
|
|
HelpTopicSection(
|
|
title: "Tank in der Umgebung platzieren",
|
|
systemImage: "arkit",
|
|
explanation: "Erlaube den Kamerazugriff und bewege das Gerät langsam, damit die Umgebung erkannt wird. Richte das Fadenkreuz auf den gewünschten Standort und tippe auf „Tank platzieren“. Beachte dabei die Hinweise auf dem Bildschirm."
|
|
)
|
|
|
|
HelpTopicSection(
|
|
title: "Tank anpassen",
|
|
systemImage: "move.3d",
|
|
explanation: "Tippe auf den platzierten Tank, um die Bedienelemente zu öffnen. Damit kannst du seine Position, Höhe und Drehung anpassen oder ihn neu platzieren."
|
|
)
|
|
|
|
HelpTopicSection(
|
|
title: "Werkzeuge im AR-Modus",
|
|
systemImage: "ruler",
|
|
explanation: "Das Schild-Symbol blendet die Sicherheitsabstände ein oder aus. Über das Lineal öffnest du die Funktion zum Ausmessen. Mit „Rohrführung“ kannst du einen Leitungsverlauf darstellen. Folge für die einzelnen Schritte den Hinweisen im AR-Modus."
|
|
)
|
|
|
|
HelpTopicSection(
|
|
title: "Fotos und Galerie",
|
|
systemImage: "camera",
|
|
explanation: "Mit dem Kamera-Symbol im AR-Modus nimmst du die aktuelle Ansicht auf. Die gespeicherten Aufnahmen findest du im jeweiligen Projekt im Reiter „Galerie“."
|
|
)
|
|
|
|
HelpTopicSection(
|
|
title: "Darstellung und Erkennung",
|
|
systemImage: "gearshape",
|
|
explanation: "In den Einstellungen kannst du auf unterstützten Geräten LiDAR-Funktionen aktivieren und die Belichtung der oberirdischen Tanks anpassen. Änderungen werden beim nächsten Start des AR-Modus übernommen. Falls die Umgebung nicht erkannt wird, bewege das Gerät langsam weiter und achte auf gute Beleuchtung und erkennbare Strukturen."
|
|
)
|
|
}
|
|
.navigationTitle("Hilfe")
|
|
.navigationBarTitleDisplayMode(.inline)
|
|
}
|
|
}
|
|
|
|
private struct HelpAppInfoSection: View {
|
|
private let version = Bundle.main.object(forInfoDictionaryKey: "CFBundleShortVersionString") as? String
|
|
private let build = Bundle.main.object(forInfoDictionaryKey: "CFBundleVersion") as? String
|
|
|
|
var body: some View {
|
|
Section("Über die App") {
|
|
Text("GasTankAR")
|
|
.font(.headline)
|
|
Text("Mit GasTankAR kannst du Gastanks in deiner realen Umgebung visualisieren und die Ansichten in Projekten festhalten.")
|
|
LabeledContent("Version") {
|
|
if let version, !version.isEmpty {
|
|
Text(verbatim: version)
|
|
} else {
|
|
Text("Nicht verfügbar")
|
|
}
|
|
}
|
|
if let build, !build.isEmpty {
|
|
LabeledContent("Build") {
|
|
Text(verbatim: build)
|
|
}
|
|
}
|
|
Text("Diese App wurde von der Firma SoftVisor GmbH erstellt.")
|
|
}
|
|
}
|
|
}
|
|
|
|
private struct HelpTopicSection: View {
|
|
let title: LocalizedStringKey
|
|
let systemImage: String
|
|
let explanation: LocalizedStringKey
|
|
|
|
var body: some View {
|
|
Section {
|
|
Text(explanation)
|
|
.fixedSize(horizontal: false, vertical: true)
|
|
} header: {
|
|
Label(title, systemImage: systemImage)
|
|
}
|
|
}
|
|
}
|
|
|
|
#Preview {
|
|
NavigationStack {
|
|
HelpView()
|
|
}
|
|
}
|