VR-Vantage 2.7 API Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DtProjectile.h
Go to the documentation of this file.
1 /*****************************************************************************
2 ** Copyright (c) 2019 MAK Technologies, Inc.
3 ** All rights reserved.
4 ******************************************************************************/
5 #pragma once
6 
10 
11 #include "exampleProjectile.h"
12 
13 #include <vrvCore/DtUniqueID.h>
14 
15 #include <matrix/vlVector.h>
16 #include <matrix/vlTaitBryan.h>
17 
18 #include <boost/unordered_map.hpp>
19 #include <boost/function.hpp>
20 
21 #include <string>
22 
23 // Use the VR-Vantage namespace.
24 // All classes in VR-Vantage are in this namespace.
25 
26 namespace makVrv
27 {
28  class DtEntity3dFacade;
29  class DtDe;
30  class DtIntersectorResult;
31 
33  {
34  public:
35 
36  typedef boost::function<void ( const DtIntersectorResult&, double )> IntersectionCallback;
37 
38  public:
40  DtProjectile(DtDe& de, const DtVector& start, const DtTaitBryan& orientation, double speed,
41  const DtVector& direction, const std::string& modelDefinitionName,
43 
45  virtual ~DtProjectile();
46 
48  bool tick( double simTime );
49 
51  DtElementID id() const;
52 
53  protected:
54 
56  virtual DtTaitBryan orientationFromOldAndNewPositions(const DtVector& oldPos, const DtVector& newPos );
57 
58  protected:
59 
65  DtTaitBryan myOrientation;
70 
72  DtVector myFiringPosition;
74  DtVector myDirection;
76  DtVector myVelocity0;
78  DtVector myAcceleration;
79  };
80 }


Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)