@@ -80,6 +80,15 @@ struct Matrix {
8080 // clang-format on
8181 }
8282
83+ static constexpr Matrix MakeSkew (Scalar sx, Scalar sy) {
84+ // clang-format off
85+ return Matrix (1.0 , sy , 0.0 , 0.0 ,
86+ sx , 1.0 , 0.0 , 0.0 ,
87+ 0.0 , 0.0 , 1.0 , 0.0 ,
88+ 0.0 , 0.0 , 0.0 , 1.0 );
89+ // clang-format on
90+ }
91+
8392 static Matrix MakeRotation (Scalar radians, const Vector4& r) {
8493 const Vector4 v = r.Normalize ();
8594
@@ -112,8 +121,8 @@ struct Matrix {
112121 }
113122
114123 static Matrix MakeRotationX (Radians r) {
115- Scalar cosine = cos (r.radians );
116- Scalar sine = sin (r.radians );
124+ const Scalar cosine = cos (r.radians );
125+ const Scalar sine = sin (r.radians );
117126 // clang-format off
118127 return Matrix (
119128 1.0 , 0.0 , 0.0 , 0.0 ,
@@ -125,8 +134,8 @@ struct Matrix {
125134 }
126135
127136 static Matrix MakeRotationY (Radians r) {
128- Scalar cosine = cos (r.radians );
129- Scalar sine = sin (r.radians );
137+ const Scalar cosine = cos (r.radians );
138+ const Scalar sine = sin (r.radians );
130139
131140 // clang-format off
132141 return Matrix (
@@ -139,8 +148,8 @@ struct Matrix {
139148 }
140149
141150 static Matrix MakeRotationZ (Radians r) {
142- Scalar cosine = cos (r.radians );
143- Scalar sine = sin (r.radians );
151+ const Scalar cosine = cos (r.radians );
152+ const Scalar sine = sin (r.radians );
144153
145154 // clang-format off
146155 return Matrix (
@@ -196,12 +205,14 @@ struct Matrix {
196205 }
197206
198207 constexpr Matrix Transpose () const {
208+ // clang-format off
199209 return {
200- m[0 ], m[4 ], m[8 ], m[12 ], //
201- m[1 ], m[5 ], m[9 ], m[13 ], //
202- m[2 ], m[6 ], m[10 ], m[14 ], //
203- m[3 ], m[7 ], m[11 ], m[15 ], //
210+ m[0 ], m[4 ], m[8 ], m[12 ],
211+ m[1 ], m[5 ], m[9 ], m[13 ],
212+ m[2 ], m[6 ], m[10 ], m[14 ],
213+ m[3 ], m[7 ], m[11 ], m[15 ],
204214 };
215+ // clang-format on
205216 }
206217
207218 Matrix Invert () const ;
0 commit comments