![]() |
VR-Forces 4.0.4 Class Documentation
|
Signature propagator used in the visual sensor domain. More...

Public Member Functions | |
| DtVisualSignaturePropagator (const DtSignaturePropagatorDescriptor *desc, DtPhysicalWorld *physicalWorld) | |
| default constructor | |
| virtual | ~DtVisualSignaturePropagator () |
| destructor | |
| virtual void | init () |
| Assigns myVisualPropagatorDescriptor by casting the result of descriptor(). | |
| virtual double | calculateApparentSignature (double absoluteSignature, const DtSignaturePropagatorArgs &args) const |
| Takes the given absolute signature and applies to it the effects of the environmental visibility range as well as the terrain line of sight. | |
| virtual double | calculateSmokeReductionFactor (double apparentSignature, const DtSignaturePropagatorArgs &args) const |
| Will look for any smoke intersections between sensor and object If found will reduce the apparent signature further. | |
Static Public Member Functions | |
| static DtSignaturePropagator * | create (const DtSignaturePropagatorDescriptor *desc, DtPhysicalWorld *physicalWorld) |
| Creates a new instance of this class, calls init() on it, and returns it. | |
Protected Member Functions | |
| virtual bool | chordIntersectsPuff (const DtVector &geocStartPoint, const DtVector &geocEndPoint, const DtRwGaussianPuffData &puff, DtVector &intersectPoint, DtChord &intersectSegment) const |
| Given a chord and a puff, determine the intersection. | |
Protected Attributes | |
| const DtVisualSignaturePropagatorDescriptor * | myVisualPropagatorDescriptor |
Private Member Functions | |
| DtVisualSignaturePropagator (const DtVisualSignaturePropagator &orig) | |
| copy constructor - not implemented | |
| DtVisualSignaturePropagator & | operator= (const DtVisualSignaturePropagator &orig) |
| assignment operator - not implemented | |
Signature propagator used in the visual sensor domain.
This propagator returns an apparent signature based on the absolute signature * 1000 / distance traveled in meters plus any enviromental effects. This means that an apparent signature of 1.0 is observed when the distance from the target in km equals the target's absolute signature. This signature may be degraded further due to the afore mentioned environmental effects like time of day or weather. It checks the DtEnvironmentalStateManager to get the current visibility. Any object beyond this visibility range will return an apparent signature of 0. Inside the visibility range the the object's apparent signature can be reduced further by the optional reduction factor which can be used to take into account low visibility and would make things on the edge of that visibility much harder to see. This propagator also checks for intersections with smoke objects which could further degrade the apparent signature of an object This propagator requires a DtVisualSignaturePropagatorDescriptor descriptor type.
| DtVisualSignaturePropagator::DtVisualSignaturePropagator | ( | const DtSignaturePropagatorDescriptor * | desc, |
| DtPhysicalWorld * | physicalWorld | ||
| ) |
default constructor
| virtual DtVisualSignaturePropagator::~DtVisualSignaturePropagator | ( | ) | [virtual] |
destructor
| DtVisualSignaturePropagator::DtVisualSignaturePropagator | ( | const DtVisualSignaturePropagator & | orig | ) | [private] |
copy constructor - not implemented
| virtual void DtVisualSignaturePropagator::init | ( | ) | [virtual] |
Assigns myVisualPropagatorDescriptor by casting the result of descriptor().
Reimplemented from DtStandardSignaturePropagator.
| virtual double DtVisualSignaturePropagator::calculateApparentSignature | ( | double | absoluteSignature, |
| const DtSignaturePropagatorArgs & | args | ||
| ) | const [virtual] |
Takes the given absolute signature and applies to it the effects of the environmental visibility range as well as the terrain line of sight.
If the DtPhysicalWorld::checkLineOfSightreports that there is no data available (i.e. it is still being paged in), 0 will be returned.
Reimplemented from DtStandardSignaturePropagator.
| virtual double DtVisualSignaturePropagator::calculateSmokeReductionFactor | ( | double | apparentSignature, |
| const DtSignaturePropagatorArgs & | args | ||
| ) | const [virtual] |
Will look for any smoke intersections between sensor and object If found will reduce the apparent signature further.
| static DtSignaturePropagator* DtVisualSignaturePropagator::create | ( | const DtSignaturePropagatorDescriptor * | desc, |
| DtPhysicalWorld * | physicalWorld | ||
| ) | [static] |
Creates a new instance of this class, calls init() on it, and returns it.
Reimplemented from DtStandardSignaturePropagator.
| virtual bool DtVisualSignaturePropagator::chordIntersectsPuff | ( | const DtVector & | geocStartPoint, |
| const DtVector & | geocEndPoint, | ||
| const DtRwGaussianPuffData & | puff, | ||
| DtVector & | intersectPoint, | ||
| DtChord & | intersectSegment | ||
| ) | const [protected, virtual] |
Given a chord and a puff, determine the intersection.
| DtVisualSignaturePropagator& DtVisualSignaturePropagator::operator= | ( | const DtVisualSignaturePropagator & | orig | ) | [private] |
assignment operator - not implemented
const DtVisualSignaturePropagatorDescriptor* DtVisualSignaturePropagator::myVisualPropagatorDescriptor [protected] |