Projection : モディファイヤ

Projection - superclass: modifier; super-superclass:MAXWrapper -31:0 - classID: #(376188956, 435752009)

投影モディファイヤを使用すると、マッピング座標、頂点カラー、およびマテリアル ID などのデータを、あるジオメトリ オブジェクトから別のジオメトリ オブジェクトに投影できます。通常、ノーマル マッピングと併用されますが、使用できるアプリケーションは非常に多くなります。

コンストラクタ

Projection...   

プロパティ

[選択]ロールアウト

<Projection>.ignoreBackfacing BooleanClass default: false -- boolean; Ignore_Backfacing   

[背面を無視]チェックボックスの状態を取得/設定します。

<Projection>.smoothGroup Integer default: 1 -- integer; Smoothing_Group

[スムージング グループを選択]値を取得/設定します。これは選択に使用するスムージング グループ番号 (1 ~ 32) です。

<Projection>.materialID Integer default: 1 -- integer; Material_ID

[マテリアル ID を選択]値を取得/設定します。これは選択に使用するマテリアル ID です。

<Projection>.clearSelection BooleanClass default: true-- boolean; Clear_Selection

[選択をクリア]チェックボックスの状態を取得/設定します。これをチェックすると、以前の選択がクリアされます。

関連するメソッド:

関連するメソッドについては、「Projection モディファイヤ - [選択]ロールアウト メソッド」を参照してください。

[ソフト選択]ロールアウト

<Projection>.useSoftSelection BooleanClass default: false-- boolean; Use_Soft_Selection

[ソフト選択を使用]チェックボックスの状態を取得/設定します。

<Projection>.softselUseEdgeDistance BooleanClass default: false-- boolean; Use_Edge_Distance

[エッジの距離]チェックボックスの状態を取得/設定します。

<Projection>.softselEdgeDist Integer default: 1 -- integer; Edge_Distance

[エッジの距離]値を整数で取得/設定します。

<Projection>.softselAffectBackfacing BooleanClass default: true-- boolean; Affect_Backfacing

[背面に影響]チェックボックスの状態を取得/設定します。

<Projection>.softselFalloff Float default:20.0 -- world units; Falloff

ソフト選択の[フォールオフ]値を取得/設定します。

<Projection>.softselPinch Floatdefault: 0.0 -- float; Pinch

ソフト選択の[ピンチ]値を取得/設定します。

<Projection>.softselBubble Float default: 0.0 -- float; Bubble

ソフト選択の[バブル]値を取得/設定します。

[参照されたジオメトリ]ロールアウト

<Projection>.geomNames ArrayParameter default: #() -- string array; Geometry_Selection_Names; Read-only

ジオメトリ選択名を含みます。読み込み専用。

<Projection>.geomNodeIDs ArrayParameter default: #() -- int array; Node_ID; Read-only

ジオメトリ選択 ID を含みます。読み込み専用。

<Projection>.geomNodes ArrayParameter default: #() -- node array; Geometry_Nodes; Read-only

ジオメトリ選択ノードを含みます。読み込み専用。

<Projection>.IDs ArrayParameter default: #() -- int array; SO_IDs; Read-only

サブオブジェクト ID を含みます。読み込み専用。

<Projection>.mapProportions ArrayParameter default: #() -- float array; Map_Proportions; Read-only

マップ プロパティの配列を含みます。読み込み専用。

<Projection>.projectionTypes ArrayParameter default: #() -- max object array; Projection_Types; Read-only

投影タイプの配列を含みます。読み込み専用。

<Projection>.selLevels ArrayParameter default: #() -- int array; Selection_Levels; Read-only

選択レベルの配列を含みます。読み込み専用。

<Projection>.MapChannel Integer default: 1 -- integer; Map_Channel
<Projection>.geomNodeVisible ArrayParameter default: #() -- int array; Node_Visible

可視性フラグの配列を含みます。

