lib_LIBRARIES = libsgenvironment.a
-include_HEADERS = metar.hxx visual_enviro.hxx precipitation.hxx
+include_HEADERS = metar.hxx precipitation.hxx
-libsgenvironment_a_SOURCES = metar.cxx visual_enviro.cxx precipitation.cxx
+libsgenvironment_a_SOURCES = metar.cxx precipitation.cxx
INCLUDES = -I$(top_srcdir)
*/
#include "precipitation.hxx"
-#include "visual_enviro.hxx"
+//#include "visual_enviro.hxx"
#include <simgear/constants.h>
#include <osg/ClipNode>
* Build a new OSG object from osgParticle.
*/
SGPrecipitation::SGPrecipitation() :
- _freeze(false), _snow_intensity(0.0), _rain_intensity(0.0), _clip_distance(5.0)
+ _freeze(false), _enabled(true), _snow_intensity(0.0), _rain_intensity(0.0), _clip_distance(5.0)
{
_precipitationEffect = new osgParticle::PrecipitationEffect;
}
+void SGPrecipitation::setEnabled( bool value )
+{
+ _enabled = value;
+}
+
+bool SGPrecipitation::getEnabled() const
+{
+ return _enabled;
+}
/**
* @brief Build and add the object "precipitationEffect"
this->_snow_intensity = this->_rain_intensity;
}
- bool enabled = sgEnviro.get_precipitation_enable_state();
- if (enabled && this->_snow_intensity > 0) {
+ if (_enabled && this->_snow_intensity > 0) {
_precipitationEffect->setWind(_wind_vec);
_precipitationEffect->setParticleSpeed( -0.75f - 0.25f*_snow_intensity);
_precipitationEffect->setFarTransition(100.0f - 60.0f*sqrtf(_snow_intensity));
_precipitationEffect->setParticleColor(osg::Vec4(0.85, 0.85, 0.85, 1.0) - osg::Vec4(0.1, 0.1, 0.1, 1.0) * _snow_intensity);
- } else if (enabled && this->_rain_intensity > 0) {
+ } else if (_enabled && this->_rain_intensity > 0) {
_precipitationEffect->setWind(_wind_vec);
_precipitationEffect->setParticleSpeed( -2.0f + -5.0f*_rain_intensity);