WSF
WsfSpaceOpticalSignature::Surface Class Reference

#include <WsfSpaceOpticalSignature.hpp>

Classes

struct  RefData
 This contains data needed to create the WCS->SCS. More...

Public Types

using MyMat3d = WsfSpaceOpticalSignature::MyMat3d

Public Member Functions

 Surface ()
virtual ~Surface ()=default
virtual bool ProcessInput (UtInput &aInput)
virtual double ProjectedArea (const MyMat3d &aWCS_ToSCS_Transform, const UtVec3d &aUnit_v) const
virtual double Reflect (const MyMat3d &aWCS_ToSCS_Transform, double aIntensity, const UtVec3d &aUnit_i, double aDist_i, const UtVec3d &aUnit_v, unsigned int aDebugLevel) const
virtual void UpdateTransform (const RefData &aRefData, MyMat3d &aWCS_ToSCS_Transform) const

Public Attributes

size_t mListIndex
double mReflectance
double mTemperatureChangeRate
double mMinimumTemperature
double mMaximumTemperature

Detailed Description

A 'Surface' represents a surface on the platform. At the current time all surfaces represent 3-dimensional closed surfaces

Note
An implementation of a 'Surface' must not contain any data that can be modified after it is defined. Instances of these are shared between all instances of a particular signature type (hence the 'const' on ProjectedArea and Reflect'.)

Member Typedef Documentation

◆ MyMat3d

Constructor & Destructor Documentation

◆ Surface()

WsfSpaceOpticalSignature::Surface::Surface ( )
inline

◆ ~Surface()

virtual WsfSpaceOpticalSignature::Surface::~Surface ( )
virtualdefault

Member Function Documentation

◆ ProcessInput()

bool WsfSpaceOpticalSignature::Surface::ProcessInput ( UtInput & aInput)
virtual

◆ ProjectedArea()

double WsfSpaceOpticalSignature::Surface::ProjectedArea ( const MyMat3d & aWCS_ToSCS_Transform,
const UtVec3d & aUnit_v ) const
virtual

Compute the projected area of the surface in the direction of the viewer.

Parameters
aWCS_ToSCS_TransformThe WCS->SCS transform.
aUnit_vThe unit vector pointing from the surface (platform) towards the viewer
Returns
The projected area (m^2)

Referenced by ~Surface().

◆ Reflect()

double WsfSpaceOpticalSignature::Surface::Reflect ( const MyMat3d & aWCS_ToSCS_Transform,
double aIntensity,
const UtVec3d & aUnit_i,
double aDist_i,
const UtVec3d & aUnit_v,
unsigned int aDebugLevel ) const
virtual

Compute the reflected radiant intensity of some incident illumination.

Parameters
aWCS_ToSCS_TransformThe WCS->SCS transform.
aIntensityThe radiant intensity of the illumination (W/sr)
aUnit_iUnit vector pointing from the surface (platform) towards the illuminator.
aDist_iDistance from the illuminator to the surface (platform) (m).
aUnit_vThe unit vector pointing from the surface (platform) towards the viewer.
aDebugLevelDebug flag from the caller.
Returns
The reflected radiant intensity (W/sr)

Referenced by ~Surface().

◆ UpdateTransform()

void WsfSpaceOpticalSignature::Surface::UpdateTransform ( const RefData & aRefData,
MyMat3d & aWCS_ToSCS_Transform ) const
virtual

Update the WCS-to-SCS (surface coordinate system) transform.

Parameters
aRefDataThe reference data for computing the WCS->SCS transform.
aWCS_ToSCS_TransformThe computed WCS->SCS transform.

References WsfSpaceOpticalSignature::MyMat3d::mMat, and WsfSpaceOpticalSignature::Surface::RefData::mWCS_ToECS_Transform.

Referenced by ~Surface().

Member Data Documentation

◆ mListIndex

size_t WsfSpaceOpticalSignature::Surface::mListIndex

Referenced by Surface().

◆ mMaximumTemperature

double WsfSpaceOpticalSignature::Surface::mMaximumTemperature

Referenced by ProcessInput(), and Surface().

◆ mMinimumTemperature

double WsfSpaceOpticalSignature::Surface::mMinimumTemperature

Referenced by ProcessInput(), and Surface().

◆ mReflectance

double WsfSpaceOpticalSignature::Surface::mReflectance

Referenced by ProcessInput(), and Surface().

◆ mTemperatureChangeRate

double WsfSpaceOpticalSignature::Surface::mTemperatureChangeRate

Referenced by ProcessInput(), and Surface().


The documentation for this class was generated from the following files:
Copyrights Multiple, All Rights Reserved