cross_vectors
- compas.geometry.cross_vectors(u, v)[source]
Compute the cross product of two vectors.
- Parameters
u ([float, float, float] |
compas.geometry.Vector
) – XYZ components of the first vector.v ([float, float, float] |
compas.geometry.Vector
) – XYZ components of the second vector.
- Returns
[float, float, float] – The cross product of the two vectors.
Notes
The xyz components of the cross product of two vectors \(\mathbf{u}\) and \(\mathbf{v}\) can be computed as the minors of the following matrix:
\begin{bmatrix} x & y & z \\ u_{x} & u_{y} & u_{z} \\ v_{x} & v_{y} & v_{z} \end{bmatrix}Therefore, the cross product can be written as:
\begin{eqnarray} \mathbf{u} \times \mathbf{v} & = \begin{bmatrix} u_{y} * v_{z} - u_{z} * v_{y} \\ u_{z} * v_{x} - u_{x} * v_{z} \\ u_{x} * v_{y} - u_{y} * v_{x} \end{bmatrix} \end{eqnarray}Examples
>>> cross_vectors([1.0, 0.0, 0.0], [0.0, 1.0, 0.0]) [0.0, 0.0, 1.0]