IRayTraceDirectUnpolData
IRayTraceDirectUnpolData は、x/y/z の直接座標を使用して、偏光していない光線のバッチ光線追跡を実行します。
ツールを起動して、追跡する光線の最大数、追跡する光線の種類 (実光線または近軸光線)、光線追跡の開始面と終了面をユーザー側で選択します。
CreateDirectUnpol (int MaxRays, RaysType rayType, int startSurface, int toSurface)
つづいて、AddRay 関数で光線を 1 本ずつ定義します。波長、および任意の開始面における x、y、z、l、m、n の各座標で光線を定義します。
AddRay (int waveNumber, double X, double Y, double Z, double L, double M, double N)
結果
このメソッドは、以下の値を返します。
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 : 光線がビネッティングされたかどうかを示します。
- X、Y、Z : 指定した面における光線の座標。
- L、M、N : 指定した面における光線の方向余弦。
- l2、m2、n2 : 指定した面と光線との交点におけるその面のベクトル法線
- Intensity : 光線の強度 (IRayTraceNormUnpolData の偏光に関する説明を参照してください)。
次へ :