diff options
Diffstat (limited to 'doc/Manual/en/BH_Ray3f.pod')
| -rw-r--r-- | doc/Manual/en/BH_Ray3f.pod | 162 |
1 files changed, 162 insertions, 0 deletions
diff --git a/doc/Manual/en/BH_Ray3f.pod b/doc/Manual/en/BH_Ray3f.pod new file mode 100644 index 0000000..3f7f8ef --- /dev/null +++ b/doc/Manual/en/BH_Ray3f.pod @@ -0,0 +1,162 @@ +=encoding UTF-8 + + +=head1 NAME + +BH_Ray3f, BH_Segment3f - ray/segment in space + + +=head1 SYNTAX + + #include <BH/Math/Ray3f.h> + + cc prog.c -o prog -lbh + + +=head1 DESCRIPTION + +This module provides functions for working with rays and segments in +three-dimensional space. It includes methods for checking intersections of rays +and segments with planes, triangles, and bounding boxes. + + +=head1 API CALLS + + +=head2 BH_Ray3fIntersectPlane + + int BH_Ray3fIntersectPlane(const float start[3], + const float direction[3], + const float plane[4], + float *t, + float out[3]); + +Checks the intersection between a ray and a plane. + +The parameters I<start> and I<direction> describe the ray. + +The parameter I<plane> describes the plane. + +The parameter I<t> describes the resulting time of the ray's intersection. + +The parameter I<out> describes the resulting point of intersection. + +In case of success, the function returns 0, in case of an error - an error code. + + +=head2 BH_Ray3fIntersectTriangle + + int BH_Ray3fIntersectTriangle(const float start[3], + const float direction[3], + const float a[3], + const float b[3], + const float c[3], + float *t, + float out[3]); + +Checks the intersection between a ray and a triangle. + +The parameters I<start> and I<direction> describe the ray. + +The parameters I<a>, I<b>, I<c> describe the points of the triangle. + +The parameter I<t> describes the resulting time of the ray's intersection. + +The parameter I<out> describes the resulting point of intersection. + +In case of success, the function returns 0, in case of an error - an error code. + + +=head2 BH_Segment3fIntersectPlane + + int BH_Segment3fIntersectPlane(const float start[3], + const float end[3], + const float plane[4], + float *t, + float out[3]); + +Checks the intersection between a segment and a plane. + +The parameters I<start> and I<end> describe the segment. + +The parameter I<plane> describes the plane. + +The parameter I<t> describes the resulting time of the segment's intersection. + +The parameter I<out> describes the resulting point of intersection. + +In case of success, the function returns 0, in case of an error - an error code. + + +=head2 BH_Segment3fIntersectTriangle + + int BH_Segment3fIntersectTriangle(const float start[3], + const float end[3], + const float a[3], + const float b[3], + const float c[3], + float *t, + float out[3]); + +Checks the intersection between a segment and a triangle. + +The parameters I<start> and I<end> describe the segment. + +The parameters I<a>, I<b>, I<c> describe the points of the triangle. + +The parameter I<t> describes the resulting time of the ray's intersection. + +The parameter I<out> describes the resulting point of intersection. + +In case of success, the function returns 0, in case of an error - an error code. + + +=head2 BH_Ray3fIntersectBox3f + + int BH_Ray3fIntersectBox3f(const float aStart[3], + const float aDirection[3], + const float bMin[3], + const float bMax[3], + float *t, + float out[3]); + +Checks the intersection between a ray and a bounding box. + +The parameters I<aStart> and I<aDirection> describe the ray. + +The parameters I<bMin> and I<bMax> describe the bounding box. + +The parameter I<t> describes the resulting time of the first segment's +intersection. + +The parameter I<out> describes the resulting point of intersection. + +In case of success, the function returns 0, in case of an error - an error code. + + +=head2 BH_Segment3fIntersectBox3f + + int BH_Segment3fIntersectBox3f(const float aStart[3], + const float aEnd[3], + const float bMin[3], + const float bMax[3], + float *t, + float out[3]); + +Checks the intersection between a segment and a bounding box. + +The parameters I<aStart> and I<aEnd> describe the segment. + +The parameters I<bMin> and I<bMax> describe the bounding box. + +The parameter I<t> describes the resulting time of the first segment's +intersection. + +The parameter I<out> describes the resulting point of intersection. + +In case of success, the function returns 0, in case of an error - an error code. + + +=head1 SEE ALSO + +L<BH> |
