11 double vx = x(), vy = y(), vz = z();
12 double xx = m.
xx(), xy = m.
xy(), xz = m.
xz();
13 double yx = m.
yx(), yy = m.
yy(), yz = m.
yz();
14 double zx = m.
zx(), zy = m.
zy(), zz = m.
zz();
15 set((yy*zz-yz*zy)*vx+(yz*zx-yx*zz)*vy+(yx*zy-yy*zx)*vz,
16 (zy*xz-zz*xy)*vx+(zz*xx-zx*xz)*vy+(zx*xy-zy*xx)*vz,
17 (xy*yz-xz*yy)*vx+(xz*yx-xx*yz)*vy+(xx*yy-xy*yx)*vz);
24 double vx = v.
x(), vy = v.
y(), vz = v.
z();
25 double xx = m.
xx(), xy = m.
xy(), xz = m.
xz();
26 double yx = m.
yx(), yy = m.
yy(), yz = m.
yz();
27 double zx = m.
zx(), zy = m.
zy(), zz = m.
zz();
29 ((yy*zz-yz*zy)*vx+(yz*zx-yx*zz)*vy+(yx*zy-yy*zx)*vz,
30 (zy*xz-zz*xy)*vx+(zz*xx-zx*xz)*vy+(zx*xy-zy*xx)*vz,
31 (xy*yz-xz*yy)*vx+(xz*yx-xx*yz)*vy+(xx*yy-xy*yx)*vz);
37 double vx = x(), vy = y(), vz = z();
38 double xx = m.
xx(), xy = m.
xy(), xz = m.
xz();
39 double yx = m.
yx(), yy = m.
yy(), yz = m.
yz();
40 double zx = m.
zx(), zy = m.
zy(), zz = m.
zz();
41 set((yy*zz-yz*zy)*vx+(yz*zx-yx*zz)*vy+(yx*zy-yy*zx)*vz,
42 (zy*xz-zz*xy)*vx+(zz*xx-zx*xz)*vy+(zx*xy-zy*xx)*vz,
43 (xy*yz-xz*yy)*vx+(xz*yx-xx*yz)*vy+(xx*yy-xy*yx)*vz);
50 double vx = v.
x(), vy = v.
y(), vz = v.
z();
51 double xx = m.
xx(), xy = m.
xy(), xz = m.
xz();
52 double yx = m.
yx(), yy = m.
yy(), yz = m.
yz();
53 double zx = m.
zx(), zy = m.
zy(), zz = m.
zz();
55 ((yy*zz-yz*zy)*vx+(yz*zx-yx*zz)*vy+(yx*zy-yy*zx)*vz,
56 (zy*xz-zz*xy)*vx+(zz*xx-zx*xz)*vy+(zx*xy-zy*xx)*vz,
57 (xy*yz-xz*yy)*vx+(xz*yx-xx*yz)*vy+(xx*yy-xy*yx)*vz);
Normal3D< float > operator*(const Transform3D &m, const Normal3D< float > &v)