NRF SDK 0.9

Référence

TrackMetric

Convertir les fractions de voie et les distances en mètres.

Contexte d’utilisation

ModulePackageSource SDK
Kotlin/JVMfr.nimby.sdkkotlin-client/src/main/kotlin/fr/nimby/sdk/TrackMetric.kt

API publique du SDK 0.9.0-alpha.2. Chaque entrée donne la signature Kotlin et son contrat : sens de la valeur, conditions d’utilisation et effets à connaître. Choisissez les imports du module indiqué ci-dessus.

Imports de cette page
import fr.nimby.sdk.TrackMetric
import fr.nimby.sdk.TrackDirection

Unités et validation

ÉlémentType / unitéValidation
trackIdLong opaqueNon nul.
lengthMDouble · mètresFini et strictement positif.
offsetM(fraction)Double · mètresfraction finie dans [0, 1].
fraction(offsetM)Double · fractionoffsetM fini dans [0, lengthM].
distanceM(fromFraction, toFraction)Double · mètresDistance absolue, sans notion d’itinéraire.
kotlin
val metric = fr.nimby.sdk.TrackMetric(trackId = 1L, lengthM = 800.0)
check(metric.offsetM(0.25) == 200.0)
check(metric.fraction(400.0) == 0.5)
check(metric.distanceM(0.75, 0.25) == 400.0)

TrackMetric

fr.nimby.sdk · class
data class TrackMetric(val trackId: Long, val lengthM: Double)

Longueur longitudinale observée en mètres : identifiant non nul, longueur finie strictement positive. Convertit localement fractions et mètres ; ne prouve pas une autorisation de construction.

TrackMetric.trackId

fr.nimby.sdk · val
val trackId: Long

Identité de la voie mesurée, non nulle.

TrackMetric.lengthM

fr.nimby.sdk · val
val lengthM: Double

Longueur longitudinale en mètres, finie et strictement positive.

TrackMetric.offsetM

fr.nimby.sdk · fun
fun offsetM(fraction: Double): Double

Convertit une fraction finie entre 0 et 1 en mètres depuis l’origine de la voie ; argument invalide rejeté.

TrackMetric.fraction

fr.nimby.sdk · fun
fun fraction(offsetM: Double): Double

Convertit une distance finie entre 0 et lengthM en fraction ; ne renverse pas le sens.

TrackMetric.distanceM

fr.nimby.sdk · fun
fun distanceM(fromFraction: Double, toFraction: Double): Double

Distance absolue en mètres entre deux fractions valides sur cette même voie ; pas une distance d’itinéraire.

TrackMetric.positionAtMetres

fr.nimby.sdk · fun
fun positionAtMetres(offsetM: Double, direction: TrackDirection): Position

Construit une Position à la distance donnée depuis l’origine, avec le sens choisi. Les limites de construction restent à vérifier séparément.

TrackDirection

fr.nimby.sdk · class
enum class TrackDirection(val nativeValue: Int) {
    Forward(1),
    Backward(-1)
}

Sens longitudinal dans la représentation de la voie, indépendant de son orientation sur la carte.

TrackDirection.nativeValue

fr.nimby.sdk · val
val nativeValue: Int

Valeur +1 pour Forward, -1 pour Backward, utilisable dans Position.direction.

TrackDirection.Forward

fr.nimby.sdk · enum-entry
Forward(1)

Sens des fractions croissantes, de 0 vers 1.

TrackDirection.Backward

fr.nimby.sdk · enum-entry
Backward(-1)

Sens des fractions décroissantes, de 1 vers 0.