Tactics: Western Philosophers Vs. Musicians  0.12
A turn-based tactical game combining rules and gameplay elements inspired by Final Fantasy Tactics and the Mayfair Exponential Game System. Unlike most games of this type, motion is in full, grid-less 3D.
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | List of all members
OpenSkyNet::CD::Box Struct Reference

#include <CDVolume.h>

Inheritance diagram for OpenSkyNet::CD::Box:
OpenSkyNet::CD::Shape

Public Member Functions

 Box (const float &boundingRadius_, const float &width_, const float &height_, const float &depth_)
 
virtual SHAPE_TYPE getType () const
 
Math::Point getDimensions () const
 
virtual float getDist (const Math::Point<> &thisCenter_, const Math::Matrix3x3 &thisRot_, const Shape *otherShape_, const Math::Point<> &otherCenter_, const Math::Matrix3x3 &otherRot_) const
 
virtual bool getFirstIntersection (const Math::Point<> &thisCenter_, const Math::Matrix3x3 &thisRot_, const Math::Point<> &thisVel_, const Shape *otherShape_, const Math::Point<> &otherCenter_, const Math::Matrix3x3 &otherRot_, const Math::Point<> &otherVel_, HitInfo &hitInfo_) const
 
virtual void scale (const Math::Point<> &factor_)
 
- Public Member Functions inherited from OpenSkyNet::CD::Shape
 Shape (const float &boundingRadius_=0.0f)
 
virtual ~Shape ()
 
virtual bool getClosestRayIntersection (const Math::Point<> &thisCenter_, const Math::Matrix3x3 &thisRot_, const Math::Point<> &rayOrigin_, const Math::Point<> &rayDir_, Math::Point<> &hitPos_, float &t_, Math::Point<> &hitNormal_) const
 

Public Attributes

float _widthDiv2
 
float _heightDiv2
 
float _depthDiv2
 
- Public Attributes inherited from OpenSkyNet::CD::Shape
float _boundingRadius
 

Constructor & Destructor Documentation

OpenSkyNet::CD::Box::Box ( const float &  boundingRadius_,
const float &  width_,
const float &  height_,
const float &  depth_ 
)
inline

Member Function Documentation

Math::Point OpenSkyNet::CD::Box::getDimensions ( ) const
inline
float Box::getDist ( const Math::Point<> &  thisCenter_,
const Math::Matrix3x3 thisRot_,
const Shape otherShape_,
const Math::Point<> &  otherCenter_,
const Math::Matrix3x3 otherRot_ 
) const
virtual

NOTE: This method assumes all rotations for boxes are identity matrices (so are axis-aligned boxes).

Reimplemented from OpenSkyNet::CD::Shape.

bool Box::getFirstIntersection ( const Math::Point<> &  thisCenter_,
const Math::Matrix3x3 thisRot_,
const Math::Point<> &  thisVel_,
const Shape otherShape_,
const Math::Point<> &  otherCenter_,
const Math::Matrix3x3 otherRot_,
const Math::Point<> &  otherVel_,
HitInfo hitInfo_ 
) const
virtual
Todo:
hit position
Todo:
hit normal for edges and corners
Todo:
hit position
Todo:
hit normal for edges and corners
Todo:
box-sphere first intersection

Reimplemented from OpenSkyNet::CD::Shape.

virtual SHAPE_TYPE OpenSkyNet::CD::Box::getType ( ) const
inlinevirtual

Implements OpenSkyNet::CD::Shape.

void Box::scale ( const Math::Point<> &  factor_)
virtual

Reimplemented from OpenSkyNet::CD::Shape.

Member Data Documentation

float OpenSkyNet::CD::Box::_depthDiv2
float OpenSkyNet::CD::Box::_heightDiv2
float OpenSkyNet::CD::Box::_widthDiv2

The documentation for this struct was generated from the following files: