Scanframe Modular Application 0.1.0
Loading...
Searching...
No Matches
sf::ipj::ToolBaseScanMethod Class Referenceabstract

Base class for scan methods using a common tool description. More...

#include <ToolBaseScanMethod.h>

Inheritance diagram for sf::ipj::ToolBaseScanMethod:
Collaboration diagram for sf::ipj::ToolBaseScanMethod:

Public Member Functions

bool InitializeBase ()
 Reads the tool and element information and returns true on succes.
 
bool GetGenericInfoList (StringList &) override
 Overridden from base class.
 
const ElementInformationGetElement () const
 Gets the element information.
 
const ToolInformationGetTool () const
 Gets the tool information.
 
bool ConvertPosition (gmi::AxesCoord &dest, const gmi::AxesCoord &src, bool to_focus) const override
 Overridden from base class.
 
bool GetIndexPos (gmi::AxesCoord &pos, int index, double scanfactor, bool rect) override
 Overridden from base class.
 
bool GetFocusPos (gmi::AxesCoord &dest, int index, double frac) override
 Overridden from base class.
 
bool GetMeasureOffset (Vector3D &vector, int index, double frac, bool rect) override
 Overridden from base class.
 
void Read (IniProfile *inifile) override
 Overridden from base class.
 
void Write (IniProfile *inifile) override
 Overridden from base class.
 
std::string GetParamSection () const
 Gets the parameter section name.
 
void AddVar (Variable *var)
 Adds the given variable to the list.
 
Variable::PtrVectorGetVars ()
 Gets the variable list reference.
 
void AddPropertyPages (PropertySheetDialog *sheet) override
 Overridden from base class.
 
bool GetSurfaceWithAngles (Matrix44 &angle, int index, double frac)
 Gets the combined surface matrix with applied angles. calls the overridden method GetSurface().
 
virtual bool GetSurface (Matrix44 &surface, int index, double frac)=0
 Abstract method which must be oerridden to retrieve the combined surface matrix with applied angles.
 
Value GetInterfacePosition () const
 Gets the interface position where it should be.
 
bool SetAscanAndGates (double distance=-1.0)
 Apply UT settings for the passed material distance. When negative use the depth variable value.
 
void ExportVariables (bool exported)
 Export or revokes exported variables in the variable list.
 
QString GetAnimationPath (const QString &filename) const
 Gets the animation file path of the given filename.
 
- Public Member Functions inherited from sf::ScanMethod
 ScanMethod (const Parameters &)
 Constructor for passing general structure for derived classes create by the class factory.
 
 ~ScanMethod () override
 Virtual destructor for derived classes.
 
void SetAreaName (const QString &name)
 Changes the area name so it is saved by the project under this new name.
 
QString GetAreaName () const
 Gets the area name of the scan entry.
 
bool DoInitialize ()
 Initializes the class after the constructor is called. Final virtual functions are only valid after full construction of a scan method. This function actually calls virtual function Initialize.
 
virtual void DestroyFrame ()
 
virtual std::ostream & Cout ()
 
bool Execute (ECommand cmd)
 Calls HandleCommand() after several checks.
 
ECommand GetCommand ()
 Gets the last Issued command.
 
void DoAddPropertyPages (PropertySheetDialog *sheet)
 Calls AddPropertyPages if the state allows it.
 
void SetIndexFracRange (double start, double stop)
 Sets the new scan range for defined surface.
 
int GetIndexCount () const
 Gets the amount of indices in the scan method.
 
int GetIndexStart () const
 Gets the clipped start value of the set range.
 
int GetIndexStop () const
 Gets the clipped stop value of the set range.
 
int GetScanListIndex () const
 Returns the scan list index of this instance in the project.
 
bool Reinitialize ()
 When the state is ready the scan method can be reinitialize. After changes are made to the settings for example.
 
void DoRead (IniEnvelope ini)
 Reads the settings of the scan method. Calls eventually the overridden Read() method.
 
void DoWrite (IniEnvelope ini)
 Writes the settings of the scan method. Calls eventually the overridden Write() method.
 
void LoadSystemSettings ()
 Loads the system setting associated with the scan method.
 
bool SaveSystemSettings ()
 Saves the system setting associated with the scan method.
 
bool IsActivated () const
 Check if the scan method was activated.
 
