AnimatLab  2
Test
RbMovableItem.h
1 
2 #pragma once
3 
4 namespace RoboticsAnimatSim
5 {
6  class RbSimulator;
7 
8  namespace Environment
9  {
10 
12  {
13  protected:
14  AnimatBase *m_lpThisAB;
15  MovableItem *m_lpThisMI;
16  RbMovableItem *m_lpThisRbMI;
17  RbMovableItem *m_lpParentRbMI;
18  RbSimulator *m_lpRbSim;
19 
22 
23  virtual void SetThisPointers();
24 
25  public:
26  RbMovableItem();
27  virtual ~RbMovableItem();
28 
29  virtual RbSimulator *GetRbSimulator();
30  virtual RbMovableItem *RbParent();
31 
32  virtual void Physics_SetParent(MovableItem *lpParent)
33  {
34  m_lpParentRbMI = dynamic_cast<RbMovableItem *>(lpParent);
35  };
36  virtual void Physics_SetChild(MovableItem *lpParent) {};
37 
38  virtual std::string Physics_ID();
39  virtual void Physics_UpdateMatrix();
40  virtual void Physics_ResetGraphicsAndPhysics();
41  virtual void Physics_PositionChanged();
42  virtual void Physics_RotationChanged();
43  virtual void Physics_UpdateAbsolutePosition();
44  virtual void Physics_Selected(bool bValue, bool bSelectMultiple);
45  virtual float Physics_GetBoundingRadius();
46  virtual BoundingBox Physics_GetBoundingBox();
47  virtual void Physics_SetColor() {};
48  virtual void Physics_TextureChanged() {};
49  virtual void Physics_CollectData();
50  virtual void Physics_CollectExtraData() {};
51  virtual void Physics_ResetSimulation();
52  virtual void Physics_AfterResetSimulation() {};
53  virtual float *Physics_GetDataPointer(const std::string &strDataType);
54  virtual void Physics_OrientNewPart(float fltXPos, float fltYPos, float fltZPos, float fltXNorm, float fltYNorm, float fltZNorm);
55  virtual void Physics_SelectedVertex(float fltXPos, float fltYPos, float fltZPos) {};
56  virtual bool Physics_CalculateLocalPosForWorldPos(float fltWorldX, float fltWorldY, float fltWorldZ, CStdFPoint &vLocalPos);
57  virtual void Physics_LoadLocalTransformMatrix(CStdXml &oXml);
58  virtual void Physics_SaveLocalTransformMatrix(CStdXml &oXml);
59  virtual std::string Physics_GetLocalTransformMatrixString();
60  virtual void Physics_ResizeDragHandler(float fltRadius);
61  virtual void Physics_Resize(void) {};
62 
63  virtual void SetVisible(bool) {};
64  virtual void SetAlpha() {};
65 
66  virtual void CreateItem();
67  };
68 
69  } // Environment
70 } //RoboticsAnimatSim
71 
72 
float m_fltReportNull
Used to report back nulls.
Definition: RbMovableItem.h:21
Classes for implementing the cm-labs vortex physics engine for AnimatLab.