peridot_math/linarg/
euclid_interop.rs1use super::*;
4
5impl<T> From<Vector2<T>> for euclid::Vector2D<T> {
6 #[inline(always)]
7 fn from(value: Vector2<T>) -> Self {
8 Self::new(value.0, value.1)
9 }
10}
11impl<T: Copy> From<&'_ Vector2<T>> for euclid::Vector2D<T> {
12 #[inline(always)]
13 fn from(value: &Vector2<T>) -> Self {
14 Self::new(value.0, value.1)
15 }
16}
17impl<T> From<euclid::Vector2D<T>> for Vector2<T> {
18 #[inline(always)]
19 fn from(value: euclid::Vector2D<T>) -> Self {
20 Self(value.x, value.y)
21 }
22}
23impl<T: Copy> From<&'_ euclid::Vector2D<T>> for Vector2<T> {
24 #[inline(always)]
25 fn from(value: &euclid::Vector2D<T>) -> Self {
26 Self(value.x, value.y)
27 }
28}
29
30impl<T> From<Vector2<T>> for euclid::Point2D<T> {
31 #[inline(always)]
32 fn from(value: Vector2<T>) -> Self {
33 Self::new(value.0, value.1)
34 }
35}
36impl<T: Copy> From<&'_ Vector2<T>> for euclid::Point2D<T> {
37 #[inline(always)]
38 fn from(value: &Vector2<T>) -> Self {
39 Self::new(value.0, value.1)
40 }
41}
42impl<T> From<euclid::Point2D<T>> for Vector2<T> {
43 #[inline(always)]
44 fn from(value: euclid::Point2D<T>) -> Self {
45 Self(value.x, value.y)
46 }
47}
48impl<T: Copy> From<&'_ euclid::Point2D<T>> for Vector2<T> {
49 #[inline(always)]
50 fn from(value: &euclid::Point2D<T>) -> Self {
51 Self(value.x, value.y)
52 }
53}
54
55impl<T> From<Vector3<T>> for euclid::Vector3D<T> {
56 #[inline(always)]
57 fn from(value: Vector3<T>) -> Self {
58 Self::new(value.0, value.1, value.2)
59 }
60}
61impl<T: Copy> From<&'_ Vector3<T>> for euclid::Vector3D<T> {
62 #[inline(always)]
63 fn from(value: &Vector3<T>) -> Self {
64 Self::new(value.0, value.1, value.2)
65 }
66}
67impl<T> From<euclid::Vector3D<T>> for Vector3<T> {
68 #[inline(always)]
69 fn from(value: euclid::Vector3D<T>) -> Self {
70 Self(value.x, value.y, value.z)
71 }
72}
73impl<T: Copy> From<&'_ euclid::Vector3D<T>> for Vector3<T> {
74 #[inline(always)]
75 fn from(value: &euclid::Vector3D<T>) -> Self {
76 Self(value.x, value.y, value.z)
77 }
78}
79
80impl<T: Copy> From<Vector3<T>> for euclid::Point3D<T> {
81 #[inline(always)]
82 fn from(value: Vector3<T>) -> Self {
83 Self::new(value.0, value.1, value.2)
84 }
85}
86impl<T: Copy> From<&'_ Vector3<T>> for euclid::Point3D<T> {
87 #[inline(always)]
88 fn from(value: &Vector3<T>) -> Self {
89 Self::new(value.0, value.1, value.2)
90 }
91}
92impl<T> From<euclid::Point3D<T>> for Vector3<T> {
93 #[inline(always)]
94 fn from(value: euclid::Point3D<T>) -> Self {
95 Self(value.x, value.y, value.z)
96 }
97}
98impl<T: Copy> From<&'_ euclid::Point3D<T>> for Vector3<T> {
99 #[inline(always)]
100 fn from(value: &euclid::Point3D<T>) -> Self {
101 Self(value.x, value.y, value.z)
102 }
103}