bool DoSustain (const timespec &)
 Called by the inspection project to enable the derived class to do some background processing.
 
bool DoCreateFrame ()
 Creates a scan method UI frame if possible. Calls the overridden CreateFrame() method.
 
bool DoConvertPosition (gmi::AxesCoord &dest, const gmi::AxesCoord &src, bool to_focus) const
 Converts a physical position to or from a focus position using the scan's configuration. Actually calls the overridden ConvertPosition() method.
 
bool DoGetIndexPos (gmi::AxesCoord &pos, int index, double frac, bool rect) const
 Gets the axes position calculated by the derived scan mode. Actually calls the overridden GetIndexPos() method.
 
bool DoGetFocusPos (gmi::AxesCoord &dest, int index, double frac) const
 Gets the focus position calculated by the derived scan mode. Actually calls the overridden GetFocusPos() method.
 
bool DoGetIndexVel (gmi::AxesCoord &dest, int index) const
 Gets the velocity calculated by the derived scan mode.
 
bool DoGetMeasureOffset (Vector3D &vector, int index, double frac, bool rect) const
 Gets the vector caused by changing measurement offsets. This means the offset caused by the A-scan delay change.
 
bool DoSetAcqParams (int index, double frac)
 Calls the overridden SetAcqParams() method on the derived class.
 
bool DoGetTriggerValue (gmi::AxisValue &value) const
 Gets the axis used for triggering measurements or when the axis location is #sf::EAxisLocation::alNA the internal generation is to be used. Calls the overridden GetTriggerValue() method.
 
gmi::EAxisLocation DoGetScanAxis () const
 Gets the scan and index axis for position calculations. Calls the overridden GetScanAxis() method.
 
bool GetScanStart (gmi::AxesCoord &ac) const
 Gets the position coordinate where the project passes control to the scan method.
 
bool GetScanStop (gmi::AxesCoord &ac) const
 Gets the position where the scan method passes control to the project.
 
const gmi::AxesCoordGetScanVelocity () const
 Gets the velocity for the scan method to move. Actually calls the scan binder method sf::ScanBinder::GetVelocity().
 
const gmi::AxesCoordGetScanAcceleration () const
 Gets the acceleration for the scan method to move. Actually calls the scan binder method sf::ScanBinder::GetVelocity().
 
const ScanBinder::InfoBaseGetScanInfo () const
 Gets the binder information of this scan method instance. Actually calls sf::ScanBinder::GetScanInfo().
 
const Vector3D & GetScanOffset () const
 Gets the offset of the part to its programmed position.
 
Vector3D GetOffset () const
 Gets the total offsets added.
 
const VariableGetMediumVelocity () const
 Gets the medium sound velocity system variable.
 
const VariableGetMaterialVelocity () const
 Gets the material sound velocity system variable.
 
bool GetRefractionAngle (double &dest, double src, bool to_medium=true)
 Gets the refracted angle.
 
TDataFilterLinks & GetFilterLinks ()
 Gets the analysis filter links.
 
bool ExecuteFilters (TDataFilterEntry::EAction action=TDataFilterEntry::feaSTART)
 Execute the referenced filters.
 
const std::vector< int > & GetUsedDevices () const
 Gets the acquisition devices used.
 
bool IsCalibReady ()
 Checks if the calibration is complete.
 
void SetAcqState (InformationServer::EState sel_state, InformationServer::EState unsel_state=InformationServer::issOff)
 Sets the state on all acquisition devices.
 
EState GetState () const
 Gets the state of the instance.
 
virtual void HandleCursorEvent (bool btn_down, Qt::KeyboardModifiers shift, int index, double frac)
 Can be overridden to handle cursor events when the scan is selected in the project.
 
ProjectDataGetProjectData ()
 Gets the project this instance is part of.
 
QString GetMethodName () const
 Gets this methods name.
 
QString GetDirectiveText () const
 Gets the directive text.
 
bool GetDirectiveEnabled () const
 Gets the flag weather the directive is enabled.
 
ESystemPosition GetDirectivePosition ()
 ??
 
QString GetElementName ()
 Gets the element name.
 
QString GetToolName ()
 Gets the tool name.
 
QString GetMaterialName ()
 Gets the material name.
 
QString GetSettingsName () const
 Gets the settings name.
 
std::string GetNamePrefix () const
 Gets the name prefix.
 
