VR-Forces 4.8 Class Documentation
 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 
84  virtual bool allowEnvironmentalEffects() const;
85  virtual void setAllowEnvironmentalEffects(bool allow);
87 
91 
92  virtual DtRwObjectTypeList& spatialOrganizationObjectTypes();
93  virtual const DtRwObjectTypeList& spatialOrganizationObjectTypes() const;
95 
97 
98  virtual double terrainPreloadLookaheadTime() const;
99  virtual void setTerrainPreloadLookaheadTime(double v);
101 
103 
104  virtual double terrainPreloadPeriod() const;
105  virtual void setTerrainPreloadPeriod(double seconds);
107 
109 
110  virtual double terrainPreloadExpireTime() const;
111  virtual void setTerrainPreloadExpireTime(double seconds);
113 
115 
116  virtual double terrainIntersectExpireTime() const;
117  virtual void setTerrainIntersectExpireTime(double seconds);
119 
121 
122  virtual double featureLOSPredictionTime() const;
123  virtual void setFeatureLOSPredictionTime(double seconds);
125 
127 
128  virtual double featureLOSCheckDistance() const;
129  virtual void setFeatureLOSCheckDistance(double meters);
131 
133 
134  virtual double minimalIlluminationValue() const;
135  virtual void setMinimalIlluminationValue(double);
137 
139 
140  virtual double nighttimeIlluminationValue() const;
141  virtual void setNighttimeIlluminationValue(double);
143 
146  virtual DtIlluminationObjectParametersList& illuminationObjects();
147  virtual const DtIlluminationObjectParametersList& illuminationObjects() const;
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 
226 
227 
230 
231  virtual void merge(const DtPhysicalWorldParams*, MergeFlags merge = DefaultMerge);
233 
235 
236  virtual void mergeLineOfSightTests(const DtPhysicalWorldParams*);
237  virtual void addTest(const DtString& test);
239 
241 
242  virtual void mergeSignaturePropagatorParams(const DtPhysicalWorldParams*);
244 
246 
247  virtual void mergeSpatialOrganizationObjectTypes(const DtPhysicalWorldParams*);
249 
251  virtual void mergeIlluminationObjects(const DtPhysicalWorldParams* l);
252 
253 private:
256 
257 protected:
259 
261 
264 
266 
270 
273 
277 
281 
285 
289 
292 
295 
298 
301 
304 
307 
310 
313 
316 
319 
322 
326 
329 
332 
336 };
DtRwBoolean myExtrudeVectorObstructions
Definition: physicalWorldParams.h:262
Definition: symbolString.h:20
DtRwString myDrySoilName
Name of soil that is dry soil–not sand or gravel.
Definition: physicalWorldParams.h:309
DtRwReal myTerrainIntersectExpireTime
Expire time offset (from actual time) for intersect data load requests.
Definition: physicalWorldParams.h:280
#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 myWaterSlideFactor
Fraction [0-1] of traction retained on hard surface with water on it.
Definition: physicalWorldParams.h:331
DtRwString myWaterySoilName
Name of soil that is considered watery soil.
Definition: physicalWorldParams.h:306
DtIlluminationObjectParametersList myIlluminationObjects
List of object types that produce illumination.
Definition: physicalWorldParams.h:297
Definition: signaturePropagatorDescriptorList.h:25
DtRwString myIceSoilName
Name of &quot;soil&quot; that is ice.
Definition: physicalWorldParams.h:318
virtual DtlObjPtr getData(DtlObjPtr args, const SearchPaths &searchPaths, const DtVariableBindingsList &variableBindings)
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:288
Definition: readerWriterRegistry.h:39
DtRwString mySnowSoilName
Name of &quot;soil&quot; that is snow.
Definition: physicalWorldParams.h:315
DtRwReal myDeepSnowDepth
Depth of snow required for full snow soil effect. Meters.
Definition: physicalWorldParams.h:321
DtRwString myShallowWaterSoilName
Name of soil that is considered shallow water.
Definition: physicalWorldParams.h:303
DtRwString myDeepWaterSoilName
Name of soil that is considered deep water.
Definition: physicalWorldParams.h:300
DtRwBoolean myAllowEnvironmentalEffects
Definition: physicalWorldParams.h:263
DtRwReal myHardFreezeTemperature
Temperature at which shallow water is frozen enough to drive a vehicle on.
Definition: physicalWorldParams.h:335
std::list< const DtRwVariableBindings * > DtVariableBindingsList
Definition: readerWriterRegistry.h:29
class DtRwObjectTypeList:
Definition: rwObjectTypeList.h:30
DtRwNLengthStringVector myLineOfSightTests
Definition: physicalWorldParams.h:260
DtRwReal myTerrainPreloadExpireTime
Expire time offset (from actual time) for preload data load requests.
Definition: physicalWorldParams.h:276
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:294
DtRwString myRoadSoilName
Name of soil that is paved road.
Definition: physicalWorldParams.h:312
DtRwReal myMinimalIlluminationValue
The minimal value of illumination given no sun or moon present. Value is 0 - 1.
Definition: physicalWorldParams.h:291
Description: Readable, Writable bool.
Definition: rwBoolean.h:26
DtRwReal myTerrainPreloadPeriod
Evaluation period for terrain preload. Specified in seconds.
Definition: physicalWorldParams.h:272
DtSignaturePropagatorDescriptorList mySignaturePropagatorParams
Definition: physicalWorldParams.h:258
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:284
DtRwReal mySaturationWaterDepth
Depth of water accumulation before dry soil is changed completely to watery soil. ...
Definition: physicalWorldParams.h:325
DtRwObjectTypeList mySpatialOrganizationObjectTypes
Definition: physicalWorldParams.h:265
DtRwReal myTerrainPreloadLookaheadTime
The number of seconds that the terrain pre-loader will look ahead of entity positions when preloading...
Definition: physicalWorldParams.h:269
DtRwReal myWaterSlideDepth
Depth of water on a hard surface that causes loss of normal traction.
Definition: physicalWorldParams.h:328

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)