00001 #ifndef __SCENECONFIG_HPP__ 00002 #define __SCENECONFIG_HPP__ 00003 00011 class SceneConfig { 00012 protected: 00013 int _stepTime; //< elementarny czas kroku symulacji [ms] */ 00014 unsigned int _minReactionMultiplicity; //< najmniejsza krotnosc czasu 00015 //< kroku symulacji oznaczajaca 00016 //< minimalny czas reakcji */ 00017 int _minReactionTime; //< minimalny czas reakcji [ms], 00018 //< wynikajacy z krotnosci */ 00019 00020 double _e_phi; //< dokladnosc katowa [rad] */ 00021 double _e_len; //< dokladnosc odleglosci [m] */ 00022 00023 double _warningDistance; //< odleglosc od przeszkody wyzwalajaca 00024 //< funkcje wplywu przeszkody na kierunek 00025 //< ruchu zwierzaka */ 00026 double _radiusCohesion; //< promien dzialania algorytmu Cohesion [m] */ 00027 double _levelCohesion; //< mnoznik algorytmu Cohesion */ 00028 double _radiusSeparation; //< promien dzialania algorytmu Separation [m] */ 00029 double _levelSeparation; //< mnoznik algorytmu Separation */ 00030 double _radiusBasicFlee; //< promien dzialania algorytmu BasicFlee [m] */ 00031 double _levelBasicFlee; //< mnoznik algorytmu BasicFlee */ 00032 double _radiusAvoidObstacles; //< najm. promien odleglosci od przeszkody */ 00033 double _levelAvoidObstacles; //< mnoznik omijania przeszkod */ 00034 00035 public: 00044 SceneConfig(int stepTime=5, unsigned int minRM=10); 00045 00050 double getEPhi(); 00051 00056 double getELen(); 00057 00062 void setStepTime(int stepTime); 00063 00068 void setMinRM(unsigned int minRM); 00069 00074 int getStepTime(); 00075 00080 int getMinRT(); 00081 00086 unsigned int getMinRM(); 00087 00093 void setWarningDistance(double wd); 00094 00100 double getWarningDistance(); 00101 00106 void setLevelBasicFlee(double lbf); 00107 00112 double getLevelBasicFlee(); 00113 00114 00119 void setLevelCohesion(double lc); 00120 00125 double getLevelCohesion(); 00126 00127 00132 void setLevelSeparation(double ls); 00133 00138 double getLevelSeparation(); 00139 00140 00145 void setRadiusBasicFlee(double rbf); 00146 00151 double getRadiusBasicFlee(); 00152 00153 00158 void setRadiusCohesion(double rc); 00159 00164 double getRadiusCohesion(); 00165 00166 00171 void setRadiusSeparation(double rs); 00172 00177 double getRadiusSeparation(); 00178 00183 void setRadiusAvoidObstacles(double rs); 00184 00189 double getRadiusAvoidObstacles(); 00190 00195 void setLevelAvoidObstacles(double lc); 00196 00201 double getLevelAvoidObstacles(); 00202 00203 00204 }; 00205 00206 #endif 00207