angle_points

compas.geometry.angle_points(a, b, c, deg=False)[source]

Compute the smallest angle between the vectors defined by three points.

Parameters:
a[float, float, float] | compas.geometry.Point

XYZ coordinates.

b[float, float, float] | compas.geometry.Point

XYZ coordinates.

c[float, float, float] | compas.geometry.Point

XYZ coordinates.

degbool, optional

If True, returns the angle in degrees.

Returns:
float

The smallest angle in radians (in degrees if deg == True). The angle is always positive.

Notes

The vectors are defined in the following way

\[\begin{split}\mathbf{u} = \mathbf{b} - \mathbf{a} \\ \mathbf{v} = \mathbf{c} - \mathbf{a}\end{split}\]

Z components may be provided, but are simply ignored.