Public Types | Public Member Functions

OpenTissue::collision::GeometryInterface< math_types > Class Template Reference

#include <collision_geometry_interface.h>

Inheritance diagram for OpenTissue::collision::GeometryInterface< math_types >:
OpenTissue::utility::ClassIDInterface OpenTissue::geometry::BaseShape< math_types > OpenTissue::geometry::VolumeShape< math_types >

List of all members.

Public Types

typedef math_types::vector3_type vector3_type
typedef math_types::matrix3x3_type matrix3x3_type

Public Member Functions

virtual void compute_collision_aabb (vector3_type const &r, matrix3x3_type const &R, vector3_type &min_coord, vector3_type &max_coord) const =0

Detailed Description

template<typename math_types>
class OpenTissue::collision::GeometryInterface< math_types >

Collision Geometry Interface. The purpose of this class is to create a common interface for collision geometries.

The interface should make it easier to integrate geometry types into a collision detection engine. In particular it should help make multiple dispatching easier (the class_id interface) and it should support basic functionality for computing bounding boxes (compute_collision_aabb method)


Member Typedef Documentation


Member Function Documentation

template<typename math_types>
virtual void OpenTissue::collision::GeometryInterface< math_types >::compute_collision_aabb ( vector3_type const &  r,
matrix3x3_type const &  R,
vector3_type min_coord,
vector3_type max_coord 
) const [pure virtual]

Compute Bounding Box. This method computes an axis aligned bounding box (AABB) that encloses the geometry.

Parameters:
r The position of the model frame (i.e the coordinate frame the geometry lives in).
R The orientation of the model frame (i.e the coordinate frame the geometry lives in).
min_coord Upon return holds the minimum corner of the box.
max_coord Upon return holds the maximum corner of the box.

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