murrelet_draw/
livecodetypes.rs1pub mod anglepi {
4 use lerpable::Lerpable;
5 use murrelet_common::{Angle, AnglePi, IsAngle};
6 use murrelet_livecode_derive::Livecode;
7
8 #[derive(Clone, Copy, Debug, Livecode, Lerpable, Default)]
9 pub struct LivecodeAnglePi(f32);
10 impl LivecodeAnglePi {
11 pub const ZERO: Self = LivecodeAnglePi(0.0);
12
13 fn _to_angle_pi(&self) -> AnglePi {
14 AnglePi::new(self.0)
15 }
16
17 pub fn new<A: IsAngle>(f: A) -> Self {
18 Self(f.angle_pi())
19 }
20
21 pub fn from_angle_pi(angle_pi: f32) -> Self {
22 Self(angle_pi)
23 }
24 }
25
26 impl From<LivecodeAnglePi> for Angle {
27 fn from(value: LivecodeAnglePi) -> Self {
28 value._to_angle_pi().as_angle()
29 }
30 }
31}