How to split an oriented bounding box?

I am writing code that will build a tree of oriented bounding rectangle (obb) for a (not necessarily convex) polygon in two dimensions.

Until now, I could find the smallest possible area of ​​the polygon area by finding its convex hull and using the rotating calipers on the case.

Below is the image below. A yellow filled polygon with red lines and red dots represents the original polygon. The convex hull is shown in blue with black lines, and obb is shown in purple lines.

(Edit) As requested: Interactive version - checked only in chrome

, OBB, OBB. , OBB .

, , , , OBB . obb , , ( ?).

  • ?
  • , ( )? ?
+5
2

, OBB :

, , :

:

O (), , .

, ( ) . , , ( ), . :

. , 2:

enter image description here

, , -, , !

+4

, , , ...

, . () :

  • , . ( , )
  • . .
  • ( : , ).
  • ( ).

: BSP. , . , BSP ( OBB).

( 1)

, , . . ( 1 ), . "" . , .

, OBB , . OBB, ...

( ). : BSP , /, .

, , , , , , , , .

: , , , , : BSP OBB node, . , node OBB , - . , Doom - ( BB).

+3

All Articles