PAL Geometry: 3D Vector Algebra

Dot and cross products for individual 3D vectors and vector sequences.

PAL Geometry: 3D Vector Algebra — 13 functions

KiratPalGeom3DCross1DVecWith1DVecToA

Signature
void KiratPalGeom3DCross1DVecWith1DVecToA(T_FLOAT** ppfVecA, T_FLOAT** ppfVecB, T_INT iSize);
Description
Calculates the cross product of two 3D vectors. The ToA/ToB/ToC suffix identifies the destination operand/vector.
Mathematical operation
\(\mathbf c=\mathbf a\times\mathbf b=(a_yb_z-a_zb_y,\;a_zb_x-a_xb_z,\;a_xb_y-a_yb_x)\); the suffix `ToA/ToB/ToC` identifies the storage target.

KiratPalGeom3DCross1DVecWith1DVecToB

Signature
void KiratPalGeom3DCross1DVecWith1DVecToB(T_FLOAT** ppfVecA, T_FLOAT** ppfVecB, T_INT iSize);
Description
Calculates the cross product of two 3D vectors. The ToA/ToB/ToC suffix identifies the destination operand/vector.
Mathematical operation
\(\mathbf c=\mathbf a\times\mathbf b=(a_yb_z-a_zb_y,\;a_zb_x-a_xb_z,\;a_xb_y-a_yb_x)\); the suffix `ToA/ToB/ToC` identifies the storage target.

KiratPalGeom3DCross1DVecWith1DVecToC

Signature
void KiratPalGeom3DCross1DVecWith1DVecToC( T_FLOAT** ppfVecA, T_FLOAT** ppfVecB, T_FLOAT** ppfVecC, T_INT iSize);
Description
Calculates the cross product of two 3D vectors. The ToA/ToB/ToC suffix identifies the destination operand/vector.
Mathematical operation
\(\mathbf c=\mathbf a\times\mathbf b=(a_yb_z-a_zb_y,\;a_zb_x-a_xb_z,\;a_xb_y-a_yb_x)\); the suffix `ToA/ToB/ToC` identifies the storage target.

KiratPalGeom3DCross1DVecWithVecToA

Signature
void KiratPalGeom3DCross1DVecWithVecToA(T_FLOAT** ppfVecA, T_FLOAT* pfVecB, T_INT iSize);
Description
Calculates the cross product of two 3D vectors. The ToA/ToB/ToC suffix identifies the destination operand/vector.
Mathematical operation
\(\mathbf c=\mathbf a\times\mathbf b=(a_yb_z-a_zb_y,\;a_zb_x-a_xb_z,\;a_xb_y-a_yb_x)\); the suffix `ToA/ToB/ToC` identifies the storage target.

KiratPalGeom3DCross1DVecWithVecToC

Signature
void KiratPalGeom3DCross1DVecWithVecToC( T_FLOAT** ppfVecA, T_FLOAT* pfVecB, T_FLOAT** ppfVecC, T_INT iSize);
Description
Calculates the cross product of two 3D vectors. The ToA/ToB/ToC suffix identifies the destination operand/vector.
Mathematical operation
\(\mathbf c=\mathbf a\times\mathbf b=(a_yb_z-a_zb_y,\;a_zb_x-a_xb_z,\;a_xb_y-a_yb_x)\); the suffix `ToA/ToB/ToC` identifies the storage target.

KiratPalGeom3DCrossVecWith1DVecToB

Signature
void KiratPalGeom3DCrossVecWith1DVecToB(T_FLOAT* pfVecA, T_FLOAT** ppfVecB, T_INT iSize);
Description
Calculates the cross product of two 3D vectors. The ToA/ToB/ToC suffix identifies the destination operand/vector.
Mathematical operation
\(\mathbf c=\mathbf a\times\mathbf b=(a_yb_z-a_zb_y,\;a_zb_x-a_xb_z,\;a_xb_y-a_yb_x)\); the suffix `ToA/ToB/ToC` identifies the storage target.

KiratPalGeom3DCrossVecWith1DVecToC

