このクラスのインスタンスには、完全なサーフェス近似設定が含まれます。この設定は、NURBSSet 値によって、または直接既存の NURBS シーン ノードで記述される NURBS オブジェクトに対する近似の設定に使用できます。既存のシーン ノードでは setViewApproximation()
および setRenderApproximation()
関数を使用します。また、NURBSSet 値では .viewApproximation
および .renderApproximation
プロパティを使用します。
コンストラクタ
NURBSSurfaceApproximation [<property>:<val>]...
オブジェクトのプロパティはいずれもコンストラクタのオプションのキーワード引数で設定できます。
<nurbsset>.viewApproximation <nurbsset>. renderApproximation
プロパティ
<nurbssurfaceapproximation>.config : #isoOnly, #isoAndMesh, #meshOnly
このプロパティは、インタラクティブまたはスキャンライン レンダリングでの表示内容を決定します。
#isoOnly
が指定されている場合、Iso カーブだけが表示されます。Iso (パラメトリック) カーブは、コンタ ラインと同様です。カーブは、NURBS サーフェスが一定の U 値および V 値またはそのいずれかを保持している位置を示します。Iso カーブの表示は、ワイヤ メッシュ表示よりもすっきりしていて視覚化しやすくなっています。
#isoAndMesh
が指定されている場合は、Iso カーブとメッシュが表示されます。これを選択すると、ワイヤフレーム ビューポートにはサーフェスの面分割線で表示され、シェーディング ビューポートにはシェーディングされたサーフェスが表示されます。
#meshOnly
が指定されている場合は、メッシュだけが表示されます。選択されている場合、ワイヤフレーム ビューポートではサーフェスがワイヤ メッシュとして表示され、シェードされたビューポートではシェードされたサーフェスが表示されます。ワイヤフレーム ビューポートでは、このオプションを指定すると、ビューポートで使用されるカーブ近似が表示できます。
<nurbssurfaceapproximation>.isoULines : integer
ISO カーブ表示で使用されます。これは、U に追加された内部の Iso カーブの数です (外側のエッジに沿ったラインは常に存在します)。
<nurbssurfaceapproximation>.isoVLines : integer
ISO カーブ表示で使用されます。これは、V に追加された内部の Iso カーブの数です (外側のエッジに沿ったラインは常に存在します)。
<nurbssurfaceapproximation>.meshUSteps : integer
これは、パラメトリック面分割で使用されます。これは、U における面分割数です。そのサーフェスのノット スパンの分割数です。
<nurbssurfaceapproximation>.meshVSteps : integer
これは、パラメトリック面分割で使用されます。これは、V における面分割数です。そのサーフェスのノット スパンの分割数です。
<nurbssurfaceapproximation>.meshApproxType :#parametric, #spatial, #curvature, #regular, #spatialAndCurvature
このプロパティは、サーフェスの面分割のタイプを制御します。
#parametric
が指定されている場合は、パラメトリック面分割が実行されます。これは固定数の meshUSteps
と meshVSteps
による面分割に対応します。meshUSteps
x meshVSteps
個の四辺形があり、それぞれが 2 個の三角形に分割されます。
#spatial
が指定されている場合は、間隔面分割が実行されます。これは、spacialEdge
パラメータを使用します。このパラメータは、面分割のサイズが spacialEdge
の長さであることを指定します。ビュー従属面分割では、spacialEdge
がピクセル単位で指定されます。
#curvature
が指定されている場合は、ビュー従属面分割が実行されます。この場合、curvatureAngle
および curvatureDistance
のプロパティ値が使用されます。
#regular
が指定されている場合は、サーフェスの一定かつ通常面分割が実行されます。
#spatialAndCurvature
が指定されている場合は、間隔および曲率メソッドを結合した面分割メソッドが使用されます。この場合、spacialEdge
、curvatureAngle
、および curvatureDistance
のプロパティ値が使用されます。
<nurbssurfaceapproximation>.spacialEdge : float
これは、間隔(#spatial
)面分割で使用されるエッジの長さです。ビュー従属面分割の場合はピクセル単位で指定されます。それ以外の場合は、バウンディング ボックスの対角線の長さのパーセントで指定します。
<nurbssurfaceapproximation>.curvatureAngle : float
これは、曲率従属面分割(#curvature
)で使用されます。0.0 が指定された場合は無視されます。それ以外の値が指定されている場合、2 つの近接した面法線の間の角度は指定されている角度を超えることはありません。この値はラジアンで指定されます。
<nurbssurfaceapproximation>.curvatureDistance : float
これは、曲率従属面分割(#curvature
)で使用されます。0.0 が指定された場合は無視されます。メッシュ上の頂点と数学的なサーフェスの間の距離は指定されている距離を超えることはできません。これは、オブジェクト スペースにある個々のサーフェスのバウンディング ボックス対角線のパーセントとして定義されます。たとえば、これを 1.0 に設定すると、面分割生成時に許容されるエラーは、サーフェスのバウンディング ボックスの対角距離の 1% になります。これは、バウンディング ボックスの対角距離の 1/100 (1%) です。したがって、オブジェクトがスケールされる場合も、面分割は変わりません。さらに、大きいサーフェスと小さいサーフェスを持つオブジェクトがある場合は、小さい方のサーフェスの方がより精巧に面分割されます。これは、それ自体のバウンディング ボックスが使用されるためです。これにより、小さいサーフェスがたとえば三角形 1 つだけになることはありません。
<nurbssurfaceapproximation>.viewDependent : boolean
これがビュー従属面分割であるかどうかを指定します。これがビュー従属面分割であるかどうかを指定します。true
を指定した場合、オブジェクトがカメラから離れるに従って面分割が精巧ではなくなります。false
を指定した場合は、カメラからの距離に対応して面分割が変更されることはありません。
<nurbssurfaceapproximation>.merge : float
エッジが結合されているか、またはほぼ結合されているようなサーフェス サブオブジェクトの面分割を制御します。[選択メッシュ](Mesh Select)などのモディファイヤへの入力にメッシュが必要な場合、また NURBS サーフェスを、レンダリングを実行するために面分割するとき、既定値では、結合サーフェスの面分割が調整され、エッジに沿った面の数に基づいて面分割を相互に一致させます。[合成] (Merge)パラメータは、この実行方法を制御します。[合成] (Merge)が 0 の場合、結合面は変わりません。[合成] (Merge)の値を増加させると、エッジを一致させる計算のための距離が増加し、それらをレンダリングするときのサーフェス間にはギャップは生じません。既定値は 0.0 です。
3ds Max 8 以降で使用可能です。
<nurbssurfaceapproximation>.subdivStyle : name
[拡張サーフェス近似](Advanced Surface Approx.)ダイアログ ボックスの[サブディビジョンのスタイル](Subdivision Style)を取得/設定します。有効な値は次のとおりです。#tree, #grid, #delaunay
3ds Max 8 以降 で使用可能です。
<nurbssurfaceapproximation>.minLevels : float
[拡張サーフェス近似](Advanced Surface Approx.)ダイアログ ボックスのサブディビジョン レベルの最小数を取得/設定します。
3ds Max 8 以降 で使用可能です。
<nurbssurfaceapproximation>.maxLevels : float
[拡張サーフェス近似](Advanced Surface Approx.)ダイアログ ボックスのサブディビジョン レベルの最大数を取得/設定します。
3ds Max 8 以降 で使用可能です。
<nurbssurfaceapproximation>.maxTris : integer
[拡張サーフェス近似](Advanced Surface Approx.)ダイアログ ボックスの[三角形の数の最大値](Maximum Number of Triangles)を取得/設定します。
3ds Max 8 以降 で使用可能です。