VR-Forces 4.7 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Attributes
DtTerrainIntersectOptions Class Reference

DtTerrainIntersectOptions Passed to terrain intersect functions to modify how intersect acts. More...

Public Member Functions

 DtTerrainIntersectOptions ()
 Default constructor.
 DtTerrainIntersectOptions (bool *dataAvailable, bool overrideAssert, int flags)
 Convenience constructor for creating from old API.
virtual
DtIntersectionRecord::DtIntersectionType 
irtFlag () const
 Specifies which data should be calculated and returned for each intersection point.
virtual void setIrtFlag (DtIntersectionRecord::DtIntersectionType irt)
virtual bool blockOnDataUnavailable () const
 Functions controlling whether the query will block or not.
virtual void setBlockOnDataUnavailable (bool block=true)
 Set blockOnDataAvailable flag.
virtual bool overrideBlockingAssert () const
 When set to true this parameter will prevent an assertion from being thrown when the terrain implementation has myAssertOnBlockingTerrainCalls set to true.
virtual void setOverrideBlockingAssert (bool overrideAssert=true)
 Set override blocking assert flag.
virtual int flags () const
 Optional flags to pass into the query.
virtual void setFlags (int f)
 Set flags.
virtual bool debug () const
 Debug flag which can turn on verbose output for some intersection functions.
virtual void setDebug (bool d)

Protected Attributes

DtIntersectionRecord::DtIntersectionType myIrtFlag
bool myBlockOnDataUnavailable
bool myOverrideBlockingAssert
int myFlags
Fidelity myFidelity
bool myDebug
enum  Fidelity { MAX_FIDELITY, LOW_FIDELITY }
 Allows the system to use differently fidelity data for intersecting against. More...
virtual Fidelity fidelity () const
 Default MAX_FIDELITY.
virtual void setFidelity (Fidelity f)
 Set the fidelity.

Detailed Description

DtTerrainIntersectOptions Passed to terrain intersect functions to modify how intersect acts.

Member Enumeration Documentation

Allows the system to use differently fidelity data for intersecting against.

Currently only implemented for osgearth elevation. By default MAX_FIDELITY is used which will use the max resolution data. If this results in inadequate performance and perfect terrain correlation is not needed then this parameter can be set to LOW_FIDELITY.

Enumerator:
MAX_FIDELITY 
LOW_FIDELITY 

Constructor & Destructor Documentation

DtTerrainIntersectOptions::DtTerrainIntersectOptions ( )

Default constructor.

DtTerrainIntersectOptions::DtTerrainIntersectOptions ( bool dataAvailable,
bool  overrideAssert,
int  flags 
)

Convenience constructor for creating from old API.

If the dataAvailable parameter is not null then the options will be setup to be nonblocking, otherwise it will be blocking. This object DOES NOT save the dataAvailable pointer and fill it out with the results, that is the responsibility of the caller.

Member Function Documentation

virtual DtIntersectionRecord::DtIntersectionType DtTerrainIntersectOptions::irtFlag ( ) const
virtual

Specifies which data should be calculated and returned for each intersection point.

Defaults to INT_ALL_DATA.

virtual void DtTerrainIntersectOptions::setIrtFlag ( DtIntersectionRecord::DtIntersectionType  irt)
virtual
virtual bool DtTerrainIntersectOptions::blockOnDataUnavailable ( ) const
virtual

Functions controlling whether the query will block or not.

If the query is set to blocking then the intersection function will not return until all the data is paged in and DtTerrainIntersectStatus::dataAvailable will always be true. If the query is nonblocking then it will only intersect on whatever data is currently loaded (as well as kick off loading of what is missing). If this is the case then DtTerrainIntersectStatus::dataAvailable will return false. Queries using this class are nonblocking by default.

virtual void DtTerrainIntersectOptions::setBlockOnDataUnavailable ( bool  block = true)
virtual

Set blockOnDataAvailable flag.

virtual bool DtTerrainIntersectOptions::overrideBlockingAssert ( ) const
virtual

When set to true this parameter will prevent an assertion from being thrown when the terrain implementation has myAssertOnBlockingTerrainCalls set to true.

This should only be done when the call is being made from outside the main simulation thread and a blocking call would not cause a a problem.

Default returns false.

virtual void DtTerrainIntersectOptions::setOverrideBlockingAssert ( bool  overrideAssert = true)
virtual

Set override blocking assert flag.

virtual int DtTerrainIntersectOptions::flags ( ) const
virtual

Optional flags to pass into the query.

The flags are implementation dependent.

Default returns 0.

virtual void DtTerrainIntersectOptions::setFlags ( int  f)
virtual

Set flags.

virtual Fidelity DtTerrainIntersectOptions::fidelity ( ) const
virtual

Default MAX_FIDELITY.

virtual void DtTerrainIntersectOptions::setFidelity ( Fidelity  f)
virtual

Set the fidelity.

virtual bool DtTerrainIntersectOptions::debug ( ) const
virtual

Debug flag which can turn on verbose output for some intersection functions.

Not implemented for all calls.

virtual void DtTerrainIntersectOptions::setDebug ( bool  d)
virtual

Member Data Documentation

DtIntersectionRecord::DtIntersectionType DtTerrainIntersectOptions::myIrtFlag
protected
bool DtTerrainIntersectOptions::myBlockOnDataUnavailable
protected
bool DtTerrainIntersectOptions::myOverrideBlockingAssert
protected
int DtTerrainIntersectOptions::myFlags
protected
Fidelity DtTerrainIntersectOptions::myFidelity
protected
bool DtTerrainIntersectOptions::myDebug
protected

The documentation for this class was generated from the following file:

Document ID: Generated on Fri Apr 26 21:53:14 EDT 2019 from SVN revision 197883
Copyright © 2005-2019 VT MAK. All Rights Reserved (www.mak.com)