Bullet Collision Detection & Physics Library: GIM_AABB Class Reference

Bullet Collision Detection & Physics Library

Public Member Functions | Public Attributes | List of all members
GIM_AABB Class Reference

Axis aligned box. More...

`#include <gim_box_collision.h>`

Collaboration diagram for GIM_AABB:
[legend]

## Public Member Functions
| 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)
void | invalidate ()
void | increment_margin (btScalar margin)
void | copy_with_margin (const GIM_AABB &other, btScalar margin)
template<typename CLASS_POINT >
void | calc_from_triangle (const CLASS_POINT &V1, const CLASS_POINT &V2, const CLASS_POINT &V3)
template<typename CLASS_POINT >
void | calc_from_triangle_margin (const CLASS_POINT &V1, const CLASS_POINT &V2, const CLASS_POINT &V3, btScalar margin)
void | appy_transform (const btTransform &trans)
| Apply a transform to an AABB. More...
void | merge (const GIM_AABB &box)
| Merges a Box. More...
template<typename CLASS_POINT >
void | merge_point (const CLASS_POINT &point)
| Merges a point. More...
void | get_center_extend (btVector3 &center, btVector3 &extend) const
| Gets the extend and center. More...
void | find_intersection (const GIM_AABB &other, GIM_AABB &intersection) const
| Finds the intersecting box between this box and the other. More...
bool | has_collision (const GIM_AABB &other) const
bool | collide_ray (const btVector3 &vorigin, const btVector3 &vdir)
| Finds the Ray intersection parameter. More...
void | projection_interval (const btVector3 &direction, btScalar &vmin, btScalar &vmax) const
ePLANE_INTERSECTION_TYPE | plane_classify (const btVector4 &plane) const
bool | overlapping_trans_conservative (const GIM_AABB &box, btTransform &trans1_to_0)
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 More...
bool | collide_plane (const btVector4 &plane)
| Simple test for planes. More...
bool | collide_triangle_exact (const btVector3 &p1, const btVector3 &p2, const btVector3 &p3, const btVector4 &triangle_plane)
| test for a triangle, with edges More...

## Public Attributes
btVector3 | m_min
btVector3 | m_max

## Detailed Description

Axis aligned box.

Definition at line 195 of file gim_box_collision.h.

## Constructor & Destructor Documentation

## ◆ GIM_AABB() [1/5]

GIM_AABB::GIM_AABB | ( |  | ) |
| inline

Definition at line 201 of file gim_box_collision.h.

## ◆ GIM_AABB() [2/5]

GIM_AABB::GIM_AABB | ( | const btVector3 & | V1,
|  | const btVector3 & | V2,
|  | const btVector3 & | V3
| ) |  |
| inline

Definition at line 205 of file gim_box_collision.h.

## ◆ GIM_AABB() [3/5]

GIM_AABB::GIM_AABB | ( | const btVector3 & | V1,
|  | const btVector3 & | V2,
|  | const btVector3 & | V3,
|  | GREAL | margin
| ) |  |
| inline

Definition at line 218 of file gim_box_collision.h.

## ◆ GIM_AABB() [4/5]

GIM_AABB::GIM_AABB | ( | const GIM_AABB & | other | ) |
| inline

Definition at line 239 of file gim_box_collision.h.

## ◆ GIM_AABB() [5/5]

GIM_AABB::GIM_AABB | ( | const GIM_AABB & | other,
|  | btScalar | margin
| ) |  |
| inline

Definition at line 243 of file gim_box_collision.h.

## Member Function Documentation

## ◆ appy_transform()

void GIM_AABB::appy_transform | ( | const btTransform & | trans | ) |
| inline

Apply a transform to an AABB.

Definition at line 322 of file gim_box_collision.h.

## ◆ calc_from_triangle()

template<typename CLASS_POINT >

void GIM_AABB::calc_from_triangle | ( | const CLASS_POINT & | V1,
|  | const CLASS_POINT & | V2,
|  | const CLASS_POINT & | V3
| ) |  |
| inline

Definition at line 285 of file gim_box_collision.h.

## ◆ calc_from_triangle_margin()

template<typename CLASS_POINT >

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 300 of file gim_box_collision.h.

## ◆ collide_plane()

bool GIM_AABB::collide_plane | ( | const btVector4 & | plane | ) |
| inline

Simple test for planes.

Definition at line 510 of file gim_box_collision.h.

## ◆ collide_ray()

bool GIM_AABB::collide_ray | ( | const btVector3 & | vorigin,
|  | const btVector3 & | vdir
| ) |  |
| inline

Finds the Ray intersection parameter.

Parameters

  aabb | Aligned box
  vorigin | A vec3f with the origin of the ray
  vdir | A vec3f with the direction of the ray

Definition at line 400 of file gim_box_collision.h.

## ◆ collide_triangle_exact()

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 518 of file gim_box_collision.h.

## ◆ copy_with_margin()

void GIM_AABB::copy_with_margin | ( | const GIM_AABB & | other,
|  | btScalar | margin
| ) |  |
| inline

Definition at line 273 of file gim_box_collision.h.

## ◆ find_intersection()

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 370 of file gim_box_collision.h.

## ◆ get_center_extend()

void GIM_AABB::get_center_extend | ( | btVector3 & | center,
|  | btVector3 & | extend
| ) |  | const
| inline

Gets the extend and center.

Definition at line 363 of file gim_box_collision.h.

## ◆ has_collision()

bool GIM_AABB::has_collision | ( | const GIM_AABB & | other | ) | const
| inline

Definition at line 381 of file gim_box_collision.h.

## ◆ increment_margin()

void GIM_AABB::increment_margin | ( | btScalar | margin | ) |
| inline

Definition at line 263 of file gim_box_collision.h.

## ◆ invalidate()

void GIM_AABB::invalidate | ( |  | ) |
| inline

Definition at line 253 of file gim_box_collision.h.

## ◆ merge()

void GIM_AABB::merge | ( | const GIM_AABB & | box | ) |
| inline

Merges a Box.

Definition at line 338 of file gim_box_collision.h.

## ◆ merge_point()

template<typename CLASS_POINT >

void GIM_AABB::merge_point | ( | const CLASS_POINT & | point | ) |
| inline

Merges a point.

Definition at line 351 of file gim_box_collision.h.

## ◆ overlapping_trans_cache()

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 458 of file gim_box_collision.h.

## ◆ overlapping_trans_conservative()

bool GIM_AABB::overlapping_trans_conservative | ( | const GIM_AABB & | box,
|  | btTransform & | trans1_to_0
| ) |  |
| inline

Definition at line 450 of file gim_box_collision.h.

## ◆ plane_classify()

ePLANE_INTERSECTION_TYPE GIM_AABB::plane_classify | ( | const btVector4 & | plane | ) | const
| inline

Definition at line 433 of file gim_box_collision.h.

## ◆ projection_interval()

void GIM_AABB::projection_interval | ( | const btVector3 & | direction,
|  | btScalar & | vmin,
|  | btScalar & | vmax
| ) |  | const
| inline

Definition at line 422 of file gim_box_collision.h.

## Member Data Documentation

## ◆ m_max

btVector3 GIM_AABB::m_max

Definition at line 199 of file gim_box_collision.h.

## ◆ m_min

btVector3 GIM_AABB::m_min

Definition at line 198 of file gim_box_collision.h.

The documentation for this class was generated from the following file:

- gim_box_collision.h