ECalibrationType GetCalibrationType ()
 Gets the calibration type name.
 
QString GetCalibrationSetName () const
 Gets the calibration set name.
 
InformationTypes::IdVectorGetCalibrationIds ()
 Gets the calibration ids.
 
std::string GetFilterConfigs ()
 Gets the comma separated string of filter configuration names.
 
Variable::PtrVectorGetLocalVars ()
 Gets the local variables in a pointer vector.
 
QWidget * GetFrame ()
 Called by a derived class to get its UI frame pointer.
 
- Public Member Functions inherited from sf::ProjectScriptObject
 ProjectScriptObject (const char *type_name)
 Constructor.
 
 ~ProjectScriptObject () override
 Virtual overridden destructor.
 
void AddScriptParam (const std::string &name, Variable *variable)
 Adds the passed variable as a parameter in the script.
 
- Public Member Functions inherited from sf::ScriptObject
 ScriptObject (const char *type_name, ScriptObject *parent=nullptr)
 
virtual ~ScriptObject ()=default
 Virtual destructor which can be overloaded to clean up objects.
 
virtual std::string getStatusText ()
 Gets the status text of this object for debugging purposes.
 
int getRefCount () const
 Gets the reference count.
 
 operator Value () const
 Cast operator to be able to return this instance as a Value.
 
std::string getTypeName () const
 Returns the type name Set at the constructor.
 
ScriptObjectgetParent ()
 Gets the script object owner.
 
const ScriptObjectgetParent () const
 Gets the script object owner.
 
ScriptObjectcastToObject (const Value &value)
 Casts a sf::Value::vitCustom typed sf::Value to a ScriptObject typed pointer.
 

Protected Member Functions

 ToolBaseScanMethod (const Parameters &)
 Constructor.
 
 ~ToolBaseScanMethod () override
 Destructor.
 
virtual void handleVariableEvent (Variable::EEvent event, const Variable &caller, Variable &link, bool same_inst)=0
 Event handler for local variables.
 
- Protected Member Functions inherited from sf::ScanMethod
ConfigStoreGetSaveState ()
 Gets the config store for saving and restoring the state of a frame. It is probably in the projects ini-profile.
 
const IdInfogetInfo (const std::string &name) const override
 Overridden from base class sf::ProjectScriptObject.
 
bool getSetValue (const IdInfo *info, Value *value, Value::vector_type *params, bool flag_set) override
 Overridden from base class sf::ProjectScriptObject.
 
virtual bool CreateFrame ()
 Creates a scan method UI frame if possible. Can be overloaded by a derived class.
 
virtual ScriptLinkGetScriptLink ()
 Gets the script link when one is associated. Can be overridden by a derived class.
 
virtual void StateChange (EState prev, EState cur)=0
 Is called when the current state changes for a derived class to act up on. Must be overridden by a derived class.
 
virtual bool Initialize ()=0
 Initializes the scan method. Must be overridden by a derived class.
 
virtual bool Sustain (const timespec &ts)
 Can be overloaded to do background processing.
 
virtual bool HandleCommand (ECommand cmd)=0
 Handles the command given by Execute(). Must be overridden in a derived class.
 
virtual bool GetIndexVel (gmi::AxesCoord &dest, int index)=0
 Gets the velocity calculated by the derived scan mode. Must be overridden in a derived class.
 
virtual bool GetTriggerValue (gmi::AxisValue &value)=0
 Gets the axis used for triggering measurements or when the axis location is #sf::EAxisLocation::alNA the internal generation is to be used. Must be overridden in a derived class.
 
virtual gmi::EAxisLocation GetScanAxis ()=0
 Gets the scan and index axis for position calculations. Must be overloaded by a derived class.
 
virtual bool SetAcqParams (int index, double frac)=0
 Sets the project acquisition parameters/variables based on the passed index. Must be overloaded by a derived class.
 
bool FilterHandler (TDataFilterLink *, EFilterNotifyCode fnc)
 Event handler for filter events which are passed to the scan method script.
 
bool UpdatePositionsData ()
 
bool SetState (EState state)
 
void SetFrame (QWidget *frame)
 
gmi::ControllerGetController ()
 
bool ClipTriggerValue (gmi::AxisValue &trigger_value)
 
void SetIndexCount (int idx_count)
 
