IRayTraceDirectUnpolData
IRayTraceDirectUnpolData performs a batch unpolarized ray trace, using direct x/y/z coordinates.
When opening the tool, the user selects the number of maximum rays to be traced, the type of rays (the ray tracing can use real or paraxial rays), and the first and last surfaces where the rays will be traced.
CreateDirectUnpol (int MaxRays, RaysType rayType, int startSurface, int toSurface)
The rays are then defined one by one in the AddRay function. The rays are defined by the wavelength and x, y, z, l, m, and n coordinates on any starting surface.
AddRay (int waveNumber, double X, double Y, double Z, double L, double M, double N)
Results
This method can return:
ReadNextResult (out int rayNumber, out int ErrorCode, out int vignetteCode, out double X, out double Y, out double Z, out double L, out double M, out double N, out double l2, out double m2, out double n2, out double intensity)
- rayNumber
- ErrorCode
- vignetteCode: indicates if the ray was vignetted
- X, Y, Z: the coordinates of the ray at the requested surface
- L, M, N: direction cosines of the ray at the requested surface
- l2, m2, n2: vector normal of the ray at the requested surface.
- Intensity: the power of the ray (see discussion on the polarization in the IRayTraceNormUnpolData)
Next: