From b2a558d2ae50e02ceb04992004dad315db92af0f Mon Sep 17 00:00:00 2001 From: AJaiman Date: Mon, 1 Jul 2024 03:17:00 -0400 Subject: [PATCH] Created frequency measured in hertz to base units --- .../org/team4099/lib/units/Derivatives.kt | 6 +--- .../org/team4099/lib/units/base/Cycle.kt | 36 ------------------- .../org/team4099/lib/units/base/Frequency.kt | 16 +++++++++ 3 files changed, 17 insertions(+), 41 deletions(-) delete mode 100644 src/main/kotlin/org/team4099/lib/units/base/Cycle.kt create mode 100644 src/main/kotlin/org/team4099/lib/units/base/Frequency.kt diff --git a/src/main/kotlin/org/team4099/lib/units/Derivatives.kt b/src/main/kotlin/org/team4099/lib/units/Derivatives.kt index 85f2d95..c8b74b0 100644 --- a/src/main/kotlin/org/team4099/lib/units/Derivatives.kt +++ b/src/main/kotlin/org/team4099/lib/units/Derivatives.kt @@ -1,10 +1,6 @@ package org.team4099.lib.units -import org.team4099.lib.units.base.METERS_PER_FOOT -import org.team4099.lib.units.base.METERS_PER_INCH -import org.team4099.lib.units.base.Meter -import org.team4099.lib.units.base.SECONDS_PER_MINUTE -import org.team4099.lib.units.base.Second +import org.team4099.lib.units.base.* import org.team4099.lib.units.derived.Radian import kotlin.math.PI diff --git a/src/main/kotlin/org/team4099/lib/units/base/Cycle.kt b/src/main/kotlin/org/team4099/lib/units/base/Cycle.kt deleted file mode 100644 index a085889..0000000 --- a/src/main/kotlin/org/team4099/lib/units/base/Cycle.kt +++ /dev/null @@ -1,36 +0,0 @@ -package org.team4099.lib.units.base - -import org.team4099.lib.units.UnitKey -import org.team4099.lib.units.Value -import org.team4099.lib.units.attoinverse -import org.team4099.lib.units.centiinverse -import org.team4099.lib.units.decainverse -import org.team4099.lib.units.deciinverse -import org.team4099.lib.units.exainverse -import org.team4099.lib.units.femtoinverse -import org.team4099.lib.units.gigainverse -import org.team4099.lib.units.hectoinverse -import org.team4099.lib.units.kiloinverse -import org.team4099.lib.units.megainverse -import org.team4099.lib.units.microinverse -import org.team4099.lib.units.milliinverse -import org.team4099.lib.units.nanoinverse -import org.team4099.lib.units.petainverse -import org.team4099.lib.units.picoinverse -import org.team4099.lib.units.terainverse -import org.team4099.lib.units.yoctoinverse -import org.team4099.lib.units.yottainverse -import org.team4099.lib.units.zeptoinverse -import org.team4099.lib.units.zetainverse - -object RefreshCycle: UnitKey -typealias Cycle = Value - -inline val Double.cycles: Cycle - get() = Cycle(this) - -inline val Number.cycles: Cycle - get() = toDouble().cycles - -inline val Cycle.inCycles: Double - get() = value \ No newline at end of file diff --git a/src/main/kotlin/org/team4099/lib/units/base/Frequency.kt b/src/main/kotlin/org/team4099/lib/units/base/Frequency.kt new file mode 100644 index 0000000..beb84b3 --- /dev/null +++ b/src/main/kotlin/org/team4099/lib/units/base/Frequency.kt @@ -0,0 +1,16 @@ +package org.team4099.lib.units.base + +import org.team4099.lib.units.UnitKey +import org.team4099.lib.units.Value + +object Hertz: UnitKey +typealias Frequency = Value + +inline val Double.hertz: Frequency + get() = Frequency(this) + +inline val Number.hertz: Frequency + get() = toDouble().hertz + +inline val Frequency.inHertz: Double + get() = value \ No newline at end of file