InformationTypes::id_type GetIdOffset ()
 
- Protected Member Functions inherited from sf::ProjectScriptObject
void destroyObject (bool &should_delete) override
 Overridden from base class.
 
- Protected Member Functions inherited from sf::ScriptObject
void makeParent (ScriptObject *so)
 Makes this object the owner of the other object.
 
void setParent (ScriptObject *parent)
 Sets the owner to the pass script object.
 

Protected Attributes

LocalVariable VGateMode
 
LocalVariable VAngleCalculation
 Determines the way the gates are positioned.
 
LocalVariable VSurfaceAngleA
 Determines the way the given angles are used in the calculations.
 
LocalVariable VSurfaceAngleB
 Material angle A from the surface normal.
 
LocalVariable VMaterialAngleA
 Material angle B from the surface normal.
 
LocalVariable VMaterialAngleB
 Material angle A from the surface normal in the material.
 
Variable VAscanDelay
 Material angle B from the surface normal in the material.
 
Variable VAscanRange
 Linked A-scan position delay variable.
 
Variable VIfDelay
 Linked A-scan position range variable.
 
Variable VIfRange
 Linked Gate position delay variable.
 
Variable VGate1Slaved
 Linked Gate position range variable.
 
Variable VGate1Delay
 Linked Gate 1 slaved variable.
 
Variable VGate1Range
 Linked Gate 1 delay variable.
 
Variable VGate2Slaved
 Linked Gate 1 range variable.
 
Variable VGate2Delay
 Linked Gate 2 slaved variable.
 
Variable VGate2Range
 Linked Gate 2 delay variable.
 
LocalVariable VDepthMax
 Linked Gate 2 range variable.
 
LocalVariable VDepthOffset
 
LocalVariable VDepthFactor
 Holds the offset which is subtracted from the retrieved depth.
 
LocalVariable VDepth
 Holds the depth correction factor for when angles are used.
 
bool FControlAscan
 Holds the actual depth after calculation.
 
TVariableHandler< ToolBaseScanMethod_variableHandler
 Holds the retrieved part directory at construction.
 

Friends

class NipscanTranslatePropertyPage
 Handle allowing linkage of the $handleVariableEvent() virtual method.
 
class ScanDepthPropertyPage
 

Additional Inherited Members

- Public Types inherited from sf::ScanMethod
enum  EDefaultParamIndex {
  dpiINDEXCOUNT = 0 , dpiINDEXDENS = 1 , dpiSCANDENS = 2 , dpiSCANLEN = 3 ,
  dpiDENSMODE = 4 , dpiANGLE_A = 5 , dpiANGLE_B = 6 , dpiSURFACEANGLE_A = 7 ,
  dpiSURFACEANGLE_B = 8 , dpiGATEMODE = 10 , dpiDEPTH = 23 , dpiDEPTHFACTOR = 24 ,
  dpiLAST = 0x100
}
 Default parameter ID indices for derived scan methods. More...
 
enum  ECommand {
  smcINIT , smcACTIVATE , smcDEACTIVATE , smcCHECK ,
  smcSCAN , smcEVALUATE , smcSTOP , smcOFFSETCHANGE
}
 Available commands. More...
 
enum  EState {
  smsCFGERR = -2 , smsERROR = -1 , smsNOINIT = 0 , smsREADY ,
  smsACTIVE , smsCHECKING , smsSCANNING , smsEVALUATING ,
  smsLASTENTRY
}
 States of operation. More...
 
- Public Types inherited from sf::ScriptObject
enum  EIdentifier {
  idUnknown = 0 , idConstant , idVariable , idFunction ,
  idTypedef , idKeyword
}
 Keyword identifiers. More...
 
typedef std::string::size_type pos_type
 Source position type.
 
typedef ssize_t ip_type
 Instruction pointer type.
 
- Static Public Member Functions inherited from sf::ScanMethod
static const char * GetStateName (EState)
 Gets the state name of the given state value.
 
static const char * GetCommandName (ECommand)
 Gets the command name of the given command value.
 
- Static Public Member Functions inherited from sf::ScriptObject
static const IdInfogetInfoUnknown ()
 Returns the static Info structure for unknowns.
 

Detailed Description

Base class for scan methods using a common tool description.

Constructor & Destructor Documentation

◆ ToolBaseScanMethod()

