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

Signature propagator useful in any standard sensor domain. More...

Inheritance diagram for DtStandardSignaturePropagator:
Inheritance graph
[legend]

Public Member Functions

 DtStandardSignaturePropagator (const DtSignaturePropagatorDescriptor *desc, DtPhysicalWorld *physicalWorld)
 default constructor
virtual ~DtStandardSignaturePropagator ()
 destructor
virtual void init ()
 Assigns myStandardPropagatorDescriptor by casting the result of descriptor().
virtual double calculateApparentSignature (double absoluteSignature, const DtSignaturePropagatorArgs &args) const
 Calculates the apparent signature from the provided absolute signature.
- Public Member Functions inherited from DtSignaturePropagator
 DtSignaturePropagator (const DtSignaturePropagatorDescriptor *descriptor, DtPhysicalWorld *physicalWorld)
virtual ~DtSignaturePropagator ()
 destructor
virtual const
DtSignaturePropagatorDescriptor
descriptor () const
virtual const DtPhysicalWorldphysicalWorld () const

Static Public Member Functions

static DtSignaturePropagatorcreate (const DtSignaturePropagatorDescriptor *desc, DtPhysicalWorld *physicalWorld)
 Creates a new instance of this class, calls init() on it, and returns it.
- Static Public Member Functions inherited from DtSignaturePropagator
static void setFactory (DtSignaturePropagatorFactory *factory)
 Sets the static factory member.
static DtSignaturePropagatorcreateSignaturePropagator (const DtString &type, const DtSignaturePropagatorDescriptor *desc, DtPhysicalWorld *physicalWorld)
 Uses the static factory assigned in setFactory to create the requested signature propagator type.

Protected Member Functions

virtual bool getViewPoints (const DtSignaturePropagatorArgs &args, std::vector< DtVector > &points) const
 Gets the view points of the viewing object.
virtual bool getTargetPoints (const DtSignaturePropagatorArgs &args, std::vector< DtVector > &points) const
 Gets the target points of the given object.
virtual void getTargetPointsAtRange (const DtVector &viewerLoc, const DtVector &targetLoc, double range, bool clampToTerrain, double clampAlt, std::vector< DtVector > &points) const
 Fills the points vector with a collection of locations at the specified range from targetLoc.
virtual bool viewerAndTargetOverlap (const DtSignaturePropagatorArgs &args) const
 Returns true if the footprints of the viewer and target overlap.
virtual double getLinearEngineeringObjectsModifier (const DtSignaturePropagatorArgs &args) const
 Returns the signature modifier resulting from any linear engineering objects between the view point and the target point.
void clampAltitudeToTerrain (const DtVector &targetObjectPosition, double clampAlt, DtVector &location) const
 Set point clampAlt m off ground if data is available - set to clampAlt m above target object's altitude otherwise.
bool clampViewPoints (const DtVrfObject *object) const
 Returns true if viewpoints for this object should be clamped.

Protected Attributes

const
DtStandardPropagatorDescriptor
myStandardPropagatorDescriptor
DtManagedObjectListConstPtr myEngineeringLineList
- Protected Attributes inherited from DtSignaturePropagator
const
DtSignaturePropagatorDescriptor
myDescriptor
DtPhysicalWorldmyPhysicalWorld

Private Member Functions

 DtStandardSignaturePropagator (const DtStandardSignaturePropagator &orig)
 copy constructor - not implemented
DtStandardSignaturePropagatoroperator= (const DtStandardSignaturePropagator &orig)
 assignment operator - not implemented

Additional Inherited Members

- Static Protected Attributes inherited from DtSignaturePropagator
static
DtSignaturePropagatorFactory
theFactory

Detailed Description

Signature propagator useful in any standard sensor domain.

This propagator returns an apparent signature based on the absolute signature * 1000 / distance traveled in meters. 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. If check-line-of-sight is set to True (the default), the DtPhysicalWorld::checkLineOfSight() call is used to determine if anything is between the observer and observee, and if so, returns a signature of 0.0. This propagator requires a DtStandardPropagatorDescriptor descriptor type.

Constructor & Destructor Documentation

DtStandardSignaturePropagator::DtStandardSignaturePropagator ( const DtSignaturePropagatorDescriptor desc,
DtPhysicalWorld physicalWorld 
)

default constructor

virtual DtStandardSignaturePropagator::~DtStandardSignaturePropagator ( )
virtual

