VR-Forces 4.5 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
simBoundingGeometry.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2004 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 #pragma once
9 
10 #include <matrix/vlVector.h>
11 #include <matrix/vlDcm.h>
12 #include <matrix/3dBoundingVolume.h>
13 
55 
56 #include "vrfutil/vrfutilDefines.h"
58 {
59 public:
60 
62 {
63  BoundingTypeUndefined = 0,
65  BoundingTypeVolume
66 };
67 
68 public:
71  DtSimBoundingGeometry(DtSimBoundingGeometryType boundingType = BoundingTypeVolume);
72 
74  virtual ~DtSimBoundingGeometry();
75 
78 
80  const DtSimBoundingGeometry& operator=(const DtSimBoundingGeometry& orig);
81 
83  virtual DtSimBoundingGeometry* clone() const;
84 
86  virtual const Dt3dBoundingVolume& boundingVolume() const;
87 
89  virtual Dt3dBoundingVolume& boundingVolume();
90 
92  virtual void setBoundingVolume( const Dt3dBoundingVolume& bv ) { myBoundingVolume = bv; }
93 
94  virtual void setBoundingVolume(double halfLength, double halfWidth,
95  double halfHeight, const DtVector& latticeOffset);
96 
97  virtual void setHalfLengthWidthHeight(double halfLength, double halfWidth, double halfHeight);
98  virtual double halfLength() const;
99  virtual double halfWidth() const;
100  virtual double halfHeight() const;
101 
103 
105  virtual DtSimBoundingGeometryType boundingGeometryType() const;
106 
108  virtual void setBoundingGeometryType(DtSimBoundingGeometryType boundingGeometryType);
109 
110  virtual bool inside(const DtVector& point, const DtVector& position, const DtDcm& orientation) const;
111 
113  virtual void setBoundingVolume(const DtDcm& localBvol, DtVector offset = DtVector::zero());
114 
115 protected:
117  Dt3dBoundingVolume myBoundingVolume;
118 };

Document ID: Generated on Thu Mar 23 18:54:12 EDT 2017 from SVN revision 174804
Copyright © 2005-2017 VT MÄK. All Rights Reserved (www.mak.com)