# oriented_bounding_box_xy_numpy

compas.geometry.oriented_bounding_box_xy_numpy(points)[source]

Compute the oriented minimum bounding box of set of points in the XY plane.

Parameters

points (array_like[point]) – XY(Z) coordinates of the points.

Returns

list[[float, float, float]] – XYZ coordinates of 8 points defining a box.

Notes

The oriented (minimum) bounding box (OBB) is computed using the following procedure:

1. Compute the convex hull of the points.

2. For each of the edges on the hull:

1. Compute the s-axis as the unit vector in the direction of the edge

2. Compute the othorgonal t-axis.

3. Use the start point of the edge as origin.

4. Compute the spread of the points along the s-axis. (dot product of the point vecor in local coordinates and the s-axis)

5. Compute the spread along the t-axis.

6. Determine the side of s on which the points are.

7. Compute and store the corners of the bbox and its area.

3. Select the box with the smallest area.

Examples

>>>