blob: bbfe8cf54b3578460d7a8f1feb46f08dcab9a84d (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
package vfd.dashboard.ui.instruments
import org.scalajs.dom.html
import rx._
import vfd.dashboard.Environment
class Horizon(val value: Rx[(Double, Double)])(implicit env: Environment) extends SvgInstrument[(Double, Double)] {
import SvgInstrument._
lazy val element = svgObject("horizon")
lazy val pitch = part("pitch")
lazy val roll = part("roll")
lazy val moveable = Seq(pitch, roll)
protected def update(pitchRoll: (Double, Double)) = {
translate(pitch, 0, (pitchRoll._1 * 180 / math.Pi).toInt) // 1deg === 1px
rotate(roll, pitchRoll._2)
}
}
|