@@ -372,6 +372,36 @@ void testMatrix4Translation() {
372372 for (var i = 0 ; i < inputA.length; i++ ) {
373373 relativeTest (output1[i], output2[i]);
374374 }
375+
376+ final input = Matrix4 .fromList ([
377+ 1 , 5 , 9 , 13 , //
378+ 2 , 6 , 10 , 14 , //
379+ 3 , 7 , 11 , 15 , //
380+ 4 , 8 , 12 , 16 , //
381+ ]);
382+ final output3 = input.clone ();
383+ output3[12 ] = input.dotRow (0 , Vector4 (4 , 8 , 12 , 1 ));
384+ output3[13 ] = input.dotRow (1 , Vector4 (4 , 8 , 12 , 1 ));
385+ output3[14 ] = input.dotRow (2 , Vector4 (4 , 8 , 12 , 1 ));
386+ output3[15 ] = input.dotRow (3 , Vector4 (4 , 8 , 12 , 1 ));
387+ relativeTest (
388+ input.clone ()..translateByDouble (4.0 , 8.0 , 12.0 ),
389+ output3,
390+ );
391+ relativeTest (
392+ input.clone ()..translateByVector3 (Vector3 (4.0 , 8.0 , 12.0 )),
393+ output3,
394+ );
395+
396+ final output4 = input.clone ();
397+ output4[12 ] = input.dotRow (0 , Vector4 (4 , 8 , 12 , 16 ));
398+ output4[13 ] = input.dotRow (1 , Vector4 (4 , 8 , 12 , 16 ));
399+ output4[14 ] = input.dotRow (2 , Vector4 (4 , 8 , 12 , 16 ));
400+ output4[15 ] = input.dotRow (3 , Vector4 (4 , 8 , 12 , 16 ));
401+ relativeTest (
402+ input.clone ()..translateByVector4 (Vector4 (4 , 8 , 12 , 16 )),
403+ output4,
404+ );
375405}
376406
377407void testMatrix4Scale () {
0 commit comments