AnimatLab  2
Test
Terrain.h
Go to the documentation of this file.
1 
7 #pragma once
8 
9 namespace AnimatSim
10 {
11  namespace Environment
12  {
13  namespace Bodies
14  {
25  class ANIMAT_PORT Terrain : public Mesh
26  {
27  protected:
28  float m_fltSegmentWidth;
29  float m_fltSegmentLength;
30  float m_fltMaxHeight;
31  int m_iTextureLengthSegments;
32  int m_iTextureWidthSegments;
33 
34  public:
35  Terrain();
36  virtual ~Terrain();
37 
38  static Terrain *CastToDerived(AnimatBase *lpBase) {return static_cast<Terrain*>(lpBase);}
39 
40  virtual bool AllowRotateDragX();
41  virtual bool AllowRotateDragY();
42  virtual bool AllowRotateDragZ();
43 
44  virtual float SegmentWidth();
45  virtual void SegmentWidth(float fltVal, bool bUseScaling = true);
46 
47  virtual float SegmentLength();
48  virtual void SegmentLength(float fltVal, bool bUseScaling = true);
49 
50  virtual float MaxHeight();
51  virtual void MaxHeight(float fltVal, bool bUseScaling = true);
52 
53  virtual int TextureLengthSegments();
54  virtual void TextureLengthSegments(int iVal);
55 
56  virtual int TextureWidthSegments();
57  virtual void TextureWidthSegments(int iVal);
58 
59  virtual bool SetData(const std::string &strDataType, const std::string &strValue, bool bThrowError = true);
60  virtual void QueryProperties(CStdPtrArray<TypeProperty> &aryProperties);
61  virtual void Load(CStdXml &oXml);
62  };
63 
64  } //Bodies
65  } // Environment
66 } //AnimatSim
Root namespace for the base simulation library for AnimatLab.
The Terrain base class.
Definition: Terrain.h:25
Animat base class.
Definition: AnimatBase.h:36