インタフェース: LayerProperties

LayerProperties は、特定のレイヤ プロパティへのアクセスを提供する MixinInterface です。

このインタフェースは、LayerManager コア インタフェースおよび INodeLayerProperties ノード インタフェースの一部のメソッドによって返されます。

   

Interface: LayerProperties

プロパティ:

<LayerProperties>.on : boolean : Read|Write 	 

レイヤの[有効](Enabled)状態を取得/設定します。

   

<LayerProperties>.lock : boolean : Read|Write   

レイヤの[ロック](Locked)状態を取得/設定します。

   

<LayerProperties>.current : boolean : Read|Write 

[現在](Current)のレイヤかどうかを取得/設定します。

注:

true にのみ設定可能です。

   

<LayerProperties>.wireColor : color by value : Read|Write 

レイヤの[ワイヤフレーム カラー](Wireframe Color)を取得/設定します。

   

<LayerProperties>.isGIExcluded : boolean : Read|Write 

レイヤの[ラジオシティ処理からの除外](Exclude from Radiosity state)状態を取得/設定します。

   

<LayerProperties>.name : string : Read 

レイヤの名前を取得します。レイヤの名前を設定する場合は、このページでこの後説明する <LayerProperties>. setName() メソッドを使用します。MAXScript は新しい名前を確認する必要がある(レイヤ名は一意でなくてはなりません)ので、必ずこのメソッドを使用してください。

   

<LayerProperties>.renderable : bool : Read|Write 

レイヤ上のオブジェクトがレンダリング可能かどうかを取得/設定します。

   

<LayerProperties>.inheritVisibility : bool : Read|Write 

レイヤ上のオブジェクトが親から可視性を継承するかどうかを取得/設定します。

   

<LayerProperties>.primaryVisibility : bool : Read|Write 

レイヤ上のオブジェクトがカメラに対して可視かどうかを取得/設定します。

   

<LayerProperties>.secondaryVisibility : bool : Read|Write 

レイヤ上のオブジェクトが反射であるかどうかを取得/設定します。

   

<LayerProperties>.receiveshadows : bool : Read|Write 

レイヤ上のオブジェクトがシャドウを他から受けるかどうかを取得/設定します。

   

<LayerProperties>.castShadows : bool : Read|Write 

レイヤ上のオブジェクトに影を付けるかどうかを取得/設定します。

   

<LayerProperties>.applyAtmospherics : bool : Read|Write 

レイヤ上のオブジェクトを環境効果によって隠せるかどうかを取得/設定します。

   

<LayerProperties>.renderOccluded : bool : Read|Write 

レイヤ上のオブジェクトが隠れているときに RPF レイヤに対してレンダリングするかどうかを取得/設定します。

   

<LayerProperties>.ishidden : bool : Read|Write 

レイヤ上のオブジェクトが非表示であるかどうかを取得/設定します。

   

<LayerProperties>.isfrozen : bool : Read|Write 

レイヤ上のオブジェクトがフリーズしているかどうかを取得/設定します。

   

<LayerProperties>.boxmode : bool : Read|Write 

レイヤ上のオブジェクトがボックス モードで表示されるかどうかを取得/設定します。

   

<LayerProperties>.backfacecull : bool : Read|Write 

レイヤ上のオブジェクトが背面非表示で表示されるかどうかを取得/設定します。

   

<LayerProperties>.alledges : bool : Read|Write 

レイヤ上のオブジェクトがすべてのエッジを表示した状態で表示されるかどうかを取得/設定します。

   

<LayerProperties>.vertexTicks : bool : Read|Write 

レイヤ上のオブジェクトの頂点を数字で表示するかどうかを取得/設定します。

   

<LayerProperties>.showTrajectory : bool : Read|Write 

レイヤ上のオブジェクトが軌道を表示するかどうかを取得/設定します。

   

<LayerProperties>.xray : bool : Read|Write 

レイヤ上のオブジェクトがシースルーで表示されるかどうかを取得/設定します。

   

<LayerProperties>.ignoreExtents : bool : Read|Write 

レイヤ上のオブジェクトの拡張を無視するかどうかを取得/設定します。

   

<LayerProperties>.showFrozenInGray : bool : Read|Write 

レイヤ上のオブジェクトがフリーズ時にグレー表示されるかどうかを取得/設定します。

   

<LayerProperties>.showVertexColors : bool : Read|Write 

レイヤ上のオブジェクトが頂点カラーと共に表示されるかどうかを取得/設定します。

   

<LayerProperties>.vertexColorsShaded : bool : Read|Write 

レイヤ上のオブジェクトがシェーディングされた頂点カラーと共に表示されるかどうかを取得/設定します。

   

<LayerProperties>.visibility : float : Read|Write 

レイヤ上のオブジェクトが表示されるかどうかを取得/設定します。

   

<LayerProperties>.imageMotionBlurMultiplier : float : Read|Write 

レイヤ上のオブジェクトのイメージ モーション ブラー マルチプライヤを取得/設定します。

   

<LayerProperties>.motionBlurOn : bool : Read|Write 

レイヤ上のオブジェクトをモーション ブラーによってレンダリングするかどうかを取得/設定します。

   

<LayerProperties>.motionblur : enum : Read|Write 

