VR-Forces 4.0.4 Class Documentation
include/vrfobjcore/collision.h
Go to the documentation of this file.
00001 /*******************************************************************************
00002 ** Copyright (c) 2004 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 *******************************************************************************/
00005 /*******************************************************************************
00006 ** $RCSfile: collision.h,v $ $Revision: 1.9 $ $State: Exp $
00007 *******************************************************************************/
00008 #ifndef collision_H_
00009 #define collision_H_
00010 
00013 
00014 #include <matrix/vlVector.h>
00015 #include "vrfobjcore/vrfObjMgr.h"
00016 
00017 class DtString;
00018 
00019 #include "vrfobjcore/vrfobjcoreDefines.h"
00020 
00021 enum DtCollisionObjectType
00022    {
00023       DtEntityCollisionType = 0,
00024       DtVectorCollisionType = 1
00025    };
00026 
00027 class DT_DLL_vrfobjcore DtCollision
00028 {
00029 
00030 public:
00031 
00033    DtCollision();
00034 
00036    virtual ~DtCollision();
00037 
00038 private:
00040    DtCollision(const DtCollision& original);
00042    DtCollision& operator=(const DtCollision& original);
00043 
00044 public:
00045    
00046    virtual bool operator==(const DtCollision& other) const = 0;
00047    virtual bool operator!=(const DtCollision& other) const = 0;
00048 
00051    virtual bool valid() const = 0;
00052 
00054    virtual DtCollisionObjectType collisionType() const = 0;
00055 
00056    virtual void setObstructionEntityID(const DtEntityIdentifier& entityID) = 0;
00057    virtual DtEntityIdentifier obstructionEntityID() const = 0;
00058 
00059    virtual DtVector obstructionLocation() const = 0;
00060    
00061    virtual DtVector obstructionVelocity() const = 0;
00062 
00063    virtual Dt3dBoundingVolume& obstructionBoundingVolume() = 0;
00064    virtual const Dt3dBoundingVolume& obstructionBoundingVolume() const = 0;
00065    
00066    virtual void setDistanceSquared(double distanceSquared) = 0;
00067    virtual double distanceSquared() const = 0;
00068 
00069    virtual const DtDcm& obstructionLocalOrientationMatrix() = 0;
00070 
00071    virtual bool testInvariant() const = 0;
00072 
00073 protected:
00074 };
00075 
00076 #endif
00077 

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)