v1.0
オペレータ デフォメーション
エンベロープからデフォーマを削除します。 エンベロープの各ポイントは、1 つまたは複数のデフォーマに割り当てられます。
各ポイントに対し、ウェイトはデフォーマの相対的な影響を制御します。
デフォーマとは、エンベロープのシェイプを制御するオブジェクトです。 ユーザは、初めてエンベロープ
デフォーメーションを作成するときにデフォーマを選択しますが、必要であれば、後でデフォーマを追加したり削除したりすることができます。
デフォーマにはスケルトンを使用するのが一般的ですが、実際にあらゆるオブジェクトをデフォーマとして使用できます。
エンベロープのポイントはデフォーマのセンターに割り当てられるため、デフォーマのジオメトリは重要ではありません
(ただし、ボーンは例外です。ボーンの全長によりポイントがデフォームされるからです)。
立方体、球体、ヌルのどれを使用しているかにより、それらを囲むエンベロープの変換は、サイズ、向き、位置においてデフォーマのセンターに対する相対的な変換になります(シェイプが基準となるのではありません)。
ヌル オブジェクトやインプリシット オブジェクトはレンダリングされないため、デフォーマには適しています。
RemoveFlexEnvDeformer( [ConnectionSet], [Interactive] ); |
| パラメータ | タイプ | 詳細 |
|---|---|---|
| ConnectionSet | ConnectionSet | エンベロープと、削除するデフォーマ オブジェクトを指定します。 このオペレータに必要な接続セットについては、OpPreset を参照してください。
デフォルト値:現在選択されているオブジェクトをメイン グループとして使用 |
| Interactive | ブール | True を設定すると、オブジェクトを選択するようユーザに要求します。
デフォルト値: False |
'This example builds an envelope made of 2 skeleton objects on a sphere
'and a cylinder. Then, it removes individual deformers from the cylinder,
'and all envelope components from the shere.
'
'The deformers removed from the cylinder are outputted in the log.
NewScene
Set Sphere = CreatePrim("Sphere", "MeshSurface")
Set Cylinder = CreatePrim("Cylinder", "MeshSurface")
SetValue Cylinder & ".polymsh.geom.subdivu", 16
SetValue Cylinder & ".polymsh.geom.subdivv", 16
SetValue Cylinder & ".cylinder.height", 7.325
Create2DSkeleton 0.1, 0.7, 0, 0, 3.6, 0, 0, 0, 0, 4
Create2DSkeleton 0.0, -0.3, 0, -0.2, -3.6, 0, 0, 0, 0, 4
ApplyFlexEnv Sphere & "," & Cylinder & ";bone1,bone", False
Translate "eff", 2.5, -2.0, 0, siRelative, siView, siObj, siXYZ
Translate "eff1", 3.7, 1.8, 0, siRelative, siView, siObj, siXYZ
SelectDeformersFromEnvelope Cylinder
Set Bones = SIFilter(, "Chain_Element")
'Remove 1 by 1 all deformers of the cylinder.
'However, the envelope and the envelope weight property remain.
For i = 0 to Bones.Count - 1
logmessage "Removing " & Bones(i) & " from the deformers of " & Cylinder
RemoveFlexEnvDeformer Cylinder & ";" & Bones(i)
next
'Call RemoveFlexEnv: removes deformers of the sphere.
'The envelope and the envelope weight property are removed too.
RemoveFlexEnv Sphere
'This example outputs the following:
'
'INFO : "Removing bone1 from the deformers of cylinder"
'INFO : "Removing bone from the deformers of cylinder"
'INFO : "Removing eff1 from the deformers of cylinder"
'INFO : "Removing eff from the deformers of cylinder"
|