Classes | Namespaces | Typedefs | Functions

aesop-physics.h File Reference

#include "common/common.h"
#include "typeinst/typeinst.h"
#include "geometry/geometry_3d.h"
#include "geometry/quaternion.h"
Include dependency graph for aesop-physics.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  aesop::PhysicsShape
 a shape is a 3D template which can be used to create instances of objects More...
class  aesop::PhysicsObject
 an instance of a shape (has position, velocity, etc) More...
struct  aesop::physics_meta_t
 basic information to create an instance of a shape (== object) More...
class  aesop::PhysicsWorld
 create one of these to support physics simulations etc. More...
struct  aesop::PhysicsWorld::object_iterator_t
struct  aesop::PhysicsWorld::collision_iterator_t
struct  aesop::PhysicsWorld::collision_record_t

Namespaces

namespace  hfield
namespace  trimesh
namespace  aesop

Typedefs

typedef void(* aesop::object_iteration_fn )(IN smart_ptr< PhysicsObject > &obj, IN void *context)
 callback definition

Functions

void aesop::getVectorFromEulerAngles (IN const point3d_t &euler, OUT point3d_t &vector) throw ()
 Assuming a vector is initially pointing in the (0, 0, 1) direction, return how it is rotated by the given Euler angles.
void aesop::getVectorFromQuaternion (IN const quaternion_t &rotation, OUT point3d_t &vector) throw ()
 Assuming a vector is initially pointing in the (0, 0, 1) direction, return how it is rotated by the given quaternion.
smart_ptr< PhysicsShape > aesop::createBoxShape (IN const point3d_t &dimensions)
smart_ptr< PhysicsShape > aesop::createCubeShape (IN float edge_length)
smart_ptr< PhysicsShape > aesop::createCapsuleShape (IN float height, IN float radius)
smart_ptr< PhysicsShape > aesop::createTrimeshShape (IN const trimesh::Trimesh *trimesh)
smart_ptr< PhysicsShape > aesop::createHeightfieldShape (IN const hfield::Heightfield *field)
smart_ptr< PhysicsObject > aesop::getPhysicsObjectById (IN dword_t id)
 access to static registry of physics objects
smart_ptr< PhysicsObject > aesop::createObject (IN const physics_meta_t &meta, IN const placement_t &placement)
 create an object from a physics meta and instance information
smart_ptr< PhysicsObject > aesop::getObjectHitFromPlacement (IN PhysicsWorld *world, IN const placement_t &placement, IN float half_extent)
 given an object at the given location and view direction (orientation), what is it looking at? (First object hit by a ray cast) Can return null!
void aesop::dumpWorld (IN PhysicsWorld *world) throw ()
 expensive debugging function