
SECTION 13.10 PROGRAMMING EXAMPLES AND EXERCISES 391
// ... (omitted)
for (int j=0;j<5;j++) {
printf(" % 1.1f", _Float(bv[i] << bv[j]));
}
printf(
"\n");
}
Table 13.3: A list of the most important specialized multivector types in c3ga .
Name Sum of Basis Blades
vector e1, e2, e3
point no, e1, e2, e3, ni
normalizedPoint no =1,e1, e2, e3, ni
flatPoint e1∧ni, e2∧ni, e3∧ni, no∧ni
pointPair no∧e1, no∧e2, no∧e3, e1∧e2, e2∧e3,
e3∧e1, e1∧ni, e2∧ni, e3∧ni, no∧ni
line e1∧e2∧ni, e1∧e3∧ni, e2∧e3∧ni, e1∧no∧ni, e2∧no∧ni, e3∧no∧ni
dualLine e1∧e2, e1∧e3, e2∧e3, e1∧ni, e2∧ni, e3∧ni
plane e1∧e2∧e3∧ni, e1∧e2∧no∧ni, e1∧e3∧no∧ni, e2∧e3∧no∧ni
dualPlane e1, e2, e3, ni
circle e2∧e3∧ni, e3∧e1∧ni, e1∧e2∧ni, no∧e3∧ni, no∧e1∧ni,
no∧e2∧ni, no∧e2∧e3, no∧e1∧e3, no∧e1∧e2, e1∧e2∧e3
sphere e1∧e2∧e3∧ni, e1∧e2∧no∧ni, e1∧e3∧no∧ni, e2∧e3∧no∧ni, e1∧e2∧e3∧no
dualSphere no, e1, e2, e3, ni
freeVector e1∧ni, e2∧ni, e3∧ni
freeBivector e1∧e2∧ni, e2∧e3∧ni, e3∧e1∧ni
freeTrivector e1∧e2∧e3∧ni
tangentVector no∧e1, no∧e2, no∧e3, e1∧e2, e2∧e3, e3∧e1, e1∧ni, e2∧ni, e3∧ni, no∧ni
tangentBivector e1∧e2∧e3, e2∧e3∧ni, e3∧e1∧ni, e1∧e2∧ni, no∧e3∧ni,
no∧e1∧ni, no∧e2∧ni, no∧e2∧e3, no∧e1∧e3, no∧e1∧e2
vectorE2GA e1, e2
vectorE3GA e1, e2, e3
bivectorE3GA e1∧e2, e2∧e3, e3∧e1
translator scalar, e1∧ni, e2∧ni, e3∧ni
normalizedTranslator scalar=1, e1∧ni, e2∧ni, e3∧ni
rotor scalar, e1∧e2, e2∧e3, e3∧e1
scalor scalar, no ∧ ni