Envelope.SetDeformerColor

説明

このメソッドは、デフォーマに割り当てられている色を変更します。デフォームされたオブジェクトの各頂点は、影響が最も大きいデフォーマの色でペイントされます。このメソッドは、0 から 1 の範囲の正規化された RBG 値を想定しています。

C#構文

Envelope.SetDeformerColor( X3DObject, Color in_pColor );

スクリプト構文

Envelope.SetDeformerColor( Deformer, Color );

パラメータ

パラメータ タイプ 説明
Deformer X3DObject デフォーマオブジェクト
Color Color 割り当てるカラー オブジェクト

VBScript の例

'vbscript example demonstrating how to change the vertex colors

'that are assigned to deformers on an envelope.

newscene ,false

'Create a cylinder deformed by a 3 bone skeleton

set oCylinder = ActiveSceneRoot.AddGeometry( "Cylinder", "MeshSurface" )

Rotate oCylinder, , , 90, siAbsolute, siParent, siObj, siZ

Translate oCylinder, 2, , , siRelative, siView, siObj, siXYZ

SetValue "cylinder.polymsh.geom.subdivv", 8

'Create the skeleton

set oChainRoot = ActiveSceneRoot.Add3DChain

set oBone0 = oChainRoot.Bones.Item(0) 

set oEffPos = XSIMath.CreateVector3

oEffPos.Set 2,0,0

set oBone1 = oChainRoot.AddBone(oEffPos)

oEffPos.Set 4,0,0

set oBone2 = oChainRoot.AddBone(oEffPos)

set oEnvelope = oCylinder.ApplyEnvelope( oChainRoot, siBranch )

'Bend the cylinder

Translate "eff", -1, 0, 0, siRelative, siGlobal, siObj, siXYZ

set oColor = oEnvelope.GetDeformerColor( oBone0 )

logmessage "Deformer " & oBone0 & " has color " & oColor.Red & "," _

				& oColor.Green & "," & oColor.Blue

'Change the deformer color scheme

oColor.Red = 0

oColor.Green = 0

oColor.Blue = 1

oEnvelope.SetDeformerColor oBone0, oColor 

oColor.Red = 1

oColor.Green = 0

oColor.Blue = 0

oEnvelope.SetDeformerColor oBone1, oColor 

oColor.Red = 0

oColor.Green = 1

oColor.Blue = 0

oEnvelope.SetDeformerColor oBone2, oColor 

SelectObj oCylinder

関連項目

Envelope.GetDeformerColor