HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
UT_BoundingBox.h File Reference
#include "UT_API.h"
#include "UT_Assert.h"
#include "UT_Vector3.h"
#include "UT_Vector4.h"
#include <SYS/SYS_Inline.h>
#include <SYS/SYS_Math.h>
#include <SYS/SYS_Types.h>
#include <iosfwd>
#include <limits>
#include <stdio.h>
+ Include dependency graph for UT_BoundingBox.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  UT_BoundingBoxT< T >
 Axis-aligned bounding box (AABB). More...
 

Macros

#define UT_TESTMAX   tmax = t1 < tmax ? t1 : tmax;
 
#define UT_TESTMIN   tmin = t1 > tmin ? t1 : tmin;
 
#define UT_FASTBOX(idx)
 
#define UT_TESTMAX(face)
 
#define UT_TESTMIN(face)
 
#define UT_FASTBOX(face)
 
#define UT_TESTMAX   if(t < tmax) { if(t < tmin) return 0; tmax = t; }
 
#define UT_TESTMIN   if(t > tmin) { if(t > tmax) return 0; tmin = t; }
 
#define UT_FASTBOX(face)
 

Typedefs

using UT_BoundingBoxR = UT_BoundingBoxT< fpreal >
 
using UT_BoundingBoxF = UT_BoundingBoxT< fpreal32 >
 
using UT_BoundingBoxD = UT_BoundingBoxT< fpreal64 >
 
using UT_BoundingBoxI = UT_BoundingBoxT< int64 >
 
using UT_BoundingBox = UT_BoundingBoxT< float >
 

Functions

template<typename T >
UT_API size_t format (char *buf, size_t bufsize, const UT_BoundingBoxT< T > &v)
 

Macro Definition Documentation

#define UT_FASTBOX (   idx)
Value:
positive = (idir(idx) > 0.0); \
t1 = (vals[idx][ positive] - v0(idx))*idir(idx); UT_TESTMAX \
t1 = (vals[idx][!positive] - v0(idx))*idir(idx); UT_TESTMIN \
GLuint GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat GLfloat t1
Definition: glew.h:12900
GLfloat v0
Definition: glcorearb.h:815
#define UT_TESTMIN

Definition at line 947 of file UT_BoundingBox.h.

#define UT_FASTBOX (   face)
Value:
ray = 1.0 / d(face); \
positive = (ray > 0.0); \
t = (vals[face][ positive] - o(face))*ray; UT_TESTMAX(face) \
t = (vals[face][1-positive] - o(face))*ray; UT_TESTMIN(face) \
#define UT_TESTMAX
GLdouble GLdouble t
Definition: glew.h:1403
#define UT_TESTMIN
GLenum GLuint GLint GLenum face
Definition: glew.h:4630

Definition at line 947 of file UT_BoundingBox.h.

#define UT_FASTBOX (   face)
Value:
ray = 1.0 / d(face); \
positive = (ray > 0.0); \
t = (vals[face][ positive] - o(face))*ray; UT_TESTMAX \
t = (vals[face][1-positive] - o(face))*ray; UT_TESTMIN \
GLdouble GLdouble t
Definition: glew.h:1403
#define UT_TESTMIN
GLenum GLuint GLint GLenum face
Definition: glew.h:4630

Definition at line 947 of file UT_BoundingBox.h.

#define UT_TESTMAX   tmax = t1 < tmax ? t1 : tmax;

Definition at line 944 of file UT_BoundingBox.h.

#define UT_TESTMAX (   face)
Value:
if (t < tmax) { \
if (t < tmin) return 0; \
tmax = t; \
foundmax = face; \
}
GLdouble GLdouble t
Definition: glew.h:1403
if(rank==1) return rank
GLenum GLuint GLint GLenum face
Definition: glew.h:4630

Definition at line 944 of file UT_BoundingBox.h.

#define UT_TESTMAX   if(t < tmax) { if(t < tmin) return 0; tmax = t; }

Definition at line 944 of file UT_BoundingBox.h.

#define UT_TESTMIN   tmin = t1 > tmin ? t1 : tmin;

Definition at line 945 of file UT_BoundingBox.h.

#define UT_TESTMIN (   face)
Value:
if (t > tmin) { \
if (t > tmax) return 0; \
tmin = t; \
foundmin = face; \
}
GLdouble GLdouble t
Definition: glew.h:1403
if(rank==1) return rank
GLenum GLuint GLint GLenum face
Definition: glew.h:4630

Definition at line 945 of file UT_BoundingBox.h.

#define UT_TESTMIN   if(t > tmin) { if(t > tmax) return 0; tmin = t; }

Definition at line 945 of file UT_BoundingBox.h.

Typedef Documentation

Definition at line 476 of file UT_BoundingBox.h.

Definition at line 474 of file UT_BoundingBox.h.

Definition at line 473 of file UT_BoundingBox.h.

Definition at line 475 of file UT_BoundingBox.h.

Definition at line 472 of file UT_BoundingBox.h.

Function Documentation

template<typename T >
UT_API size_t format ( char *  buf,
size_t  bufsize,
const UT_BoundingBoxT< T > &  v 
)