34 DtColorRecord(
float r=1.0f,
float g=1.0f,
float b=1.0f,
float a=1.0f);
56 void setGreen(
float g);
62 void setBlue(
float b);
68 void setAlpha(
float a);
74 friend class boost::serialization::access;
80 template<
class Archive>
81 void serialize(Archive & ar,
const unsigned int version)
83 ar & BOOST_SERIALIZATION_NVP(myRed);
84 ar & BOOST_SERIALIZATION_NVP(myGreen);
85 ar & BOOST_SERIALIZATION_NVP(myBlue);
86 ar & BOOST_SERIALIZATION_NVP(myAlpha);
90 static float clamp(
float component);
121 void setDepth(
float meters);
127 void setPermeability(
float normalizedValue);
128 float permeability()
const;
133 friend class boost::serialization::access;
139 template<
class Archive>
140 void serialize(Archive & ar,
const unsigned int version)
142 ar & BOOST_SERIALIZATION_NVP(myDepth);
143 ar & BOOST_SERIALIZATION_NVP(myPermeability);
172 void setEnvironmentName(
const std::string& name);
173 const std::string& environmentName()
const;
178 void setAirTurbidity(
float turbidity);
179 float airTurbidity()
const;
184 void setVisibleDistance(
float distance);
185 float visibleDistance()
const;
190 void setPrecipitation(
int type);
191 int precipitation()
const;
196 void setPrecipitationIntensity(
float intensity);
197 float precipitationIntensity()
const;
216 void setUseCustomCloudCover(
bool enabled );
217 bool useCustomCloudCover()
const;
222 void setWindSpeed(
float metersPerSecond);
223 float windSpeed()
const;
228 void setWindDirection(
float radiansFromNorth);
229 float windDirection()
const;
234 void setAmbientAirTemperature(
float celsius);
235 float ambientAirTemperature()
const;
240 void setSeaState(
int douglasScale);
241 int seaState()
const;
246 void setSeaStateDirection(
float radiansFromNorth);
247 float seaStateDirection()
const;
252 void setWindDrivenSeaStateEnabled(
bool enabled);
253 bool windDrivenSeaStateEnabled()
const;
258 void setSwellState(
int douglasScale);
259 int swellState()
const;
264 void setSwellStateDirection(
float radiansFromNorth);
265 float swellStateDirection()
const;
270 void setWindFetch(
float meters);
271 float windFetch()
const;
276 void setSeaChoppiness(
float chop);
277 float seaChoppiness()
const;
282 void setUnderwaterVisibilityEnabled(
bool enabled);
283 bool underwaterVisibilityEnabled()
const;
288 void setUnderwaterVisibility(
float meters);
289 float underwaterVisibility()
const;
294 void setSurfaceTransparency(
float normalizedValue);
295 float surfaceTransparency()
const;
300 void setSurgeDepth(
float meters);
301 float surgeDepth()
const;
306 void setDepthOffset(
float meters);
307 float depthOffset()
const;
312 void setAmbientWaterTemperature(
float celsius);
313 float ambientWaterTemperature()
const;
318 void setWaterCurrentSpeed(
float metersPerSecond);
319 float waterCurrentSpeed()
const;
324 void setWaterCurrentDirection(
float radiansFromNorth);
325 float waterCurrentDirection()
const;
330 void setTidalOffset(
float meters);
331 float tidalOffset()
const;
336 void setTidalDirection(
bool inOut);
337 bool tidalDirection()
const;
342 void setFogHeight(
float meters);
343 float fogHeight()
const;
354 void setThermoclineRecord(
357 void setThermoclineDepth(
unsigned int index,
float depth);
358 float thermoclineDepth(
unsigned int index)
const;
359 void setThermoclinePermeability(
unsigned int index,
float permeability);
360 float thermoclinePermeability(
unsigned int index)
const;
365 virtual const std::string*
366 findOptionalParameter(
const std::string& name)
const;
369 virtual void setOptionalParameter(
370 const std::string& name,
const std::string& value);
377 virtual void removeOptionalParameter(
const std::string& name);
385 friend class boost::serialization::access;
390 template<
class Archive>
391 void serialize(Archive & ar,
const unsigned int version)
393 ar & BOOST_SERIALIZATION_NVP(myAirTurbidity);
394 ar & BOOST_SERIALIZATION_NVP(myVisibilityDistance);
397 ar & BOOST_SERIALIZATION_NVP(myPrecipitationEnabledFlag);
398 ar & BOOST_SERIALIZATION_NVP(myPrecipitationType);
399 if (myPrecipitationEnabledFlag && myPrecipitationType ==
"Rain")
403 else if (myPrecipitationEnabledFlag && myPrecipitationType ==
"Snow")
409 myPrecipitationType =
"None";
413 ar & BOOST_SERIALIZATION_NVP(myPrecipitationIntensity);
414 ar & BOOST_SERIALIZATION_NVP(myCloudLayers);
417 ar & BOOST_SERIALIZATION_NVP(myWindSpeed);
418 ar & BOOST_SERIALIZATION_NVP(myWindDirection);
419 ar & BOOST_SERIALIZATION_NVP(myAmbientAirTemperature);
420 ar & BOOST_SERIALIZATION_NVP(mySeaState);
421 ar & BOOST_SERIALIZATION_NVP(mySeaChoppiness);
422 ar & BOOST_SERIALIZATION_NVP(myUnderwaterVisibility);
423 ar & BOOST_SERIALIZATION_NVP(myAmbientWaterTemperature);
424 ar & BOOST_SERIALIZATION_NVP(myWaterCurrentSpeed);
425 ar & BOOST_SERIALIZATION_NVP(myWaterCurrentDirection);
426 ar & BOOST_SERIALIZATION_NVP(myTidalOffset);
427 ar & BOOST_SERIALIZATION_NVP(myTidalDirection);
431 ar & BOOST_SERIALIZATION_NVP(myEnvironmentName);
432 ar & BOOST_SERIALIZATION_NVP(myOptionalParameters);
436 ar & BOOST_SERIALIZATION_NVP(mySeaStateDirection);
437 ar & BOOST_SERIALIZATION_NVP(myWindDrivenSeaStateEnabled);
438 ar & BOOST_SERIALIZATION_NVP(mySwellState);
439 ar & BOOST_SERIALIZATION_NVP(mySwellStateDirection);
440 ar & BOOST_SERIALIZATION_NVP(myWindFetch);
441 ar & BOOST_SERIALIZATION_NVP(mySurfaceTransparency);
442 ar & BOOST_SERIALIZATION_NVP(mySurgeDepth);
443 ar & BOOST_SERIALIZATION_NVP(myDepthOffset);
447 ar & BOOST_SERIALIZATION_NVP(myFogHeight);
448 ar & BOOST_SERIALIZATION_NVP(myFogColor);
449 ar & BOOST_SERIALIZATION_NVP(myPrecipitation);
450 ar & BOOST_SERIALIZATION_NVP(myThermoclineRecordList);
454 ar & BOOST_SERIALIZATION_NVP(myCloudCoverType);
455 ar & BOOST_SERIALIZATION_NVP(myUseCustomCloudCover);
459 ar & BOOST_SERIALIZATION_NVP(myUnderwaterVisibilityEnabled);