Blender
V3.3
|
#include <Projections.h>
Public Member Functions | |
CubeTriangleIsect () | |
CubeTriangleIsect (int64_t cube[2][3], int64_t trig[3][3], int64_t error, int triind) | |
CubeTriangleIsect (CubeTriangleIsect *parent) | |
unsigned char | getBoxMask () |
void | shift (int off[3]) |
int | isIntersecting () const |
int | isIntersectingPrimary (int edgeInd) const |
float | getIntersectionPrimary (int edgeInd) const |
Public Attributes | |
TriangleProjection * | inherit |
Inheritable portion. More... | |
CubeProjection | cubeProj [NUM_AXES] |
Projections of the cube vertices. More... | |
Class for projections of cube / triangle vertices on the separating axes
Definition at line 69 of file Projections.h.
|
inline |
Definition at line 78 of file Projections.h.
CubeTriangleIsect::CubeTriangleIsect | ( | int64_t | cube[2][3], |
int64_t | tri[3][3], | ||
int64_t | error, | ||
int | triind | ||
) |
Construction from a cube (axes aligned) and triangle
Definition at line 134 of file Projections.cpp.
References create_projection_axes(), crossProduct(), cubeProj, dotProduct(), double(), CubeProjection::edges, TriangleProjection::index, inherit, CubeProjection::max, max, CubeProjection::min, min, TriangleProjection::norm, normalize(), NUM_AXES, CubeProjection::origin, TriangleProjection::tri_proj, and vertmap.
CubeTriangleIsect::CubeTriangleIsect | ( | CubeTriangleIsect * | parent | ) |
Construction from a parent CubeTriangleIsect object and the index of the children
Definition at line 215 of file Projections.cpp.
References cubeProj, CubeProjection::edges, inherit, CubeProjection::max, CubeProjection::min, NUM_AXES, and CubeProjection::origin.
unsigned char CubeTriangleIsect::getBoxMask | ( | ) |
Definition at line 232 of file Projections.cpp.
References cubeProj, CubeProjection::edges, inherit, CubeProjection::origin, and TriangleProjection::tri_proj.
float CubeTriangleIsect::getIntersectionPrimary | ( | int | edgeInd | ) | const |
Definition at line 328 of file Projections.cpp.
References cubeProj, double(), CubeProjection::edges, inherit, CubeProjection::origin, and TriangleProjection::tri_proj.
int CubeTriangleIsect::isIntersecting | ( | ) | const |
Method to test intersection of the triangle and the cube
Definition at line 280 of file Projections.cpp.
References cubeProj, inherit, CubeProjection::max, CubeProjection::min, NUM_AXES, CubeProjection::origin, and TriangleProjection::tri_proj.
int CubeTriangleIsect::isIntersectingPrimary | ( | int | edgeInd | ) | const |
Definition at line 305 of file Projections.cpp.
References cubeProj, CubeProjection::edges, inherit, NUM_AXES, CubeProjection::origin, and TriangleProjection::tri_proj.
void CubeTriangleIsect::shift | ( | int | off[3] | ) |
Shifting a cube to a new origin
Definition at line 269 of file Projections.cpp.
References cubeProj, CubeProjection::edges, NUM_AXES, and CubeProjection::origin.
CubeProjection CubeTriangleIsect::cubeProj[NUM_AXES] |
Projections of the cube vertices.
Definition at line 75 of file Projections.h.
Referenced by CubeTriangleIsect(), getBoxMask(), getIntersectionPrimary(), isIntersecting(), isIntersectingPrimary(), and shift().
TriangleProjection* CubeTriangleIsect::inherit |
Inheritable portion.
Definition at line 72 of file Projections.h.
Referenced by CubeTriangleIsect(), getBoxMask(), getIntersectionPrimary(), isIntersecting(), and isIntersectingPrimary().