コード例 #1
0
 public static Mat4HighPrecision operator *(Mat4HighPrecision A, Mat4HighPrecision B)
 {
     return(new Mat4HighPrecision(
                Vec4.Dot(A.Row0, B.Col0), Vec4.Dot(A.Row0, B.Col1), Vec4.Dot(A.Row0, B.Col2), Vec4.Dot(A.Row0, B.Col3),
                Vec4.Dot(A.Row1, B.Col0), Vec4.Dot(A.Row1, B.Col1), Vec4.Dot(A.Row1, B.Col2), Vec4.Dot(A.Row1, B.Col3),
                Vec4.Dot(A.Row2, B.Col0), Vec4.Dot(A.Row2, B.Col1), Vec4.Dot(A.Row2, B.Col2), Vec4.Dot(A.Row2, B.Col3),
                Vec4.Dot(A.Row3, B.Col0), Vec4.Dot(A.Row3, B.Col1), Vec4.Dot(A.Row3, B.Col2), Vec4.Dot(A.Row3, B.Col3)
                ));
 }
コード例 #2
0
 public static double Dot(Vec4 a, Vec4 b)
 {
     return(a.X * b.X + a.Y * b.Y + a.Z * b.Z + a.W * b.W);
 }
コード例 #3
0
 public static Vec4 operator *(Mat4HighPrecision A, Vec4 B)
 {
     return(new Vec4(Vec4.Dot(A.Row0, B), Vec4.Dot(A.Row1, B), Vec4.Dot(A.Row2, B), Vec4.Dot(A.Row3, B)));
 }
コード例 #4
0
 public static Vec4 operator *(Vec4 A, Mat4HighPrecision B)
 {
     return(new Vec4(Vec4.Dot(A, B.Col0), Vec4.Dot(A, B.Col1), Vec4.Dot(A, B.Col2), Vec4.Dot(A, B.Col3)));
 }