blob: 249f892ef9dfabd8c3172fd827be7f17f00782f8 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
package mavigator.dashboard.ui.instruments
import org.scalajs.dom.html
import rx._
import mavigator.util.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)
}
}
|