ユーザー定義
ユーザー定義面 (UDS) は、OpticStudio に組み込まれていない面を実装するために用意されている、機能性と柔軟性に優れた高速な手段です。UDS は任意の形状にでき、任意の屈折、反射、回折プロパティを持ち、任意の位相をビームに伝え、同質の媒質または任意の形状の分布屈折率媒質を後に続けることができます。さらに UDS は、ビームを任意にアポダイズまたは減衰させたり、偏光解析のための電界やコーティング データの定義に使用することもできます。この後者の機能では、ユーザーが光学系の任意の面で定義する任意の式またはテーブルに従って、ビームを部分的に透過させることもできます。
この非常に優れた柔軟性の秘密は、面のすべてのプロパティをユーザーが個別の C または C++ プログラムによって定義した後、そのプログラムを Windows のダイナミック リンク ライブラリ (DLL) 機能を使用してコンパイルし、OpticStudio に動的にリンクしたことによります。面に続く媒質内の位置の関数として屈折率を決定するために、DLL には、面の描画、光線の追跡、屈折角の計算、分布屈折率のために必要なすべてのデータを OpticStudio に返す関数が含まれる必要があります。
DLL はコンパイル済みのコードであり、OpticStudio が DLL に計算の必要があるデータへのポインタを渡すため、UDS は非常に高速で、ネイティブの OpticStudio コードとほぼ同じ速さになります (関数の呼び出しによる若干のオーバーヘッドがあります)。
ただし、UDS のパワーは妥当なものであっても、それなりの対価が生じます。UDS を使用するには、32 ビット (64 ビット バージョンの OpticStudio を使用する場合は 64 ビット) の Windows 互換の DLL を生成できる適切なコンパイラまたは開発ツールを用意する必要があります。また、ユーザーが必要なコードを記述できる能力を有していること、また最も重要な点として、信頼性の高い、バグのないコードを生成できることが前提になります。速度を最大化するため、OpticStudio では DLL から返されるデータのエラー チェックがほとんど実行されないので、UDS DLL に不具合がある場合、OpticStudio がクラッシュする可能性があります。
このため、UDS の実装に対するテクニカル サポートは、提供されるサンプル ファイルが正しく動作することの説明に厳しく限定されます。
UDS DLL
UDS DLL の作成方法を習得する最善の方法は、最初にサンプル DLL のソース コード ファイル (末尾が .C のファイル) を新しいファイル名にコピーして、そのサンプルを自分の要件に合わせて編集し、リコンパイルして新しい DLL を作成することです。DLL ソース コードのかなりの部分を占めるのは、すべての DLL に共通する「ボイラープレート」です。
UDS DLL を定義するために必要なファイルは 2 つあります。C (または C++) ソース コード ファイル (MY_SURF.C など) と、USERSURF.H という名前のヘッダー ファイルです。変更する必要があるのは C ファイルのみです。この C ファイルは 2 つの関数を定義します。1 つ目は「DLLMain」で、DLL によって使用されるデータを初期化するために (オプションで) 使用されます。もう 1 つの関数は「UserDefinedSurface5」で、これが面タイプごとに変更される関数です。以前のバージョンの OpticStudio のユーザー定義面インターフェイスでは、UserDefinedSurface、UserDefinedSurface2、UserDefinedSurface3、UserDefinedSurface4 という関数名が使用されていました。これらの名前はまだサポートされていますが、廃止扱いとなっています。新しい DLL ファイルでは、UserDefinedSurface5 を使用する必要があります。
OpticStudio では、USERSURF.H ファイルで定義する次の 2 つの構造体をこの関数に渡します。
- "USER_DATA"
- "FIXED_DATA5"
USER_DATA
このデータ構造体は以下のデータを収めています。
- 面の頂点に接する平面上で光線が占める x、y、z 位置。DLL は、実際の面に到達するまで処理を反復するか、交差点を解析的に計算して、更新された光線位置を返す必要があります。
- 光線と面との交差点における方向余弦 l、m、n。
- 光線と面との交差点における面法線 ln、mn、nn。これらは計算されて戻り値として返されます。
- 屈折率分布の屈折率、透過率、経路長などのその他のデータ。
DLL は、光線が面と相互作用した後で発生する新しい光線データをすべて計算する必要があります。
FIXED_DATA5
このデータ構造体は、主に DLL で変更できないデータを収めています。エディタに表示するすべての面データ、光線の波長、偏光状態などがあります。.DLL で変更できるデータは、光線の偏光状態とパラメータのスケールのみです。
FIXED_DATA5 には、DLL への特定の呼び出しによって OpticStudio が必要とするデータであることを示す「Type」パラメータと「Numb」パラメータも記述されています。UserDefinedSurface5 関数の内部には、これらのパラメータに関する C の「switch-case」構造体があります。「Type」は 0 ~ 10 の数値です。
「Type」コードの内容を以下の表に示します。
タイプ | Zemax が DLL に求める計算内容 |
エラー コード 0 | 面の名前、放射対称の状態、GRIN の状態 |
1 | パラメータ列の名前 |
2 | 追加データ列の名前 |
3 | 面のサグおよび代替サグ |
4 | 面までの近軸光線追跡および面による屈折 |
5 | 面までの実光線追跡および面による屈折 (透過率および偏光のデータが存在する場合は、それらも加味する) |
6 | 屈折率分布型の伝搬の場合の屈折率とその 1 次微分 |
7 | ユーザーが面タイプを最初に選択したときに設定されるデフォルト データ |
8 |
必要な場合の DLL の初期化。これには DLL が必要とする静的メモリーの割り当て、データ ファイルのロード、またはその他の一回限りの計算または初期化などが含まれます。このタイプ コードは、DLL をロードするたびに 1 回呼び出されますが、Zemax は同じ DLL を複数回ロードする場合があります。たとえば、Zemax の解析ウィンドウは、それぞれ専用にレンズ データのコピーを取得します。これらのコピーは、解析ウィンドウが更新されるたびに、各々 DLL をロードおよび初期化します。Zemax では複数の解析ウィンドウを同時に更新できるので (並列実行)、その場合は複数の DLL が同時に実行されます。このため、一時データの格納やログ ファイルの作成に固定ファイル名を使用することは推奨できません。Zemax が DLL を複数回ロードすることで、同じファイルの作成や同じファイルへの書き込みが複数回実行されるためです。 DLL がこのタイプ コードを処理する必要があるのは、光線追跡の前に 1 回限りの初期化を必要としている場合のみです。 |
9 |
必要な場合の DLL の終了。割り当てられたメモリーの解放やデータ ファイルを閉じる処理などです。このタイプ コードは、DLL が面から削除された場合、またはレンズが閉じられた場合に呼び出されます。Zemax が複数の DLL をロード、初期化、終了する可能性がある理由については、上記のタイプ コード 8 の説明を参照してください。 DLL がこのタイプ コードを処理する必要があるのは、DLL が終了前にメモリーを解放したり、その他の何らかの「クリーン アップ」作業を実行する必要がある場合のみです。 |
10 | DLL が使用するパラメータおよび追加データ値のスケーリング。倍率は、パス引数の構造体 USER_DATA に格納します。 |
サンプルの DLL ソース コード ファイルには、広範なコメントがあります。DLL ファイルは <data>\DLL\Surfaces フォルダにあり、新しい DLL ファイルもここに配置する必要があります。
屈折および反射の UDS DLL
反射性または屈折性で、分布屈折率を持たず、回折も発生しない従来の均質な面は、US_STAND.C ファイルから着手します。このファイルは、US_STAND.DLL のソース コードで、組込みの OpticStudio 標準面のクローンです。厳密に同じコードではなく、OpticStudio で使用される式の形式よりはやや低速ですが、同等に機能します。US_STAND.C には汎用的なスネルの法則の屈折関数が含まれており、これは反射にも機能します。この DLL では (すべての UDS DLL と同様に)、サグ、光線交差の式、面法線、光路、近軸屈折の機能が提供されます。
分布屈折率の UDS DLL
分布屈折率を持つ面では、US_GRIN1.C を着手点として使用します。コードは US_STAND.C とよく似ていますが、面が分布タイプであることを示すフラグが返される点と、X、Y、Z、およびすべてのパラメータと追加データを指定した後、データ タイプ 6 が実装されることにより、屈折率が返される点が異なります。X、Y、Z 方向の屈折率の最初の導関数も指定する必要があります。
分布屈折率の UDS DLL では、近軸光線追跡に使用される屈折率は、ガラス列が空白のままであれば、座標 (0, 0, 0) における面の前方頂点の屈折率になります。DLL に対してガラス タイプが指定されている場合 (LDE の通常のガラス列で)、近軸の基準屈折率はその材質のガラス カタログ データから計算されます。分布屈折率の UDS を使用する場合には、ガラス名を指定する必要はありませんし、指定することをお勧めしません。ガラス名の指定が必須になるのは、DLL がカタログ ガラスのプロパティに基づいて屈折率のオフセットを計算する場合のみです。
回折の UDS DLL
回折光学系は標準光学系とよく似ていますが、X と Y の関数として、光線が位相の導関数によってさらに偏向される点と、位相変化を含めるために光路長を変更する必要がある点が異なります。
一般的に、回折光学系の「屈折」は以下のように定義されます。
ここで l と m は方向余弦で、z 方向余弦 n は方向ベクトルの大きさを 1 にするために計算されます。φ は位相 (ラジアン) です。
サンプル DLL の US_GRATE.DLL は、OpticStudio のグレーティング面のクローン作成による回折の計算を示しています。
DLL を使用するレンズレット アレイ
レンズレット アレイは、ユーザー定義面を使用して簡単にモデル化できます。基本的に、光線追跡では、到達したアレイのセグメントを判別した後、ローカルのレンズ曲率を使用して屈折を計算します。サンプル ソース コードと DLL は、それぞれ US_ARRAY.C と US_ARRAY.DLL という名前で提供されています。
DLL を使用するユーザー定義面のアポダイゼーション
DLL では、実光線追跡の部分 (タイプ コード 5) で面の透過率を定義できます。面の透過率は 0.0 ~ 1.0 の数値である必要があり、光線が面を透過する際の強度の相対的な割合を示します。このコンテキストで透過は「進み続けること」を意味するので、反射面における透過部分とは、次の面に向かって通常どおり反射する部分になります。
面の透過率を使用して、任意の面アポダイゼーションを定義できます。透過関数は、光線座標、方向余弦、面パラメータ、またはその他のデータに基づく任意の式にできます。または、ルックアップ テーブルや、DLL 内に実装できるその他のメソッドから派生することもあります。
面の透過率を定義する必要はありません。DLL で定義されない場合、OpticStudio では 1.0 であると仮定されます。面の透過率がどのような値であっても、偏光光線追跡の実行時に通常考慮される、フレネル面、薄膜、バルク吸収の影響を考慮するために、OpticStudio によって光線の強度が変更されます。
OpticStudio で偏光光線追跡を実行しない場合は、DLL で定義された透過率が唯一の減衰効果になります。瞳アポダイゼーションとは異なり、UDS を使用して定義される面アポダイゼーションは、光学系の任意の場所にある任意の面に配置できます。光線位置の関数である (ほとんどの) アポダイゼーションでは、視野が異なれば、有効なアポダイゼーションも異なります。この手法は、任意の減光フィルタや、透過率が波長に依存するフィルタのモデル化に使用できます。
DLL を使用する偏光およびコーティング データ
DLL の実際の光線追跡部分 (タイプ コード 5) では、透過または反射する電界を直接定義したり、s および p 方向の複雑な反射および透過係数を定義したりできます。視野またはコーティング データは、DLL 内で使用できる任意のデータに基づくことができます。これには光線のコサイン、法線ベクトル、屈折率、またはその他のユーザー定義データ、あるいは DLL 内に実装できるその他のメソッドが含まれます。視野とコーティング データを定義する必要はありません。DLL で定義されていない場合、OpticStudio では面のデフォルトのアルゴリズムが使用されます。電界またはコーティング データの定義方法を示すソース コードの例については、サンプル DLL の US_POLARIZATION を参照してください。
エラー処理と UDS
OpticStudio が使用する内部規則では、DLL の計算結果が有意で、エラーが発生していない場合には、値ゼロを返します。そうでない場合、DLL は -1 を返します。ただし、光線追跡 (近軸または実際) の場合は例外です。光線が面を見つけられない場合は、その面番号が返されます。光線が全反射 (TIR) する場合、戻り値は面番号の負の値になります。OpticStudio では、これらのエラー コードを使用して、ユーザーやさまざまな OpticStudio 機能に有意な診断を提供することができます。
サンプル DLL
膨大な数のサンプル UDS DLL が作成され、すぐに使用できる DLL として、あるいは学習および変更可能な C ソース コードとして提供されています。DLL の最も簡単な作成方法は、必要なものに最も近い DLL を見つけ、必要に応じてその C ソース コード ファイルをコピーしたり編集することです。次の表は、使用可能な DLL とそれぞれの簡単な説明を示しています。サンプル DLL はテスト済みで、一般的には信頼できると見なされていますが、これらは「現状有姿のまま」で提供されているという点にご注意ください。
以下のすべての DLL の説明で、c は曲率、k はコーニック定数、z はサグ座標、r は動径座標、ρ は面のクリア半径または半径で正規化した動径座標、D は対数表現とした透過関数 (D = -Log10(T)、T は透過率) を示しています。必要なその他のパラメータは、対応する説明の中で指定されています。
サンプル UDS DLL