Signature
void KiratPalGeom3DCrossVecWith1DVecToC( T_FLOAT* pfVecA, T_FLOAT** ppfVecB, T_FLOAT** ppfVecC, T_INT iSize);
Description
Calculates the cross product of two 3D vectors. The ToA/ToB/ToC suffix identifies the destination operand/vector.
Mathematical operation
\(\mathbf c=\mathbf a\times\mathbf b=(a_yb_z-a_zb_y,\;a_zb_x-a_xb_z,\;a_xb_y-a_yb_x)\); the suffix `ToA/ToB/ToC` identifies the storage target.

KiratPalGeom3DCrossVecWithVecToA

Signature
void KiratPalGeom3DCrossVecWithVecToA(T_FLOAT* pfVecA, T_FLOAT* pfVecB);
Description
Calculates the cross product of two 3D vectors. The ToA/ToB/ToC suffix identifies the destination operand/vector.
Mathematical operation
\(\mathbf c=\mathbf a\times\mathbf b=(a_yb_z-a_zb_y,\;a_zb_x-a_xb_z,\;a_xb_y-a_yb_x)\); the suffix `ToA/ToB/ToC` identifies the storage target.

KiratPalGeom3DCrossVecWithVecToB

Signature
void KiratPalGeom3DCrossVecWithVecToB(T_FLOAT* pfVecA, T_FLOAT* pfVecB);
Description
Calculates the cross product of two 3D vectors. The ToA/ToB/ToC suffix identifies the destination operand/vector.
Mathematical operation
\(\mathbf c=\mathbf a\times\mathbf b=(a_yb_z-a_zb_y,\;a_zb_x-a_xb_z,\;a_xb_y-a_yb_x)\); the suffix `ToA/ToB/ToC` identifies the storage target.

KiratPalGeom3DCrossVecWithVecToC

Signature
void KiratPalGeom3DCrossVecWithVecToC(T_FLOAT* pfVecA, T_FLOAT* pfVecB, T_FLOAT* pfVecC);
Description
Calculates the cross product of two 3D vectors. The ToA/ToB/ToC suffix identifies the destination operand/vector.
Mathematical operation
\(\mathbf c=\mathbf a\times\mathbf b=(a_yb_z-a_zb_y,\;a_zb_x-a_xb_z,\;a_xb_y-a_yb_x)\); the suffix `ToA/ToB/ToC` identifies the storage target.

KiratPalGeom3DDot1DVecWith1DVecToC

Signature
void KiratPalGeom3DDot1DVecWith1DVecToC( T_FLOAT** ppfVecA, T_FLOAT** ppfVecB, T_FLOAT* pfScalar, T_INT iSize);
Description
Calculates the dot product of two 3D vectors; 1D variants apply the operation to sequences of 3D vectors.
Mathematical operation
\(s=\mathbf a\cdot\mathbf b=a_xb_x+a_yb_y+a_zb_z\); 1-D variants apply this element-wise to vector sequences.

KiratPalGeom3DDotVecWith1DVecToC

Signature
void KiratPalGeom3DDotVecWith1DVecToC( T_FLOAT* pfVecA, T_FLOAT** ppfVecB, T_FLOAT* pfScalar, T_INT iSize);
Description
Calculates the dot product of two 3D vectors; 1D variants apply the operation to sequences of 3D vectors.
Mathematical operation
\(s=\mathbf a\cdot\mathbf b=a_xb_x+a_yb_y+a_zb_z\); 1-D variants apply this element-wise to vector sequences.

KiratPalGeom3DDotVecWithVec

Signature
T_FLOAT KiratPalGeom3DDotVecWithVec(T_FLOAT* pfVecA, T_FLOAT* pfVecB);
Description
Calculates the dot product of two 3D vectors; 1D variants apply the operation to sequences of 3D vectors.
Mathematical operation
\(s=\mathbf a\cdot\mathbf b=a_xb_x+a_yb_y+a_zb_z\); 1-D variants apply this element-wise to vector sequences.