sf::ipj::ToolBaseScanMethod::ToolBaseScanMethod ( const Parameters )
explicitprotected

Constructor.

◆ ~ToolBaseScanMethod()

sf::ipj::ToolBaseScanMethod::~ToolBaseScanMethod ( )
overrideprotected

Destructor.

Member Function Documentation

◆ AddPropertyPages()

void sf::ipj::ToolBaseScanMethod::AddPropertyPages ( PropertySheetDialog sheet)
overridevirtual

Overridden from base class.

Reimplemented from sf::ScanMethod.

◆ AddVar()

void sf::ipj::ToolBaseScanMethod::AddVar ( Variable var)
inline

Adds the given variable to the list.

◆ ConvertPosition()

bool sf::ipj::ToolBaseScanMethod::ConvertPosition ( gmi::AxesCoord dest,
const gmi::AxesCoord src,
bool  to_focus 
) const
overridevirtual

Overridden from base class.

Implements sf::ScanMethod.

◆ ExportVariables()

void sf::ipj::ToolBaseScanMethod::ExportVariables ( bool  exported)

Export or revokes exported variables in the variable list.

◆ GetAnimationPath()

QString sf::ipj::ToolBaseScanMethod::GetAnimationPath ( const QString &  filename) const
inline

Gets the animation file path of the given filename.

Parameters
filename
Returns
Full path.

◆ GetElement()

const ElementInformation & sf::ipj::ToolBaseScanMethod::GetElement ( ) const

Gets the element information.

◆ GetFocusPos()

bool sf::ipj::ToolBaseScanMethod::GetFocusPos ( gmi::AxesCoord dest,
int  index,
double  frac 
)
overridevirtual

Overridden from base class.

Implements sf::ScanMethod.

◆ GetGenericInfoList()

bool sf::ipj::ToolBaseScanMethod::GetGenericInfoList ( StringList )
overridevirtual

Overridden from base class.

Implements sf::ScanMethod.

◆ GetIndexPos()

bool sf::ipj::ToolBaseScanMethod::GetIndexPos ( gmi::AxesCoord pos,
int  index,
double  scanfactor,
bool  rect 
)
overridevirtual

Overridden from base class.

Implements sf::ScanMethod.

◆ GetInterfacePosition()

Value sf::ipj::ToolBaseScanMethod::GetInterfacePosition ( ) const

Gets the interface position where it should be.

◆ GetMeasureOffset()

bool sf::ipj::ToolBaseScanMethod::GetMeasureOffset ( Vector3D &  vector,
int  index,
double  frac,
bool  rect 
)
overridevirtual

Overridden from base class.

Reimplemented from sf::ScanMethod.

◆ GetParamSection()

std::string sf::ipj::ToolBaseScanMethod::GetParamSection ( ) const

Gets the parameter section name.

Returns

◆ GetSurface()

virtual bool sf::ipj::ToolBaseScanMethod::GetSurface ( Matrix44 &  surface,
int  index,
double  frac 
)
pure virtual

Abstract method which must be oerridden to retrieve the combined surface matrix with applied angles.

Parameters
surface
indexMeasurement indexed position.
fracScan line fraction.
Returns
True on success.

Implemented in sf::ipj::LineScanMethod.

◆ GetSurfaceWithAngles()

bool sf::ipj::ToolBaseScanMethod::GetSurfaceWithAngles ( Matrix44 &  angle,
int  index,
double  frac 
)

Gets the combined surface matrix with applied angles. calls the overridden method GetSurface().

Parameters
angle
index
frac
Returns
True on success.

◆ GetTool()

const ToolInformation & sf::ipj::ToolBaseScanMethod::GetTool ( ) const

Gets the tool information.

◆ GetVars()

Variable::PtrVector & sf::ipj::ToolBaseScanMethod::GetVars ( )
inline

Gets the variable list reference.

◆ handleVariableEvent()

virtual void sf::ipj::ToolBaseScanMethod::handleVariableEvent ( Variable::EEvent  event,
const Variable caller,
Variable link,
bool  same_inst 
)
protectedpure virtual

Event handler for local variables.

Implemented in sf::ipj::LineScanMethod.

◆ InitializeBase()

bool sf::ipj::ToolBaseScanMethod::InitializeBase ( )

Reads the tool and element information and returns true on succes.

◆ Read()