3ds Max 8 以降 で使用可能です。

<Projection>.displayToggleEnable BooleanClass default: false -- boolean

コントロールの[表示切り替え]領域の[使用可能]チェックボックスの状態を制御します。

3ds Max 8 以降 で使用可能です。

<Projection>.displayToggleMode Integer default: 1 -- integer

3ds Max 8 以降 で使用可能です。

[ケージ]ロールアウト

<Projection>.displayCage BooleanClass default: true -- boolean; Display_Cage

[ケージ]チェックボックスの状態を取得/設定します。true の場合、ケージが表示されます。

<Projection>.displayCageShaded BooleanClass default: false -- boolean; Display_Cage_Shaded

[シェーディング]チェックボックスの状態を取得/設定します。true の場合、ケージがシェーディングされます。

<Projection>.displayCageOffset BooleanClass default: false -- boolean; Display_Cage_Offset

[ポイント - ポイント]チェックボックスの状態を取得/設定します。true の場合、オフセットに沿った投影ベクトルが表示されます。

<Projection>.pushValue Float default: 0.0 -- world units;Push_Value

プッシュの[量]値を取得/設定します。

<Projection>.pushPercent Float default: 0.0 -- float; Push_Percentage

プッシュの[パーセント]値を取得/設定します。

<Projection>.autoWrapTolerance Float default: 0.0 -- world units; Auto_Wrap_Tolerance

自動ラップの[許容度]値を取得/設定します。

<Projection>.autoWrapAlwaysUpdate BooleanClass default:false-- boolean; Auto_Wrap_Always_Update

自動ラップの[常に更新]チェックボックスの状態を取得/設定します。

関連するメソッド:

関連するメソッドについては、「Projection モディファイヤ - [ケージ]ロールアウト メソッド」を参照してください。

[選択チェック]ロールアウト

<Projection>.selectionCheckType Integer default: 2 --integer; Selection_Check_Type

[チェック]ラジオ ボタンの選択を取得/設定します。有効な値は次のとおりです。

0 - マテリアル ID

1 - ジオメトリ

2 - 両方 (既定値)

<Projection>.selectionCheckSelFaces BooleanClass default: true -- boolean; Show_Selection_Check_Faces

[選択された面]チェックボックスの状態を取得/設定します。true の場合、選択された面だけがチェックされます。

関連するメソッド:

関連するメソッドについては、「Projection モディファイヤ - [選択チェック]ロールアウト メソッド」を参照してください。

[投影]ロールアウト

公開されているプロパティはありません。

関連するメソッドについては、「Projection モディファイヤ - [投影]ロールアウト メソッド」を参照してください。

投影インタフェース:

Interface:projectionModOps
注:

projectionModOps interface は、Projection モディファイヤ自体によって公開される Mixin インタフェースです。モディファイヤのすべてのインタフェースを対象としてメソッド名が検索され、以下に示すすべてのメソッドが Projection モディファイヤ自体によって公開されたメソッドとして表示されます。

<Projection>.shrinkSelection()

および

<Projection>.projectionModOps.shrinkSelection()

