diff options
Diffstat (limited to 'mavigator-dashboard/src/main/scala/mavigator/dashboard/ui/instruments/Altimeter.scala')
-rw-r--r-- | mavigator-dashboard/src/main/scala/mavigator/dashboard/ui/instruments/Altimeter.scala | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/mavigator-dashboard/src/main/scala/mavigator/dashboard/ui/instruments/Altimeter.scala b/mavigator-dashboard/src/main/scala/mavigator/dashboard/ui/instruments/Altimeter.scala new file mode 100644 index 0000000..b65b374 --- /dev/null +++ b/mavigator-dashboard/src/main/scala/mavigator/dashboard/ui/instruments/Altimeter.scala @@ -0,0 +1,18 @@ +package vfd.dashboard.ui.instruments + +import org.scalajs.dom.html +import rx._ +import vfd.dashboard.Environment + +class Altimeter(val value: Rx[Double])(implicit env: Environment) extends SvgInstrument[Double] { + import SvgInstrument._ + + lazy val element = svgObject("altimeter") + lazy val hand = part("hand") + lazy val moveable = Seq(hand) + + // 1m === 36deg = 2Pi / 10 ~= 0.62832 + protected def update(altitude: Double) = { + rotate(hand, (altitude * 0.62832).toInt) + } +}
\ No newline at end of file |