1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
=encoding UTF-8
=head1 NAME
BH_Box3f - three-dimensional bounding box
=head1 SYNTAX
#include <BH/Math/Box3f.h>
cc prog.c -o prog -lbh
=head1 DESCRIPTION
The BH_Box3f module provides functions for working with three-dimensional
bounding boxes. It includes operations for union, intersection, checking if a
point is inside a box, and calculating the bounding box for a set of points.
=head1 API CALLS
=head2 BH_Box3fUnion
void BH_Box3fUnion(const float aMin[3],
const float aMax[3],
const float bMin[3],
const float bMax[3],
float outMin[3],
float outMax[3]);
Combines two bounding boxes I<A> and I<B>.
The parameters I<aMin> and I<aMax> describe the bounding box A.
The parameters I<bMin> and I<bMax> describe the bounding box B.
The parameters I<outMin> and I<outMax> describe the resulting bounding box.
=head2 BH_Box3fIntersect
int BH_Box3fIntersect(const float aMin[3],
const float aMax[3],
const float bMin[3],
const float bMax[3],
float outMin[3],
float outMax[3]);
Calculates the intersection of two bounding boxes A and B.
The parameters I<aMin> and I<aMax> describe the bounding box A.
The parameters I<bMin> and I<bMax> describe the bounding box B.
The parameters I<outMin> and I<outMax> describe the resulting bounding box.
Returns 0 in case of successful intersection or an error code.
=head2 BH_Box3fContains
int BH_Box3fContains(const float aMin[3],
const float aMax[3],
const float point[3]);
Checks if the point is inside the bounding box.
The parameters I<aMin> and I<aMax> describe the bounding box.
The parameter I<point> describes the point.
Returns 0 if the point is inside the bounding box, or an error code.
=head2 BH_Box3fEnclose
int BH_Box3fEnclose(const float *points,
size_t size,
float outMin[3],
float outMax[3]);
Calculates the bounding box for the given points.
The parameters I<points> and I<size> describe the input array of points.
The parameters I<outMin> and I<outMax> describe the resulting bounding box.
Returns 0 in case of success or an error code.
=head1 SEE ALSO
L<BH>,
L<BH_Box2f>
|