void sf::ipj::ToolBaseScanMethod::Read ( IniProfile inifile)
overridevirtual

Overridden from base class.

Implements sf::ScanMethod.

◆ SetAscanAndGates()

bool sf::ipj::ToolBaseScanMethod::SetAscanAndGates ( double  distance = -1.0)

Apply UT settings for the passed material distance. When negative use the depth variable value.

Parameters
distance
Returns
True on success.

◆ Write()

void sf::ipj::ToolBaseScanMethod::Write ( IniProfile inifile)
overridevirtual

Overridden from base class.

Implements sf::ScanMethod.

Friends And Related Symbol Documentation

◆ NipscanTranslatePropertyPage

friend class NipscanTranslatePropertyPage
friend

Handle allowing linkage of the $handleVariableEvent() virtual method.

◆ ScanDepthPropertyPage

friend class ScanDepthPropertyPage
friend

Member Data Documentation

◆ _variableHandler

TVariableHandler<ToolBaseScanMethod> sf::ipj::ToolBaseScanMethod::_variableHandler
protected

Holds the retrieved part directory at construction.

◆ FControlAscan

bool sf::ipj::ToolBaseScanMethod::FControlAscan
protected

Holds the actual depth after calculation.

◆ VAngleCalculation

LocalVariable sf::ipj::ToolBaseScanMethod::VAngleCalculation
protected

Determines the way the gates are positioned.

◆ VAscanDelay

Variable sf::ipj::ToolBaseScanMethod::VAscanDelay
protected

Material angle B from the surface normal in the material.

◆ VAscanRange

Variable sf::ipj::ToolBaseScanMethod::VAscanRange
protected

Linked A-scan position delay variable.

◆ VDepth

LocalVariable sf::ipj::ToolBaseScanMethod::VDepth
protected

Holds the depth correction factor for when angles are used.

◆ VDepthFactor

LocalVariable sf::ipj::ToolBaseScanMethod::VDepthFactor
protected

Holds the offset which is subtracted from the retrieved depth.

◆ VDepthMax

LocalVariable sf::ipj::ToolBaseScanMethod::VDepthMax
protected

Linked Gate 2 range variable.

Holds the depth of the measurement. This is the length in meters from the surface to the end of the signal gate.

◆ VDepthOffset

LocalVariable sf::ipj::ToolBaseScanMethod::VDepthOffset
protected

◆ VGate1Delay

Variable sf::ipj::ToolBaseScanMethod::VGate1Delay
protected

Linked Gate 1 slaved variable.

◆ VGate1Range

Variable sf::ipj::ToolBaseScanMethod::VGate1Range
protected

Linked Gate 1 delay variable.

◆ VGate1Slaved

Variable sf::ipj::ToolBaseScanMethod::VGate1Slaved
protected

Linked Gate position range variable.

◆ VGate2Delay

Variable sf::ipj::ToolBaseScanMethod::VGate2Delay
protected

Linked Gate 2 slaved variable.

◆ VGate2Range

Variable sf::ipj::ToolBaseScanMethod::VGate2Range
protected

Linked Gate 2 delay variable.

◆ VGate2Slaved

Variable sf::ipj::ToolBaseScanMethod::VGate2Slaved
protected

Linked Gate 1 range variable.

◆ VGateMode

LocalVariable sf::ipj::ToolBaseScanMethod::VGateMode
protected

◆ VIfDelay

Variable sf::ipj::ToolBaseScanMethod::VIfDelay
protected

Linked A-scan position range variable.

◆ VIfRange

Variable sf::ipj::ToolBaseScanMethod::VIfRange
protected

Linked Gate position delay variable.

◆ VMaterialAngleA

LocalVariable sf::ipj::ToolBaseScanMethod::VMaterialAngleA
protected

Material angle B from the surface normal.

◆ VMaterialAngleB

LocalVariable sf::ipj::ToolBaseScanMethod::VMaterialAngleB
protected

Material angle A from the surface normal in the material.

◆ VSurfaceAngleA

LocalVariable sf::ipj::ToolBaseScanMethod::VSurfaceAngleA
protected

Determines the way the given angles are used in the calculations.

◆ VSurfaceAngleB

LocalVariable sf::ipj::ToolBaseScanMethod::VSurfaceAngleB
protected

Material angle A from the surface normal.


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