VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
physicalWorldParams.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 2014 MAK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
10 
11 #pragma once
12 
16 #include <readerWriter/rwBoolean.h>
18 #include <readerWriter/rwReal.h>
21 
23 
27 {
28 public:
30  {
31  LineOfSiteTests = 0x00000001,
32  SignaturePropagatorParams = 0x00000002,
33  IlluminationObjects = 0x00000004,
34  SpatialOrganizationObjectTypes = 0x00000008,
35  DefaultMerge = SignaturePropagatorParams | IlluminationObjects |SpatialOrganizationObjectTypes
36  };
37 
39  DtPhysicalWorldParams(const DtString& rwName,
40  DtReaderWriterRegistry* parentRegistry = NULL);
42  DtReaderWriterRegistry* parentRegistry = NULL);
43 
49  DtReaderWriterRegistry* parentRegistry = NULL);
50 
53 
54  virtual ~DtPhysicalWorldParams();
55 
56  virtual DtlObjPtr getData(DtlObjPtr args, const SearchPaths& searchPaths,
57  const DtVariableBindingsList& variableBindings);
58 
62  virtual DtSignaturePropagatorDescriptorList& signaturePropagatorParams();
63  virtual const DtSignaturePropagatorDescriptorList& signaturePropagatorParams() const;
65 
69  virtual DtRwNLengthStringVector& lineOfSightTests();
70  virtual const DtRwNLengthStringVector& lineOfSightTests() const;
72 
78  virtual bool extrudeVectorObstructions() const;
79  virtual void setExtrudeVectorObstructions(bool extrude);
81 
85 
86  virtual DtRwObjectTypeList& spatialOrganizationObjectTypes();
87  virtual const DtRwObjectTypeList& spatialOrganizationObjectTypes() const;
89 
91 
92  virtual double terrainPreloadLookaheadTime() const;
93  virtual void setTerrainPreloadLookaheadTime(double v);
95 
97 
98  virtual double terrainPreloadPeriod() const;
99  virtual void setTerrainPreloadPeriod(double seconds);
101 
103 
104  virtual double terrainPreloadExpireTime() const;
105  virtual void setTerrainPreloadExpireTime(double seconds);
107 
109 
110  virtual double terrainIntersectExpireTime() const;
111  virtual void setTerrainIntersectExpireTime(double seconds);
113 
115 
116  virtual double featureLOSPredictionTime() const;
117  virtual void setFeatureLOSPredictionTime(double seconds);
119 
121 
122  virtual double featureLOSCheckDistance() const;
123  virtual void setFeatureLOSCheckDistance(double meters);
125 
127 
128  virtual double minimalIlluminationValue() const;
129  virtual void setMinimalIlluminationValue(double);
131 
133 
134  virtual double nighttimeIlluminationValue() const;
135  virtual void setNighttimeIlluminationValue(double);
137 
140  virtual DtIlluminationObjectParametersList& illuminationObjects();
141  virtual const DtIlluminationObjectParametersList& illuminationObjects() const;
143 
146  virtual DtRwString weatherStateProviderName() const;
147  virtual void setWeatherStateProviderName(const DtRwString&);
149 
152 
155  virtual DtRwString deepWaterSoilName() const;
156  virtual void setDeepWaterSoilName(const DtRwString&);
158 
161  virtual DtRwString shallowWaterSoilName() const;
162  virtual void setShallowWaterSoilName(const DtRwString&);
164 
167  virtual DtRwString waterySoilName() const;
168  virtual void setWaterySoilName(const DtRwString&);
170 
173  virtual DtRwString drySoilName() const;
174  virtual void setDrySoilName(const DtRwString&);
176 
179  virtual DtRwString roadSoilName() const;
180  virtual void setRoadSoilName(const DtRwString&);
182 
185  virtual DtRwString snowSoilName() const;
186  virtual void setSnowSoilName(const DtRwString&);
188 
191  virtual DtRwString iceSoilName() const;
192  virtual void setIceSoilName(const DtRwString&);
194 
197  virtual double deepSnowDepth() const;
198  virtual void setDeepSnowDepth(const double);
200 
203  virtual double saturationWaterDepth() const;
204  virtual void setSaturationWaterDepth(const double);
206 
209  virtual double waterSlideDepth() const;
210  virtual void setWaterSlideDepth(const double);
212 
215  virtual double waterSlideFactor() const;
216  virtual void setWaterSlideFactor(const double);
218 
221  virtual double hardFreezeTemperature() const;
222  virtual void setHardFreezeTemperature(const double);
224 
227  virtual double normalizedPrecipitationRate() const;
228  virtual void setNormalizedPrecipitationRate(const double);
229 
232  virtual bool reduceVisibilityForPrecipitation() const;
233  virtual void setReduceVisibilityForPrecipitation(const bool);
235 
237 
238 
241 
242  virtual void merge(const DtPhysicalWorldParams*, MergeFlags merge = DefaultMerge);
244 
246 
247  virtual void mergeLineOfSightTests(const DtPhysicalWorldParams*);
248  virtual void addTest(const DtString& test);
250 
252 
253  virtual void mergeSignaturePropagatorParams(const DtPhysicalWorldParams*);
255 
257 
258  virtual void mergeSpatialOrganizationObjectTypes(const DtPhysicalWorldParams*);
260 
262  virtual void mergeIlluminationObjects(const DtPhysicalWorldParams* l);
263 
264 private:
267 
268 protected:
270 
272 
274 
276 
280 
283 
287 
291 
295 
299 
302 
305 
308 
311 
314 
317 
320 
323 
326 
329 
332 
335 
339 
342 
345 
349 
355 
364 };
DtRwBoolean myExtrudeVectorObstructions
Definition: physicalWorldParams.h:273
This class allows one to collect and compare strings using an index number instead of having to do st...
Definition: symbolString.h:27
DtRwString myDrySoilName
Name of soil that is dry soil–not sand or gravel.
Definition: physicalWorldParams.h:322
DtRwReal myTerrainIntersectExpireTime
Expire time offset (from actual time) for intersect data load requests.
Definition: physicalWorldParams.h:290
#define DT_DLL_vrfobjparam
This file is used to determine how to build.
Definition: vrfobjparamDefines.h:28
DtRwNLengthStringVector is a named, readable/writable vector of strings of arbitrary length...
Definition: rwNLengthStringVector.h:28
DtRwReal myNormalizedPrecipitationRate
The (rain) precipitation rate corresponding to a value of 1.0 in a local weather object, or as the value from the environmental state manager function. This is used to normalize the precipitationValue returned from the weather state provider.
Definition: physicalWorldParams.h:354
DtRwReal myWaterSlideFactor
Fraction [0-1] of traction retained on hard surface with water on it.
Definition: physicalWorldParams.h:344
DtRwString myWaterySoilName
Name of soil that is considered watery soil.
Definition: physicalWorldParams.h:319
DtIlluminationObjectParametersList myIlluminationObjects
List of object types that produce illumination.
Definition: physicalWorldParams.h:307
Definition: signaturePropagatorDescriptorList.h:25
DtRwBoolean myReduceVisibilityForPrecipitation
This flag determines whether to degrade visibility due to precipitation, on top of the effect of the ...
Definition: physicalWorldParams.h:363
DtRwString myIceSoilName
Name of &quot;soil&quot; that is ice.
Definition: physicalWorldParams.h:331
virtual DtlObjPtr getData(DtlObjPtr args, const SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
Deriving class overrides these to get/put class specific data.
Definition: readerWriter.h:85
Description: Readable, Writable DtString Variable substitutions are done on this object when it is re...
Definition: rwString.h:20
DtRwReal myFeatureLOSCheckDistance
Distance entity must travel in prediction time in order to start predictive loading.
Definition: physicalWorldParams.h:298
Definition: readerWriterRegistry.h:39
DtRwString mySnowSoilName
Name of &quot;soil&quot; that is snow.
Definition: physicalWorldParams.h:328
DtRwReal myDeepSnowDepth
Depth of snow required for full snow soil effect. Meters.
Definition: physicalWorldParams.h:334
DtRwString myShallowWaterSoilName
Name of soil that is considered shallow water.
Definition: physicalWorldParams.h:316
DtRwString myDeepWaterSoilName
Name of soil that is considered deep water.
Definition: physicalWorldParams.h:313
DtRwReal myHardFreezeTemperature
Temperature at which shallow water is frozen enough to drive a vehicle on. Degrees C...
Definition: physicalWorldParams.h:348
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
DtRwString myWeatherStateProviderName
Name of weather state provider class.
Definition: physicalWorldParams.h:310
class DtRwObjectTypeList:
Definition: rwObjectTypeList.h:30
DtRwNLengthStringVector myLineOfSightTests
Definition: physicalWorldParams.h:271
DtRwReal myTerrainPreloadExpireTime
Expire time offset (from actual time) for preload data load requests.
Definition: physicalWorldParams.h:286
Description: Readable, Writable DtReal (double)
Definition: rwReal.h:27
Readable-writable class holding all parameters for to configure the DtPhysicalWorld.
Definition: physicalWorldParams.h:26
DtRwReal myNighttimeIlluminationValue
The maximum nighttime illumination value given a full moon. Value is 0 - 1.
Definition: physicalWorldParams.h:304
DtRwString myRoadSoilName
Name of soil that is paved road.
Definition: physicalWorldParams.h:325
DtRwReal myMinimalIlluminationValue
The minimal value of illumination given no sun or moon present. Value is 0 - 1.
Definition: physicalWorldParams.h:301
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
DtRwReal myTerrainPreloadPeriod
Evaluation period for terrain preload. Specified in seconds.
Definition: physicalWorldParams.h:282
DtSignaturePropagatorDescriptorList mySignaturePropagatorParams
Definition: physicalWorldParams.h:269
const DtReaderWriter & operator=(const DtReaderWriter &orig)
assignment operator
MergeFlags
Definition: physicalWorldParams.h:29
DtRwReal myFeatureLOSPredictionTime
Number of seconds ahead to project entities when !doing predictive LOS feature paging.
Definition: physicalWorldParams.h:294
DtRwReal mySaturationWaterDepth
Depth of water accumulation before dry soil is changed completely to watery soil. Meters...
Definition: physicalWorldParams.h:338
DtRwObjectTypeList mySpatialOrganizationObjectTypes
Definition: physicalWorldParams.h:275
DtRwReal myTerrainPreloadLookaheadTime
The number of seconds that the terrain pre-loader will look ahead of entity positions when preloading...
Definition: physicalWorldParams.h:279
DtRwReal myWaterSlideDepth
Depth of water on a hard surface that causes loss of normal traction.
Definition: physicalWorldParams.h:341

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)