motionblur enums: {#none | #object | #image} 

レイヤのオブジェクトをレンダリングするときに使用するモーション ブラーを取得/設定します。

   

<LayerProperties>.display : enum : Read|Write 

display enums: {#viewport | #boundingbox | #wireframe | #shaded} 

レイヤ上のすべてのオブジェクトの表示モードを取得/設定します。

   

<LayerProperties>.INodeGIProperties : Interface : Read 

INodeGIProperties プロパティは、レイヤの GI プロパティにアクセスできるようにする INodeGIProperties FPS インタフェースを返します。「インタフェース: INodeGIProperties」を参照してください。

   

<LayerProperties>.layerAsRefTarg : RefTarget : Read 

レイヤを参照ターゲットとして返します。

注:

レイヤ システムは予想とまったく逆の動きをします。レイヤがノードを参照するのではなく、ノードがレイヤを参照します。

s=sphere() --Create a sphere, store in variable
--> $Sphere:Sphere01 @ [0.000000,0.000000,0.000000]
sphere() --Create another one
--> $Sphere:Sphere02 @ [0.000000,0.000000,0.000000]
layer = layermanager.getlayer 0 --get default Layer 0
--> <MixinInterface:LayerProperties>
layerRT = layer.layerAsRefTarg --get layer as RefTarget
--> ReferenceTarget:BaseLayer
refs.dependents layerRT --see the dependents
--> #($Sphere:Sphere02 @ [0.0,0.0,0.0], $Sphere:Sphere01 @[0.0,0.0,0.0], ReferenceTarget:Animatable, ReferenceTarget:Animatable, ReferenceTarget:LayerManager, ReferenceTarget:Scene)
refs.dependson s
--> #(Controller:Position_Rotation_Scale, Sphere, ReferenceTarget:BaseLayer)

   

メソッド:

<void>addnode <node>node 

指定されたノードをレイヤに追加します。このページの下部にある例を参照してください。

   

<void>select <boolean>OnOff 

ブール値 true が渡された場合は、シーン内のレイヤ上のすべてのオブジェクトを選択します。渡された引数が false である場合は、レイヤ上のすべてのオブジェクトを選択解除します。

   

<boolean>setname <string>name 

レイヤの名前を指定された文字列に設定します。正常に終了した場合、 true を返します。

注:

レイヤ名は一意でなくてはならないため、レイヤ名を設定する場合には必ずメソッドを使用します。メソッドは、次の例のように、指定された名前を評価してからレイヤに割り当てます。

--First reset 3ds Max to start in an empty scene, then execute:
layer1= layermanager.getlayer 0 --get default Layer 0
--> <MixinInterface:LayerProperties>
 
layer1.setName "The One" --try to change the name
--> false --you cannot, the default layer is always called "0"
 
layer2= layermanager.getlayer 1 --try to get Layer 1
--> undefined --there is no such layer yet.
 
layer2= layermanager.newLayerFromName "Test" --let's create it
--> <MixinInterface:LayerProperties>
 
layer2.setName "Second Layer" --now we can rename it
--> true
 
layer3= layermanager.newLayerFromName "Third" -- create another
--> <MixinInterface:LayerProperties>
 
layer3.setName "Second Layer" --try to give the same name as 2nd
--> false
 
layer3.setName "ThirdLayer" --it needs a unique name to work
--> true

   

<boolean>nodes <&node array>layerNodes

layerNodes is Out parameter 

成功した場合は True を返します。また、参照出力パラメータ内で、レイヤ上のすべてのノードの配列を返します。

layer = layermanager.newLayerFromName "Spheres"
--> <MixinInterface:LayerProperties>
 
for i =1 to 10 do (s = sphere(); layer.addNode s)
--> OK
 
layer.nodes &theNodes
--> true
 
theNodes
--> #($Sphere:Sphere10 @ [0.000000,0.000000,0.000000], $Sphere:Sphere09 @ [0.000000,0.000000,0.000000], $Sphere:Sphere08 @ [0.000000,0.000000,0.000000], $Sphere:Sphere07 @ [0.000000,0.000000,0.000000], $Sphere:Sphere06 @ [0.000000,0.000000,0.000000], $Sphere:Sphere05 @ [0.000000,0.000000,0.000000], $Sphere:Sphere04 @ [0.000000,0.000000,0.000000], $Sphere:Sphere03 @ [0.000000,0.000000,0.000000], $Sphere:Sphere02 @ [0.000000,0.000000,0.000000], $Sphere:Sphere01 @ [0.000000,0.000000,0.000000])
 

   

<Interface>getParent()

レイヤの親レイヤの LayerProperties MixinInterface、またはレイヤに親がない場合は undefined を返します。

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

   

<boolean>setParent <Interface>parent

指定された LayerProperties MixinInterface によって表されるレイヤにレイヤの親を設定します。

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

   

<Interface>getChild <index>index

インデックスで指定された子レイヤの LayerProperties MixinInterface、またはインデックスで指定された子レイヤがない場合は undefined を返します。

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

   

<integer>getNumChildren()

子レイヤの数を返します。

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

   

<bool>canDelete()

3ds Max 2016 の 新機能 : レイヤを削除できる場合は True を返します。

何か別の理由でオブジェクトを含んでいるためにレイヤを削除できない場合は False を返します。

   

<integer>getNumNodes()

3ds Max 2016 の 新機能 : レイヤのノード数を返します。

   

<bool>hasSceneXRefNodesInHierarchy()

3ds Max 2016 の 新機能 : レイヤの階層にシーン外部参照ノードが含まれている場合は True を返します。

それ以外の場合は False を返します。

   

関連事項