v1.0
エンベロープからデフォーマを削除します。 エンベロープの各ポイントは、1 つまたは複数のデフォーマに割り当てられます。各ポイントに対し、ウェイトはデフォーマの相対的な影響をコントロールします。
デフォーマとは、エンベロープのシェイプを制御するオブジェクトです。 ユーザは、初めてエンベロープ デフォーメーションを作成するときにデフォーマを選択しますが、必要であれば、後でデフォーマを追加したり削除したりすることができます。
デフォーマにはスケルトンを使用するのが一般的ですが、実際にあらゆるオブジェクトをデフォーマとして使用できます。 エンベロープのポイントはデフォーマのセンターに割り当てられるため、デフォーマのジオメトリは重要ではありません (ただし、ボーンは例外です。ボーンの全長によりポイントがデフォームされるからです)。
立方体、球体、ヌルのどれを使用しているかにより、それらを囲むエンベロープの変換は、サイズ、向き、位置においてデフォーマのセンターに対する相対的な変換になります(シェイプが基準となるのではありません)。 ヌル オブジェクトやインプリシット オブジェクトはレンダリングされないため、デフォーマには適しています。
RemoveFlexEnvDeformer( [ConnectionSet], [Interactive] ); |
パラメータ | タイプ | 説明 |
---|---|---|
ConnectionSet | ConnectionSet |
エンベロープと、削除するデフォーマ オブジェクトを指定します。 このオペレータに必要な接続セットについては、OpPreset を参照してください。 デフォルト値:現在選択されているオブジェクトをメイン グループとして使用 |
Interactive | Boolean |
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" |