DLL 名 | 説明 |
US_ARRAYEVEN | それぞれの寸法が H x W のレンズ n x m 個からなるアレイをモデル化します。これら 4 つのパラメータはすべて指定できます。レンズの外形は矩形ですが、面の形状は「偶数次非球面」、つまり平面、球面、コーニック非球面、または動径多項式非球面のいずれかです。各方向のレンズの個数は奇数でなければなりません。 |
US_CYLAR | それぞれの高さが H のシリンダ レンズ n 個からなる垂直アレイをモデル化します。レンズは YZ 平面がシリンダ面またはコーニック非球面になります。 |
US_DGCYL | シリンダ面上の回折グレーティングをモデル化します。グレーティング線は、接平面の Y 座標ではなく、面の円弧に沿った距離が等間隔になるように並んでいます。グレーティング線はシリンダの軸に平行に走っています。 |
US_DATASURFACE | この面は、FIXED_DATA4 構造体を使用し、前の [データ] (Data) 面から値を渡す機能を使用します。最初のロード時に前の [データ] (Data) 面から追加データ値を読み出し、読み出されたデータの個数を [値の個数] (Num Values) パラメータ列に表示するとともに、これらの値を EDE にコピーします。この値は、動的には更新されません。DLL でこれらの値へアクセスする方法を示すことのみを目的としています。 |
US_EAPERIODIC | この面は、[偶数次非球面] (Even Asphere) に似ていますが、サグの正弦関数的な変化を可能にする項が追加されています。このような正弦関数的変化は、面のイレギュラリティをモデル化するときに役立ちます。面のサグを表す完全な式は、次のとおりです。 ここで、パラメータ c、k、 |
US_FILT1 |
この面は、次の形のアポダイゼーション関数を定義します。 |
US_FILT2 | この面は、正規化動径座標が 0 から p1 までは光学密度が Dmax、p1 からは線形に減少して p2 で D = 0 になり、以降は D = 0 となるアポダイゼーション関数を定義します。 |
US_FILT3 | この面は、次の形のアポダイゼーション関数を定義します。 |
US_FILT4 |
この面には、以下で定義されるアポダイゼーション関数が設定されます。 ここで、r は動径座標、R はアパチャー半径、 |
US_FILT5 |
この面には、以下で定義されるアポダイゼーション関数が設定されます。 ここで、na は入射光線の開口数、NA はユーザー定義パラメータ、 |
US_FILT6 |
この面には、以下で定義されるアポダイゼーション関数が設定されます。 ここで、 |
US_FILT7 | この面は、面上の動径座標の関数、または面で屈折した光線がローカル Z 軸と成す角の関数として追加データ エディタに指定された値を線形補間することで、面の透過率をアポダイズします。 |
US_FILT8 | この面は、ソフトエッジの矩形アパチャーをモデル化します。MaxX および MaxY パラメータは、矩形アパチャーの X および Y 方向半幅です。透過率は、アパチャー境界からの距離 DelX および DelY で定義された距離の 2 倍にわたって、1 から 0 まで滑らかに変化します。この関数により、矩形アパチャーの透過を最適化するときに便利な「ソフトエッジ」アパチャーを作成できます。 |
US_GCYL | 屈折率分布型の媒質によるシリンダ面をモデル化します。GRIN 媒質は、一定屈折率の同心のシリンダ シェルと、曲率中心を中心とする多項式 GRIN プロファイルを持ちます。この DLL はファイバ軸と垂直な方向にファイバを (その側面を通して) 横切る光をモデル化することを目的に作成されました。 |
US_GRATE | 接平面上の Y 方向距離が等間隔となるように並び、X 軸に平行な方向に走るグレーティング線を備えた [標準] (Standard) 面をモデル化します。これは、Zemax の [回折グレーティング] (Diffraction Grating) 面のクローンです。光路長の計測には、さまざまな方法を使用できますが、通常はどれを使用しても光線追跡で問題となることはありません。Zemax UDS DLL で回折面をモデル化する方法を示すことを目的とした DLL です。 |
US_GRIN1 | 2 次 GRIN 媒質をモデル化します。Zemax の [分布 1] (Gradient 1) 面のクローンです。Zemax UDS DLL で GRIN 面をモデル化する方法を示すことを目的とした DLL です。 |
US_HOLOGRAM_KOGELNIK | この DLL は、体積ブラッグ グレーティングとも呼ばれる体積ホログラムをモデル化するもので、次の文献に基づいています : Kogelnik, H. (1969) Coupled Wave Theory for Thick Hologram GratingsBell System Technical Journal, 48, 2909-2947この構成光学系は、面タイプのホログラム 1 およびホログラム 2 に似た方法で定義されます。ホログラムの平均屈折率、変調屈折率、厚みなど、より多くのパラメータを使用して回折効率を計算します。収縮や屈折率シフトなどの公差パラメータは、製造性解析に含まれます。この DLL の使用法の詳細については、ナレッジ ベース記事「Simulating diffraction efficiency of a volume holographic grating using Kogelnik’s method」を参照してください。 |
US_IGRIN | 分散を伴う GRIN の例です。 |
US_ITERA |
この DLL は、Zemax の [標準] (Standard) 面のクローンですが、閉じた式ではなく、単純な反復計算によって光線と面の交差点を見つける点が異なります。この例の要点は、サグの定義式のみがわかっている場合に、光線と面の交差点を求める方法を示すことにあります。ほとんどの多項式非球面では、光線と面の交差点を求める閉じた式を決定できないため、この種の反復計算が必要になります。 注 : サンプルの DLL で採用している反復は極端に簡素なので、入射角がきわめて大きい光線を扱うことができない場合があります。広角光学系でこの DLL を使用すると、エラー メッセージ [エラー2] (Error 2) で失敗することが考えられます。このような場合は、US_STAND.DLL に用意されているような堅牢なアルゴリズムを使用する必要があります。 |
US_LUNE |
ルネベルグ レンズをモデル化します。このレンズは、材料の屈折率が曲率中心からの距離の関数として線形に変化する、分布屈折率 (次式参照) の球状レンズです。 ![]() ここで、n は屈折率、r は球状レンズの曲率中心までの距離、R は球状レンズの曲率半径です。 |
US_MEMS |
デジタル ミラー デバイス (DMD) などの微小電気機械システム (MEMS) をモデル化します。この MEMS は、微小な矩形ミラーの 2 次元アレイで構成されます。任意の列を構成する各ミラーに軸を中心とした回転を適用し、3 種類のいずれかの角度で傾斜した状態にすることができます。また、必要に応じて個々のミラーに回転を適用し、MEMS で可能な任意の状態をモデル化できます。これはあくまでも幾何学的なモデルですが、個々のミラーを任意に設定した場合に、このようなデバイスによって光線がどこに反射されるかを実効的にモデル化できます。モデルのパラメータは次のとおりです。 Nx: X 方向のミラー数 NY: Y 方向のミラー数 Wx: レンズ ユニットで表した X 方向の全幅 Wy: レンズ ユニットで表した Y 方向の全幅 パラメータ 5、6、および 7 (角度 0、角度 1、および角度 2): 状態 0、1、2 におけるミラーの角度 パラメータ 8 (回転角): 傾斜した状態にするためにミラーに適用する、Z 軸を中心とした回転角 パラメータ 13 (P フラグ): ミラーのアドレス指定方法。0: 行アドレス、1: 列アドレス、2: 個々のミラーのアドレス パラメータ 14 (第 1 ~ 第 15 の行、列、またはピクセル): 第1 ~ 第15 の行、列、ミラーの状態 パラメータ 15 (第 1 ~ 第 15 の行、列、またはピクセル): 第16 ~ 第30 の行、列、ミラーの状態 パラメータ 12+N: 第 1+15*(N-2) ~ 第 15*(N-1) の行、列、またはミラーの状態 回転角は、実効的にミラーの傾斜面をローカル Z 軸を中心に回転させますが、初期の傾斜面はローカル X 軸を中心に回転します。回転角は、+Y 軸から時計方向に測定します。ミラー角は、X 軸を中心に回転させた傾斜方向 (Z 軸) を中心に、さらに傾斜させます。 これらのパラメータを使用し、3 進数によって行、列、ミラーの状態を定義します。MEMS のあらゆる論理状態に対応する値を決定するには、次のような数表を作成します。この表は 3 つの行、列、またはミラーの状態を表します。 パラメータの値は、以下の式で求められます。 M1 は第 1 行/列/ミラーの論理状態 (0、1、2)、M2 は第 2 行/列/ミラーの論理状態と、以下同様に続きます。パラメータごとに最大で 15 の行、列、ミラーの値を定義できます。 |
US_MULTI_ZONE_ ASPHERE |
この面は、一連の環状偶数次非球面領域をモデル化します。各領域には、曲率半径、コーニック定数、12 次までの偶数次非球面係数、領域の最大半径アパチャーが設定されています。最大 20 個の同心領域に対応しています。各領域は、面が領域境界をはさんで連続になるようにシフトされています。 |
US_OFFST | オフセット面。この面は、面内に隠される伝搬距離の追加分をシミュレートします。伝搬距離は、波長ごとに独立しています。これによって、デジタル プロジェクタのように色チャネルごとに焦点が異なる光学系をモデル化できます。 |
US_OGIVE |
オジーブ面形状。オジーブ面は、面の回転軸が ro だけオフセットしている点を除き、[標準] (Standard) 面と同じです。面のサグは、以下の式で求められます。 ここで、 |
US_POLARIZATION | この2つの DLL は、電界またはコーティングの定義方法を示すものです。違いは、US_POLARIZATION がデータ構造 FIXED_DATA2 に基づいており、電界データがメンバー double dbreserved[] によって交換されることです。また、US_POLARIZATION2 はデータ構造 FIXED_DATA5 に基づいており、電界データはメンバー double Exr、Exi、Eyr、Eyi、Ezr、Ezi によって交換されます。 |
US_POLARIZATION2 | |
US_STAND | この DLL は、Zemax の [標準] (Standard) 面タイプのクローンです。これは、最も単純な DLL 面であり、UDS DLL の学習はこの DLL から始めることを推奨します。 |
US_STAND2 | この DLL は、UserDefinedSurface2 型の関数および構造体定義を用いた、Zemax の [標準] (Standard) 面タイプのクローンです。 |
US_ZERNIKE+MSF |
下記に示すリップル項が追加されたゼルニケ標準サグ面をモデル化します。面のサグの偶数次非球面の部分は、次のように定義されます。 ![]() a2、a4 ... a16 の項は、長さの単位を持ち、次数が -1、-3、… -15 です。A 項の単位は長さです。ω0 項の単位は長さの逆数です。φ0 は角度の単位で入力しますが、上式を評価するためにラジアンに変換されます。 この DLL の使用法の詳細については、ナレッジ ベースの記事「Constructing mid-spatial frequency tooling errors for evaluation and tolerancing」を参照してください。 |
Lumerical-metalens-xxxxxx | この DLL はメタレンズのコンポーネントをモデル化します。この DLL を使用するには、最初に Lumerical でシミュレーションを行い、メタレンズ データを生成してから、データをこの DLL に読み込みます。入力するのは、.pmap と .aph のファイル拡張子を持つペアのファイルか、 .h5 の拡張子の 1 つのファイルとなります。入力ファイルは \Document\Zemax\DLL\Surfaces\ フォルダに配置する必要があります。入力ファイルをロードするには、ユーザー定義面のコメントにファイル名を入力します。入力がファイルのペア (.pmap と .aph) である場合は、[コメント] 列にファイル名を入力するだけです。メタレンズのワークフローについて詳しくは、アプリケーション ギャラリーの記事「Large-Scale Metalens – Ray Propagation」 を参照してください。 |
r/c/m: | 3 | 2 | 1 | パラメータ |
エラー コード 0 | エラー コード 0 | エラー コード 0 | エラー コード 0 | |
エラー コード 0 | エラー コード 0 | 1 | 1 | |
エラー コード 0 | エラー コード 0 | 2 | 2 | |
エラー コード 0 | 1 | エラー コード 0 | 3 | |
エラー コード 0 | 1 | 1 | 4 | |
エラー コード 0 | 1 | 2 | 5 | |
エラー コード 0 | 2 | エラー コード 0 | 6 | |
... |
コンパイルの例
ユーザー定義コードの DLL をコンパイルするには、ナレッジベースの記事「How to compile a User-Defined DLL」を参照してください。{Zemax}\DLL\Surfaces\Solution\AllProjects\ には、Visual Studio C++ を使用したプロジェクト例も用意されています。
次へ :