Namespaces | Typedefs | Functions | Variables

aesop-physics.cpp File Reference

#include "aesop-physics.h"
#include "bullet/bullet.h"
#include "common/wave_ex.h"
#include "datahash/datahash_util.h"
#include "hfield/heightfield.h"
#include "perf/perf.h"
#include "threadsafe/threadsafe_queue.h"
#include "trimesh/trimesh.h"
Include dependency graph for aesop-physics.cpp:

Go to the source code of this file.

Namespaces

namespace  aesop

Typedefs

typedef btTransform aesop::Transform3D
typedef std::map< dword_t,
smart_ptr< PhysicsObject > > 
aesop::id_object_map_t
typedef std::vector< ObjectImpl * > aesop::vec_objimpl_t

Functions

template<class T >
long aesop::getNewIdForObject (smart_ptr< T > &in_obj)
smart_ptr< PhysicsObject > aesop::getPhysicsObjectById (dword_t id)
 access to static registry of physics objects
static void aesop::removeObjectFromIdMap (long id)
static btVector3 aesop::getBulletVectorFromPoint3d (const point3d_t &pos) throw ()
template<class T >
static point3d_t aesop::getPoint3dFromBulletType (const T &v) throw ()
static point3d_t aesop::getNullPoint (void) throw ()
static point3d_t aesop::getCollisionObjectPosition (const btCollisionObject *obj)
static void aesop::dumpVector (const char *title, const btVector3 &v) throw ()
static void aesop::dumpAabb (const char *title, const btVector3 &aabbMin, const btVector3 &aabbMax) throw ()
static void aesop::dumpCollisionObject (const char *title, const btCollisionObject *obj) throw ()
static ObjectImpl * aesop::getObject (PhysicsObject *obj)
static ObjectImpl * aesop::getPhysicsObject (void *pv)
static ShapeImpl * aesop::getShape (const PhysicsShape *s)
void aesop::getVectorFromEulerAngles (const point3d_t &euler,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 (const quaternion_t &rotation,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.
void aesop::dumpWorld (PhysicsWorld *world) throw ()
 expensive debugging function
void aesop::getTransformFromPlacement (const placement_t &placement, Transform3D &T)
smart_ptr< PhysicsShape > aesop::createBoxShape (const point3d_t &dimensions)
smart_ptr< PhysicsShape > aesop::createCubeShape (float edge_length)
smart_ptr< PhysicsShape > aesop::createTrimeshShape (const trimesh::Trimesh *trimesh)
smart_ptr< PhysicsShape > aesop::createHeightfieldShape (const hfield::Heightfield *field)
smart_ptr< PhysicsShape > aesop::createCapsuleShape (float height, float radius)
smart_ptr< PhysicsObject > aesop::createMoveableObject (const physics_meta_t &meta, const placement_t &placement)
smart_ptr< PhysicsObject > aesop::createObject (const physics_meta_t &meta,const placement_t &placement)
 create an object from a physics meta and instance information
smart_ptr< PhysicsObject > aesop::getObjectHitFromPlacement (PhysicsWorld *world,const placement_t &placement,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!

Variables

static const float aesop::s_stepHeight = 0.35
static const int aesop::s_ghostCollisionFlags
static id_object_map_t aesop::s_idMap
static smart_mutex aesop::s_idMapMutex
static const dword_t aesop::s_dwMagicObject = 0x34892199
static const dword_t aesop::s_dwMagicCollision = 0x55784923