1rtcSetGeometryBoundsFunctiEomnb(r3e)e Ray Tracing KernretlcsSe3tGeometryBoundsFunction(3)
2
3
4
5   NAME
6              rtcSetGeometryBoundsFunction - sets a callback to query the
7                bounding box of user-defined primitives
8
9   SYNOPSIS
10              #include <embree3/rtcore.h>
11
12              struct RTCBoundsFunctionArguments
13              {
14                void* geometryUserPtr;
15                unsigned int primID;
16                unsigned int timeStep;
17                struct RTCBounds* bounds_o;
18              };
19
20              typedef void (*RTCBoundsFunction)(
21                const struct RTCBoundsFunctionArguments* args
22              );
23
24              void rtcSetGeometryBoundsFunction(
25                RTCGeometry geometry,
26                RTCBoundsFunction bounds,
27                void* userPtr
28              );
29
30   DESCRIPTION
31       The  rtcSetGeometryBoundsFunction  function  registers  a  bounding box
32       callback function (bounds argument) with payload (userPtr argument) for
33       the specified user geometry (geometry argument).
34
35       Only  a  single  callback  function can be registered per geometry, and
36       further invocations overwrite the  previously  set  callback  function.
37       Passing NULL as function pointer disables the registered callback func‐
38       tion.
39
40       The registered bounding box callback function is invoked  to  calculate
41       axis-aligned bounding boxes of the primitives of the user-defined geom‐
42       etry during spatial acceleration structure construction.  The  bounding
43       box  callback  of RTCBoundsFunction type is invoked with a pointer to a
44       structure of type  RTCBoundsFunctionArguments  which  contains  various
45       arguments, such as: the user data of the geometry (geometryUserPtr mem‐
46       ber), the ID of the primitive to calculate the bounds for (primID  mem‐
47       ber), the time step at which to calculate the bounds (timeStep member),
48       and a memory location to write the calculated bound to  (bounds_o  mem‐
49       ber).
50
51       In  a  typical usage scenario one would store a pointer to the internal
52       representation of the user geometry  object  using  rtcSetGeometryUser‐
53       Data.  The callback function can then read that pointer from the geome‐
54       tryUserPtr  field  and  calculate  the  proper  bounding  box  for  the
55       requested primitive and time, and store that bounding box to the desti‐
56       nation structure (bounds_o member).
57
58   EXIT STATUS
59       On failure an error code is set that can  be  queried  using  rtcGetDe‐
60       viceError.
61
62   SEE ALSO
63       [RTC_GEOMETRY_TYPE_USER]
64
65
66
67                                               rtcSetGeometryBoundsFunction(3)
Impressum