は同等です。

    --assuming a cylinder has been applied a projection modifier:
    theProjMod = $Cylinder01.modifiers[#Projection]--get the modifier
    theProjMod.projectionModOps.shrinkSelection()--shrink selection
    theProjMod.growSelection()--grow selection -also works

メソッド:

[選択] (Selection)ロールアウト

<void>shrinkSelection()

選択を縮小させます。[選択]ロールアウトの[シュリンク]ボタンを押した場合に相当します。

<void>growSelection()

選択を拡大させます。[選択]ロールアウトの[グロー]ボタンを押した場合に相当します。

<void>selectBySG <integer>sg

スムージング グループで選択します。[選択]ロールアウトの[スムージング グループを選択]ボタンを押した場合に相当します。

<void>selectByMtlID <integer>id

マテリアル ID で選択します[選択]ロールアウトの[マテリアル ID を選択]ボタンを押した場合に相当します。

[ジオメトリ選択]ロールアウト

<boolean>isValidObject <node>node

ノードが有効な投影オブジェクトの場合は true を返します。

<boolean>addObjectNode <node>node

指定したノードを[ジオメトリ選択]リストに追加します。

<void>deleteAll()

すべてのオブジェクトを削除します。[すべて削除]アイコンを押した場合に相当します。

<integer>numObjects()

[ジオメトリ選択]リスト内のオブジェクトの数を返します。

<node>getObjectNode <index>objIndex

[ジオメトリ選択]リストにある、インデックスで指定されたオブジェクトに該当するノードを返します。

<string>getObjectName <index>objIndex

[ジオメトリ選択]リストにある、インデックスで指定されたオブジェクトの名前を返します。

<enum>getObjectSelLevel <index>objIndex
getObjectSelLevel enums:{#object|#vertex|#face|#element)

[ジオメトリ選択]リストにある、インデックスで指定されたオブジェクトの選択レベルを返します。

<boolean>getObjectSelFaces <node>node <index>objIndex <&bitArray>faces
faces is Out parameter

参照 bitArray に、指定されたノードとインデックスで指定されたオブジェクトの選択された面を返します。成功した場合、メソッドそのものからは true、失敗した場合、false が返されます。

<integer>getObjectMtlIds <node>node <index>objIndex <&integer array>mtlIDs
mtlIDs is Out parameter

指定されたノードとインデックスで指定されたオブジェクトのマテリアル ID を、整数の参照配列に返します。

<void>deleteObjectNode <index>objIndex

インデックスで指定されたオブジェクトを、[ジオメトリ選択]リストから削除します。

<integer>numGeomSels()

[ジオメトリ選択]リスト内のオブジェクトの数を返します。

<string>getGeomSelName <index>selIndex

インデックスで指定された選択の名前を返します。

<enum>getGeomSelLevel <index>selIndex
getGeomSelLevel enums: {#object|#vertex|#face|#element)

インデックスで指定された選択の選択レベルを返します。

<integer>numGeomSelNodes <index>selIndex

指定された選択インデックスを持つジオメトリ選択ノードの数を返します。

<node>getGeomSelNode <index>selIndex <index>nodeIndex

インデックスで指定されたノードとインデックスで指定された選択に対応するシーン ノードを返します。

<boolean>getGeomSelFaces <node>node <index>selIndex <&bitArray>faces
faces is Out parameter

参照 bitArray 内の、指定のシーン ノードとインデックスで指定された選択の面選択を返します。成功した場合、メソッドそのものからは true、失敗した場合、false が返されます。

<integer>getGeomSelMtlIds <node>node <index>selIndex <&integer array>mtlIDs
mtlIDs is Out parameter

整数の参照配列内の、指定のシーン ノードとインデックスで指定された選択のマテリアル ID を返します。

<float>getGeomSelMapProportion <index>selIndex

インデックスで指定されたジオメトリのマップ プロパティ値を返します

<void>SetGeomSelMapProportion <index>selIndex <float>proportion

インデックスで指定されたジオメトリ選択のマップ プロパティ値を、指定された浮動小数点値に設定します。

<void>deleteGeomSel <index>selIndex

インデックスで指定されたジオメトリ選択を削除します。

<void>deleteGeomSelNode <index>selIndex <index>nodeIndex

インデックスで指定されたジオメトリ選択から、インデックスで指定されたノードを削除します。

<float>getGeomSelFaceArea <node>node <index>selIndex

指定のノードの、インデックスで指定されたジオメトリ選択の面領域を返します。

<void>setGeomSelNodesVisibility <boolean>visible

現在の[ジオメトリ選択]ノードの可視性を、指定のブール値に設定します。[ジオメトリ選択]リストの[可視性]アイコンを押した場合に相当します。

<boolean>getGeomSelNodesVisibility()

[ケージ]ロールアウト

<void>autowrapCage()

ケージの自動ラップを実行します。コントロールの[自動ラップ]領域の[更新]ボタンを押した場合に相当します。

<void>resetCage()

ケージをリセットします。コントロールの[自動ラップ]領域の[更新]ボタンを押した場合に相当します。

<void>pushCage <float>amount

指定の量でケージをプッシュします。コントロールの[プッシュ]領域の[量]値を変更した場合に相当します。

<boolean>importCage <node>importNode

指定されたノードからケージを読み込みます。3ds Max 2008 以降で使用できます

<boolean>exportCage <string>exportNodeName

指定された名前を持った新しいノードとして、ケージを書き出します。

3ds Max 2008 以降 で使用可能です。

[選択チェック]ロールアウト

<integer>checkDuplicateMatIDs <node>node <&bitArray>dupFaces
dupFaces is Out parameter

重複したマテリアル ID をチェックし、違反した面を含む参照引数内の bitArray を返します。

メソッドそのものからは、違反した面の数が整数で返されます。

<integer>checkDuplicateSels <node>node <&bitArray>dupFaces
dupFaces is Out parameter

重複した選択をチェックし、違反した面を含む参照引数内の bitArray を返します。

メソッドそのものからは、違反した面の数が整数で返されます。

[投影]ロールアウト

<integer>numProjectionTypes()

現在[投影]リストにある投影の数を返します。

<void>removeProjectionType <index>ptIndex

[投影]リストから、インデックスで指定された投影タイプを削除します。

<void>projectProjectionType <index>ptIndex

[投影]リストから、インデックスで指定された投影タイプを使用している投影を実行します。[投影]ボタンを押した場合と同様です。

<void>projectAll()

すべてにプロジェクトします。 [すべてにプロジェクト]ボタンを押した場合に相当します。

<integer>numRegisteredProjectionTypes()

使用可能な投影タイプの数を返します。現在は、1 つのタイプしか実装されません。

<maxObject>getProjectionType <index>ptIndex

インデックスで指定された投影オブジェクトを返します。現在は、Project_Mapping: ReferenceTarget というタイプ 1 つしか実装されません。

<void>addRegisteredProjectionType <index>rptIndex

インデックスで指定されたタイプの新しい投影を、[投影]リストに追加します。

<void>getRegisteredProjectionTypeClassID <index>rptIndex <&integerarray>classID
classID is Out parameter

インデックスで指定された投影タイプの classID を、参照変数へ返します。

<void>showAlignment()

[位置合わせを表示]ボタンを押した場合に相当します。

<void>clearAlignment()

[クリア]ボタンを押した場合に相当します。

関連するメソッド:

次のスクリプト関数を使用すると、プロジェクト モディファイヤに簡単にアクセスできます。これらの関数は、ファイル ProjectionMod.ms に実装されています。

GetPModObjectNames <projectionMod>modifier

指定された投影モディファイヤのジオメトリ選択名の配列を返します。

FindPMod <node>source

指定されたノードのスタックから、最上位の投影モディファイヤを返します。適用される投影モディファイヤがない場合、undefined が返されます。

AddPModObjects <array>node_list <boolean>createNew <boolean>deleteAll [objList :<array>]

投影モディファイヤ オブジェクトを、配列内のノードに追加します。

createNew が true の場合、新しいモディファイヤが作成されます。それ以外の場合は、既存のモディファイヤが使用されます。

deleteOld が true の場合は、以前のオブジェクトがすべて、モディファイヤのジオメトリ選択から削除されます。

オプションの objList : パラメータが指定されている場合、ターゲット オブジェクトがリストに追加されます。それ以外の場合は、[選択] (Pick)ダイアログ ボックスが表示され、手動でターゲット オブジェクトを選択します。

node_list に対応する投影モディファイヤの配列を返します。