# Calculate 3D triangle area by determinant

It is well known that the area of the triangle (with vertices $a, b, c$) can be calculated as

$\frac{1}{2}\det\left(\begin{bmatrix} a - c \\ b - c \end{bmatrix}\right) = \frac{1}{2}\det\left(\begin{bmatrix} a_x - c_x, a_y - c_y \\ b_x - c_x, b_y - c_y \end{bmatrix}\right)$

But what if I want to calculate the area of a triangle in 3 (or any higher) dimensions?

I tried to extend the matrix as $\begin{bmatrix} a_x - c_x, a_y - c_y, a_z - c_z \\ b_x - c_x, b_y - c_y, b_z - c_z \\ 1, 1, 1 \end{bmatrix}$ and $\begin{bmatrix} a_x - c_x, a_y - c_y, a_z - c_z \\ b_x - c_x, b_y - c_y, b_z - c_z \\ 0, 0, 1 \end{bmatrix}$ but I got incorrect results.

I'm not interested in solutions involving cross products.

It is equal to $$\frac12\sqrt{\det\left(\begin{bmatrix} a_x - c_x, a_y - c_y, a_z - c_z \\ b_x - c_x, b_y - c_y, b_z - c_z \end{bmatrix}\begin{bmatrix} a_x - c_x, a_y - c_y, a_z - c_z \\ b_x - c_x, b_y - c_y, b_z - c_z \end{bmatrix}^T\right)},$$ where $T$ denotes transposition.

• Could you provide a proof of your formula ? – Jean Marie Feb 20 '17 at 11:44
• @JeanMarie How can we show that the volume is given by the absolute value of the determinant? The same answer here: we should check the axioms of volume, namely multiplication by scalars, sums of vectors, and normalization. But really the square root is simply the $2$-norm coming from the canonical inner product on the space of alternating forms. – John B Feb 20 '17 at 13:36
• I just realized that the quantity inside the square root of your formula is :$det\begin{pmatrix}\vec{CA}^2&\vec{CA}.\vec{CB}\\ \vec{CB}.\vec{CA}&\vec{CB}^2\end{pmatrix}=\|\vec{CA}\|^2\|\vec{CB}\|^2(1-cos^2(\theta))$ which is indeed equivalent to the formula obtained through the cross product. – Jean Marie Feb 20 '17 at 13:46
• Great, I like your proof better than mine. But the OP did eliminate explicitly cross products in his question, and so I also did, on purpose. – John B Feb 20 '17 at 14:00
• @JeanMarie Ah, forgot to mention, my answer extends easily to the $k$-volume determined by $k$ vectors in $\mathbb R^n$ with $k\le n$. – John B Feb 20 '17 at 14:10

I use cross products, but I convert it in coordinates afterwards, with minimum computations (in particular, there is no need to use matrices):

$$\text{area}=\frac12 \|\vec{AB} \times \vec{AC}\|$$

Explanation: as $\vec{AB}$ and $\vec{AC}$ "live" in a 2D space, we have used here a 2D well known formula.

For a developed form with coordinates, if we set:

$$\begin{pmatrix}u_1\\u_2\\u_3\end{pmatrix}=\begin{pmatrix}x_B-x_A\\y_B-y_A\\z_B-z_A\end{pmatrix} \ \ \text{and} \ \ \begin{pmatrix}v_1\\v_2\\v_3\end{pmatrix}=\begin{pmatrix}x_C-x_A\\y_C-y_A\\z_C-z_A\end{pmatrix}$$

$$\text{area}=\frac12 \sqrt{(u_2v_3-u_3v_2)^2+(u_3v_1-u_1v_3)^2+(u_1v_2-u_2v_1)^2}$$