Programming Reference for VirtualLab Fusion  2025.1
Loading...
Searching...
No Matches
OpticalInterface Class Referenceabstract

This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
This is the base class for all optical surfaces. More...

Inheritance diagram for OpticalInterface:

Public Member Functions

double GetZExtension ()
 Gets the overall extension of the interface.
 
void GetZExtension (out double negZDir, out double posZDir, bool applyQuantization=true)
 The z-extension of the optical interface. Quantization and pixelation effects are considered.
 
void GetZExtensionOnElementaryCell (out double negZCell, out double posCell)
 The z-extension of the optical interface on elementary cell.
 
void GetZExtensionOnInnerArea (out double negZArea, out double posArea)
 The z-extension of the optical interface on inner definition area.
 
void GetZExtensionOnInnerShape (out double negZDir, out double posZDir, bool includeQuantization)
 The z-extension of the optical interface on shape of inner definition area.
 
void GetZExtensionOnOuterShape (out double negZDir, out double posZDir, bool includeQuantization)
 The z-extension of the optical interface on shape of outer definition area.
 

Properties

bool Coated [get]
 gets whether the interface is coated
 
FresnelEffectModificatorOnBoundary Coating [get, set]
 gets and sets the coating if there is one
 
CoatingOrientation CoatingOrientation [get, set]
 Gets and sets the orientation of a coating: Is it on the front side of its surface or on the back side? This has an effect on the order in which the layer sequence will be considered during simulation.
 
DefinitionAreaSettings DefinitionArea [get, set]
 Gets and sets the outer definition area (all periods) of the optical interface. Can be overridden in derived classes.
 
DefinitionAreaSettings DefinitionAreaElementaryCell [get, set]
 Gets and sets the inner definition area (elementary cell = one period) of the optical interface. Can be overridden in derived classes.
 
double ScalingAlpha [get, set]
 property to set and get scaling factor for scaling in z-direction.
 
double ScalingBeta [get, set]
 property to set and get scaling factor for scaling in x-direction
 
double ScalingGamma [get, set]
 property to set and get scaling factor for scaling in y-direction
 

Detailed Description

This class is subject to change. Programs using this class may require changes with a new version of VirtualLab.
This is the base class for all optical surfaces.

Member Function Documentation

◆ GetZExtension() [1/2]

double GetZExtension ( )

Gets the overall extension of the interface.

Returns
The total extension.

◆ GetZExtension() [2/2]

void GetZExtension ( out double  negZDir,
out double  posZDir,
bool  applyQuantization = true 
)

The z-extension of the optical interface. Quantization and pixelation effects are considered.

Parameters
negZDirThe negative z-Extension (less or equal zero)
posZDirThe positive z-Extension (greater or equal zero)
applyQuantizationOptional parameter. If set to false then it is assumed that the interfaces is not quantized to avoid. This parameter should only be set to false during initialization of the quantization to avoid endless recursion resulting in a StackOverflowException.

◆ GetZExtensionOnElementaryCell()

void GetZExtensionOnElementaryCell ( out double  negZCell,
out double  posCell 
)

The z-extension of the optical interface on elementary cell.

Parameters
negZCellThe negative z-Extension (less or equal zero)
posCellThe positive z-Extension (greater or equal zero)

◆ GetZExtensionOnInnerArea()

void GetZExtensionOnInnerArea ( out double  negZArea,
out double  posArea 
)

The z-extension of the optical interface on inner definition area.

Parameters
negZAreaThe negative z-Extension (less or equal zero)
posAreaThe positive z-Extension (greater or equal zero)

◆ GetZExtensionOnInnerShape()

void GetZExtensionOnInnerShape ( out double  negZDir,
out double  posZDir,
bool  includeQuantization 
)

The z-extension of the optical interface on shape of inner definition area.

Parameters
negZDirThe negative z-Extension (less or equal zero)
posZDirThe positive z-Extension (greater or equal zero)
includeQuantizationIndicates whether the calling function treats the quantization correctly. Needs to be set to false if the z-extension of the unquantized interface is determined to calculate the height levels of the quantized interface.

◆ GetZExtensionOnOuterShape()

void GetZExtensionOnOuterShape ( out double  negZDir,
out double  posZDir,
bool  includeQuantization 
)

The z-extension of the optical interface on shape of outer definition area.

Parameters
negZDirThe negative z-Extension (less or equal zero)
posZDirThe positive z-Extension (greater or equal zero)
includeQuantizationIndicates whether the calling function treats the quantization correctly. Needs to be set to false if the z-extension of the unquantized interface is determined to calculate the height levels of the quantized interface.

Property Documentation

◆ DefinitionArea

DefinitionAreaSettings DefinitionArea
getset

Gets and sets the outer definition area (all periods) of the optical interface. Can be overridden in derived classes.


◆ DefinitionAreaElementaryCell

DefinitionAreaSettings DefinitionAreaElementaryCell
getset

Gets and sets the inner definition area (elementary cell = one period) of the optical interface. Can be overridden in derived classes.