UVProperty」
v10.0 (2012)
UVProperty は、クラスタの UV 情報の保存やアクセスに使用される ClusterProperty の一種です。
UVProperty は、UV コンポーネントをピンしたり、ピンを解除する特別な API をサポートします。ピンはロックのような動作をします。UV コンポーネントがピンされた場合、該当コンポーネントに対して実行される操作の影響を受けません。例えば、ピンされた UV に対する Texture Editor 内での回転やスケールは不可となります。
# # Script to demonstrate how to pin and unpin UV components # from siutils import * si = si() # Create some UV components root = si.ActiveSceneRoot cube = root.AddGeometry( "Cube", "MeshSurface" ) si.BlendInPresets( "Image", cube, 1, False ) si.CreateTextureSupport( cube, C.siTxtUV, C.siTxtDefaultSpherical, "Texture_Support" ) si.SetInstanceDataValue( None, cube.FullName + ".Material.UV", "Texture_Support" ) uvprop = disp(cube.Material.CurrentUV) clsIndices = uvprop.Parent.Elements.Array # Pin components toPin = clsIndices[5:-8] uvprop.PinComponents( toPin ) uvsamples = uvprop.PinComponentArray log( 'Pinned components = %s' % str(uvsamples) ) # INFO : Pinned components = (5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15) # Unpin last 6 components toUnPin = uvsamples[5:] uvprop.UnPinComponents( toUnPin ) uvsamples = uvprop.PinComponentArray log( 'Pinned components = %s' % str(uvsamples) ) # INFO : Pinned components = (5, 6, 7, 8, 9, 10) |