Axis aligned box. More...
#include <gim_box_collision.h>
Public Member Functions | |
SIMD_FORCE_INLINE void | appy_transform (const btTransform &trans) |
Apply a transform to an AABB. | |
template<typename CLASS_POINT > | |
SIMD_FORCE_INLINE void | calc_from_triangle (const CLASS_POINT &V1, const CLASS_POINT &V2, const CLASS_POINT &V3) |
template<typename CLASS_POINT > | |
SIMD_FORCE_INLINE void | calc_from_triangle_margin (const CLASS_POINT &V1, const CLASS_POINT &V2, const CLASS_POINT &V3, btScalar margin) |
SIMD_FORCE_INLINE bool | collide_plane (const btVector4 &plane) |
Simple test for planes. | |
SIMD_FORCE_INLINE bool | collide_ray (const btVector3 &vorigin, const btVector3 &vdir) |
Finds the Ray intersection parameter. | |
SIMD_FORCE_INLINE bool | collide_triangle_exact (const btVector3 &p1, const btVector3 &p2, const btVector3 &p3, const btVector4 &triangle_plane) |
test for a triangle, with edges | |
SIMD_FORCE_INLINE void | copy_with_margin (const GIM_AABB &other, btScalar margin) |
SIMD_FORCE_INLINE void | find_intersection (const GIM_AABB &other, GIM_AABB &intersection) const |
Finds the intersecting box between this box and the other. | |
SIMD_FORCE_INLINE void | get_center_extend (btVector3 ¢er, btVector3 &extend) const |
Gets the extend and center. | |
GIM_AABB () | |
GIM_AABB (const btVector3 &V1, const btVector3 &V2, const btVector3 &V3) | |
GIM_AABB (const btVector3 &V1, const btVector3 &V2, const btVector3 &V3, GREAL margin) | |
GIM_AABB (const GIM_AABB &other) | |
GIM_AABB (const GIM_AABB &other, btScalar margin) | |
SIMD_FORCE_INLINE bool | has_collision (const GIM_AABB &other) const |
SIMD_FORCE_INLINE void | increment_margin (btScalar margin) |
SIMD_FORCE_INLINE void | invalidate () |
SIMD_FORCE_INLINE void | merge (const GIM_AABB &box) |
Merges a Box. | |
template<typename CLASS_POINT > | |
SIMD_FORCE_INLINE void | merge_point (const CLASS_POINT &point) |
Merges a point. | |
SIMD_FORCE_INLINE bool | overlapping_trans_cache (const GIM_AABB &box, const GIM_BOX_BOX_TRANSFORM_CACHE &transcache, bool fulltest) |
transcache is the transformation cache from box to this AABB | |
SIMD_FORCE_INLINE bool | overlapping_trans_conservative (const GIM_AABB &box, btTransform &trans1_to_0) |
SIMD_FORCE_INLINE ePLANE_INTERSECTION_TYPE | plane_classify (const btVector4 &plane) const |
SIMD_FORCE_INLINE void | projection_interval (const btVector3 &direction, btScalar &vmin, btScalar &vmax) const |
Public Attributes | |
btVector3 | m_max |
btVector3 | m_min |
Axis aligned box.
Definition at line 199 of file gim_box_collision.h.
GIM_AABB::GIM_AABB | ( | ) | [inline] |
Definition at line 205 of file gim_box_collision.h.
GIM_AABB::GIM_AABB | ( | const btVector3 & | V1, |
const btVector3 & | V2, | ||
const btVector3 & | V3 | ||
) | [inline] |
Definition at line 209 of file gim_box_collision.h.
GIM_AABB::GIM_AABB | ( | const btVector3 & | V1, |
const btVector3 & | V2, | ||
const btVector3 & | V3, | ||
GREAL | margin | ||
) | [inline] |
Definition at line 222 of file gim_box_collision.h.
GIM_AABB::GIM_AABB | ( | const GIM_AABB & | other | ) | [inline] |
Definition at line 243 of file gim_box_collision.h.
GIM_AABB::GIM_AABB | ( | const GIM_AABB & | other, |
btScalar | margin | ||
) | [inline] |
Definition at line 248 of file gim_box_collision.h.
SIMD_FORCE_INLINE void GIM_AABB::appy_transform | ( | const btTransform & | trans | ) | [inline] |
Apply a transform to an AABB.
Definition at line 328 of file gim_box_collision.h.
SIMD_FORCE_INLINE void GIM_AABB::calc_from_triangle | ( | const CLASS_POINT & | V1, |
const CLASS_POINT & | V2, | ||
const CLASS_POINT & | V3 | ||
) | [inline] |
Definition at line 291 of file gim_box_collision.h.
SIMD_FORCE_INLINE void GIM_AABB::calc_from_triangle_margin | ( | const CLASS_POINT & | V1, |
const CLASS_POINT & | V2, | ||
const CLASS_POINT & | V3, | ||
btScalar | margin | ||
) | [inline] |
Definition at line 306 of file gim_box_collision.h.
SIMD_FORCE_INLINE bool GIM_AABB::collide_plane | ( | const btVector4 & | plane | ) | [inline] |
Simple test for planes.
Definition at line 520 of file gim_box_collision.h.
SIMD_FORCE_INLINE bool GIM_AABB::collide_ray | ( | const btVector3 & | vorigin, |
const btVector3 & | vdir | ||
) | [inline] |
Finds the Ray intersection parameter.
aabb | Aligned box |
vorigin | A vec3f with the origin of the ray |
vdir | A vec3f with the direction of the ray |
Definition at line 407 of file gim_box_collision.h.
SIMD_FORCE_INLINE bool GIM_AABB::collide_triangle_exact | ( | const btVector3 & | p1, |
const btVector3 & | p2, | ||
const btVector3 & | p3, | ||
const btVector4 & | triangle_plane | ||
) | [inline] |
test for a triangle, with edges
Definition at line 528 of file gim_box_collision.h.
SIMD_FORCE_INLINE void GIM_AABB::copy_with_margin | ( | const GIM_AABB & | other, |
btScalar | margin | ||
) | [inline] |
Definition at line 279 of file gim_box_collision.h.
SIMD_FORCE_INLINE void GIM_AABB::find_intersection | ( | const GIM_AABB & | other, |
GIM_AABB & | intersection | ||
) | const [inline] |
Finds the intersecting box between this box and the other.
Definition at line 376 of file gim_box_collision.h.
SIMD_FORCE_INLINE void GIM_AABB::get_center_extend | ( | btVector3 & | center, |
btVector3 & | extend | ||
) | const [inline] |
Gets the extend and center.
Definition at line 369 of file gim_box_collision.h.
SIMD_FORCE_INLINE bool GIM_AABB::has_collision | ( | const GIM_AABB & | other | ) | const [inline] |
Definition at line 388 of file gim_box_collision.h.
SIMD_FORCE_INLINE void GIM_AABB::increment_margin | ( | btScalar | margin | ) | [inline] |
Definition at line 269 of file gim_box_collision.h.
SIMD_FORCE_INLINE void GIM_AABB::invalidate | ( | ) | [inline] |
Definition at line 259 of file gim_box_collision.h.
SIMD_FORCE_INLINE void GIM_AABB::merge | ( | const GIM_AABB & | box | ) | [inline] |
Merges a Box.
Definition at line 344 of file gim_box_collision.h.
SIMD_FORCE_INLINE void GIM_AABB::merge_point | ( | const CLASS_POINT & | point | ) | [inline] |
Merges a point.
Definition at line 357 of file gim_box_collision.h.
SIMD_FORCE_INLINE bool GIM_AABB::overlapping_trans_cache | ( | const GIM_AABB & | box, |
const GIM_BOX_BOX_TRANSFORM_CACHE & | transcache, | ||
bool | fulltest | ||
) | [inline] |
transcache is the transformation cache from box to this AABB
Definition at line 466 of file gim_box_collision.h.
SIMD_FORCE_INLINE bool GIM_AABB::overlapping_trans_conservative | ( | const GIM_AABB & | box, |
btTransform & | trans1_to_0 | ||
) | [inline] |
Definition at line 458 of file gim_box_collision.h.
SIMD_FORCE_INLINE ePLANE_INTERSECTION_TYPE GIM_AABB::plane_classify | ( | const btVector4 & | plane | ) | const [inline] |
Definition at line 441 of file gim_box_collision.h.
SIMD_FORCE_INLINE void GIM_AABB::projection_interval | ( | const btVector3 & | direction, |
btScalar & | vmin, | ||
btScalar & | vmax | ||
) | const [inline] |
Definition at line 430 of file gim_box_collision.h.
btVector3 GIM_AABB::m_max |
Definition at line 203 of file gim_box_collision.h.
btVector3 GIM_AABB::m_min |
Definition at line 202 of file gim_box_collision.h.