Files
Gas-Tank-AR-App/GasTankAR/Views/TankAR/Measurement.swift
2026-09-02 20:54:36 +02:00

38 lines
904 B
Swift
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

//
// Measurement.swift
// GasTankAR
//
// Created by Dennis Nemec on 28.08.26.
//
import Foundation
import simd
/// Eine benannte Strecke zwischen zwei im Raum gewählten Punkten (Welt-Koordinaten).
struct Measurement: Identifiable {
let id = UUID()
var name: String
let start: SIMD3<Float>
let end: SIMD3<Float>
/// Länge der Strecke in Metern.
var distance: Float { simd_distance(start, end) }
/// Länge als lesbarer Text, z. B. „1,23 m".
var formattedDistance: String {
String(format: "%.2f m", distance)
}
}
/// Ablaufphasen beim Anlegen einer Strecke.
enum MeasurementPhase: Equatable {
/// Kein Messvorgang aktiv.
case idle
/// Wartet auf den ersten Punkt.
case awaitingFirstPoint
/// Wartet auf den zweiten Punkt.
case awaitingSecondPoint
/// Beide Punkte gesetzt – wartet auf die Benennung.
case naming
}