AnimatLab  2
Test
IPhysicsMovableItem.h
1 #pragma once
2 
3 namespace AnimatSim
4 {
5  namespace Environment
6  {
7  class MovableItem;
8 
9  class ANIMAT_PORT IPhysicsMovableItem
10  {
11  protected:
12 
13  public:
14  IPhysicsMovableItem(void);
15  virtual ~IPhysicsMovableItem(void);
16 
17  virtual void SetVisible(bool bVisible) = 0;
18  virtual void SetAlpha() = 0;
19 
20  virtual void Physics_SetParent(MovableItem *lpParent) = 0;
21  virtual void Physics_SetChild(MovableItem *lpChild) = 0;
22  virtual void Physics_UpdateMatrix() = 0;
23  virtual void Physics_ResetGraphicsAndPhysics() = 0;
24  virtual void Physics_PositionChanged() = 0;
25  virtual void Physics_RotationChanged() = 0;
26  virtual void Physics_UpdateAbsolutePosition() = 0;
27  virtual void Physics_CollectData() = 0;
28  virtual void Physics_CollectExtraData() = 0;
29  virtual void Physics_ResetSimulation() = 0;
30  virtual void Physics_AfterResetSimulation() = 0;
31  virtual float *Physics_GetDataPointer(const std::string &strDataType) = 0;
32  virtual void Physics_Selected(bool bValue, bool bSelectMultiple) = 0;
33  virtual float Physics_GetBoundingRadius() = 0;
34  virtual BoundingBox Physics_GetBoundingBox() = 0;
35  virtual void Physics_SetColor() = 0;
36  virtual void Physics_TextureChanged() = 0;
37  virtual void Physics_OrientNewPart(float fltXPos, float fltYPos, float fltZPos, float fltXNorm, float fltYNorm, float fltZNorm) = 0;
38  virtual void Physics_SelectedVertex(float fltXPos, float fltYPos, float fltZPos) = 0;
39  virtual bool Physics_CalculateLocalPosForWorldPos(float fltWorldX, float fltWorldY, float fltWorldZ, CStdFPoint &vLocalPos) = 0;
40  virtual void Physics_Resize() = 0;
41  virtual void Physics_LoadLocalTransformMatrix(CStdXml &oXml) = 0;
42  virtual void Physics_SaveLocalTransformMatrix(CStdXml &oXml) = 0;
43  virtual std::string Physics_GetLocalTransformMatrixString() = 0;
44  virtual void Physics_ResizeDragHandler(float fltRadius) = 0;
45  };
46 
47  }
48 }
Root namespace for the base simulation library for AnimatLab.
Baes class for all items that can be moved/roated within the environment.
Definition: MovableItem.h:19
Bounding box class for geometric objects.
Definition: BoundingBox.h:17