destructor

DtStandardSignaturePropagator::DtStandardSignaturePropagator ( const DtStandardSignaturePropagator orig)
private

copy constructor - not implemented

Member Function Documentation

virtual void DtStandardSignaturePropagator::init ( )
virtual

Assigns myStandardPropagatorDescriptor by casting the result of descriptor().

Reimplemented from DtSignaturePropagator.

Reimplemented in DtVisualSignaturePropagator, DtActiveSonarSignaturePropagator, DtPassiveSonarSignaturePropagator, and MySignaturePropagator.

virtual double DtStandardSignaturePropagator::calculateApparentSignature ( double  absoluteSignature,
const DtSignaturePropagatorArgs args 
) const
virtual

Calculates the apparent signature from the provided absolute signature.

Deriving classes must override this function to provide the implementation for apparent signature they desire.

Implements DtSignaturePropagator.

Reimplemented in DtVisualSignaturePropagator, MySignaturePropagator, DtActiveSonarSignaturePropagator, and DtPassiveSonarSignaturePropagator.

static DtSignaturePropagator* DtStandardSignaturePropagator::create ( const DtSignaturePropagatorDescriptor desc,
DtPhysicalWorld physicalWorld 
)
static

Creates a new instance of this class, calls init() on it, and returns it.

Reimplemented in DtVisualSignaturePropagator, MySignaturePropagator, DtActiveSonarSignaturePropagator, and DtPassiveSonarSignaturePropagator.

virtual bool DtStandardSignaturePropagator::getViewPoints ( const DtSignaturePropagatorArgs args,
std::vector< DtVector > &  points 
) const
protectedvirtual

Gets the view points of the viewing object.

Returns false if no specific view points could be determined, in which case standard view point can be used.

virtual bool DtStandardSignaturePropagator::getTargetPoints ( const DtSignaturePropagatorArgs args,
std::vector< DtVector > &  points 
) const
protectedvirtual

Gets the target points of the given object.

Returns false if no specific target points could be determined, in which case standard target point can be used.

virtual void DtStandardSignaturePropagator::getTargetPointsAtRange ( const DtVector viewerLoc,
const DtVector targetLoc,
double  range,
bool  clampToTerrain,
double  clampAlt,
std::vector< DtVector > &  points 
) const
protectedvirtual

Fills the points vector with a collection of locations at the specified range from targetLoc.

These points are chose in relation to the viewerLoc. Returns three points: 1) The point on the line between viewerLoc and targetLoc that is range meters from targetLoc 2) The point on the line perpendicular to the one between viewerLoc and targetLoc that is range meters to the left of targetLoc 3) The point on the line perpendicular to the one between viewerLoc and targetLoc that is range meters to the right of targetLoc If clampToTerrain is true, the points will be clamped to clampAlt m above the terrain (assuming data is available). If clampToTerrain is false, the points will use the altitude of the target object.

virtual bool DtStandardSignaturePropagator::viewerAndTargetOverlap ( const DtSignaturePropagatorArgs args) const
protectedvirtual

Returns true if the footprints of the viewer and target overlap.

virtual double DtStandardSignaturePropagator::getLinearEngineeringObjectsModifier ( const DtSignaturePropagatorArgs args) const
protectedvirtual

Returns the signature modifier resulting from any linear engineering objects between the view point and the target point.

void DtStandardSignaturePropagator::clampAltitudeToTerrain ( const DtVector targetObjectPosition,
double  clampAlt,
DtVector location 
) const
protected

Set point clampAlt m off ground if data is available - set to clampAlt m above target object's altitude otherwise.

bool DtStandardSignaturePropagator::clampViewPoints ( const DtVrfObject object) const
protected

Returns true if viewpoints for this object should be clamped.

DtStandardSignaturePropagator& DtStandardSignaturePropagator::operator= ( const DtStandardSignaturePropagator orig)
private

assignment operator - not implemented

Member Data Documentation

const DtStandardPropagatorDescriptor* DtStandardSignaturePropagator::myStandardPropagatorDescriptor
protected
DtManagedObjectListConstPtr DtStandardSignaturePropagator::myEngineeringLineList
protected

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

Document ID: Generated on Wed Jul 29 00:55:00 EDT 2015 from SVN revision 155257
Copyright © 2005-2015 VT MÄK. All Rights Reserved (www.mak.com)