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
Examples
|