Navigation: Scripting Reference Manual > Data Structures > T_TARGETEDRAY

 

T_TARGETEDRAY

 

Contact Us: fredsupport@photonengr.com

 

Description

Data structure needed to perform a targeted (iterated, Hamiltonian) raytrace.  Depending on the number of rays traced, it may be necessary to dimension ray index and ray counter variables as data type Huge_ instead of Long.  Please see Multi-threaded Raytracing for more information.

 

Definition

Type T_TARGETEDRAY

startX As Double

startY As Double

startZ As Double

endX As Double

endY As Double

endZ As Double

hintX As Double

hintY As Double

hintZ As Double

hintWidthX As Double

hintWidthY As Double

wavelength As Double

aimTolerance As Double

derivativeIncrement As Double

startCoordSys As Long

endCoordSys As Long

hintCoordSys As Long

targetSurface As Long

material As Long

hintNumRays As Long (or Huge_)

hintTowards As Long

rayPath As String

hintType As String

useX As Boolean

useY As Boolean

useZ As Boolean

sameTargetAndEndCoordSys As Boolean

targetType As String

End Type

 

Members

startX

The X coordinate of the targeted ray’s starting position. The default value is 0.

 

startY

The Y coordinate of the targeted ray’s starting position. The default value is 0.

 

startZ

The Z coordinate of the targeted ray’s starting position. The default value is 0.

 

endX

The X coordinate of the targeted ray’s desired ending position (target point). The default value is 0.

 

endY

The Y coordinate of the targeted ray’s desired ending position (target point). The default value is 0.

 

endZ

The Z coordinate of the targeted ray’s desired ending position (target point). The default value is 0.

 

hintX

X hint data. If the hintType is “Direction”, this is the x direction cosine of the single iterated ray. If the hintType is “Position”, this is the x coordinate of the point the single iterated ray is aimed at. If the hintType is “SampledDirection”, this is the x direction cosine of center of the sampled direction.  If the hintType is “SampledPosition”, this is the x coordinate of center of the planar ellipse the iterated rays are launched towards. The default is 0.

 

hintY

Y hint data. If the hintType is “Direction”, this is the y direction cosine of the single iterated ray. If the hintType is “Position”, this is the y coordinate of the point the single iterated ray is aimed at. If the hintType is “SampledDirection”, this is the y direction cosine of center of the sampled direction.  If the hintType is “SampledPosition”, this is the y coordinate of center of the planar ellipse the iterated rays are launched towards.  The default is 0.

 

hintZ

Z hint data. If the hintType is “Direction”, this is the z direction cosine of the single iterated ray. If the hintType is “Position”, this is the z coordinate of the point the single iterated ray is aimed at. If the hintType is “SampledDirection”, this is the z direction cosine of center of the sampled direction.  If the hintType is “SampledPosition”, this is the z coordinate of center of the planar ellipse the iterated rays are launched towards. The default is 1.

 

hintWidthX

Specifies the x width in degrees (“SampledDirecion”) or system units (“SampledPosition”). The default is 1.

 

hintWidthY

Specifies the y width in degrees (“SampledDirecion”) or system units (“SampledPosition”). The default is 1.

 

wavelength

The wavelength of the targeted ray. The default is the default system wavelength.

 

aimTolerance

The convergence criterion for the targeted raytrace.  The targeted ray is considered converged when the distance from the targeted ray intersection to the desired ray intersection is less than this value. The default is 0.0001.

 

derivativeIncrement

The differential amount added to the direction cosines of the targeted ray to compute finite difference derivatives used in setting up the iteration equations. The default value is 0.0001.

 

startCoordSys

Coordinate system of the starting ray. The default is the global coordinate system.

 

endCoordSys

Coordinate system of the specification of the target point coordinates. The default is the global coordinate system.

 

hintCoordSys

Coordinate system of the hint data (hintX, hintY, and hintZ)

 

targetSurface

Specifies the surface onto which the iterated rays stop.  Usually the end coordinates (target point) is specified in the coordinate system of this surface. The default is the last surface entered into the tree.

 

material

The identifier of the immersion material of the targeted ray. The default is air.

 

hintNumRays

Specifies the total number of rays to be attempted during the iteration process.  This member is used only for the “4PI”, “Towards”, “SampledDirection”, and “SampledPosition” hints.

 

hintTowards

Specifies the surface or closed curve into which the iterated rays will be launched during the iteration process. This member is used only for the “Towards”, “SampledDirection”, and “SampledPosition” hints.

 

rayPath

The ray path to be used during the iterations.  The default is non-sequential raytracing.

 

hintType

Specifies a “hint” to start the targeted raytrace.

The default is “Direction”.

 

There are 6 different hints:

“4PI” sends the iterated rays into 4 pi steradians (brute force)

“Towards” sends the iterated rays towards a particular surface or closed curve as specified by the hintTowards member

“Direction” sends a single iterated ray toward a direction specified by the hintX, hintY, and hintZ members

“Position” sends a single iterated ray toward a position specified by the hintX, hintY, and hintZ members

“SampledDirection” sends the iterated rays into an angular cone whose angular cross section is hintWidthX degrees by hintWidthY degrees centered on the direction specified by the hintX, hintY, and hintZ members

“SampledPosition” sends the iterated rays into a planar ellipse whose cross section is hintWidthX by hintWidthY (in system units) centered on the position specified by the hintX, hintY, and hintZ members

 

 

 

useX

When set to True, specifies that the x coordinate of the targeted ray’s end point (target point) is to be used for the iteration. The default value is True. (In other words, by default the iteration algorithm iterates to the x and y coordinates of the target point.)

 

useY

When set to True, specifies that the y coordinate of the targeted ray’s end point (target point) is to be used for the iteration. The default value is True. (In other words, by default the iteration algorithm iterates to the x and y coordinates of the target point.)

 

useZ

When set to True, specifies that the z coordinate of the targeted ray’s end point (target point) is to be used for the iteration. The default value is False. (In other words, by default the iteration algorithm ignores the z coordinate of the target point.)

 

sameTargetAndEndCoordSys

When set to True, indicates that the target coordinate system and the end coordinate systems are identical (default).

 

targetType

Specifies whether the ray target coordinates are interpreted as position or direction specifications.  Valid values are "position" or "direction".

 

 

Used as Parameter in

InitTargetedRay

TargetedRay

Trace Targeted Ray Dialog

 

Examples

Advanced Raytrace

 

 

 

 

 

Copyright © Photon Engineering, LLC