ModifyUVSetByContourStretching

Description

Modify an existing set of texture coordinates by contour stretching the polygon inputs onto a "surface" pinned on the contour of the polygon inputs. A proper contour of the polygon inputs must exist to guide the contour stretching process.

Scripting Syntax

oReturn = ModifyUVSetByContourStretching( InputObjs, TextureProjection, [ContourStretchingMethod], [MaintainAspect], [CornerPoints] );

Return Value

Returns an XSICollection that contains the created operators.

Parameters

Parameter Type Description
InputObjs String List of polygon inputs to which the polygon UV texture coordinate contour stretching operator is applied.

Default Value: Selected objects.

TextureProjection String Texture space to modify.
ContourStretchingMethod siTxtContourStretchingMethod Polygon cluster contour stretching method.

Default Value: siContourStretchingWalkingOnMesh

MaintainAspect Boolean Whether to maintain aspect ratio.

Default Value: False

CornerPoints String Optional list of point inputs that define corners on the boundary of the polygon inputs. Each input may contain from 0 to N points and only up to the first 4 points of each input will be used to define corners. If the input corners are not part of the contour of the polygon inputs then they are ignored.

Default Value: Empty. Corners are derived automatically internally.

Examples

VBScript Example

Dim l_CreatedObjects

NewScene

'This example applies polygon UV contour stretching as a modifier to an existing texture space.

CreatePrim "Sphere", "MeshSurface"

ApplyShader , , , , siLetLocalMaterialsOverlap

SIApplyShaderToCnxPoint "Image", "sphere.Material.Phong.diffuse"

CreateProjection "sphere", siTxtPlanarXY, siTxtDefaultSpherical, "Texture_Support", "Texture_Projection"

SetInstanceDataValue , "sphere.Material.Phong.Image.tspace_id", "Texture_Projection"

SetDisplayMode "Camera", "textured"

'Create cluster to modify

ActivateRaycastPolySelTool

ToggleSelection "sphere.poly[19,20,27,28,35,36,43,44]", , True

CreateCluster

'Modify UV by contour stretching.  Contour Stretching method is default and MaintainAspect is default Corners are derived automatically

set l_CreatedObjects = ModifyUVSetByContourStretching( "sphere.polymsh.cls.Polygon","sphere.polymsh.cls.Texture_Coordinates_AUTO.Texture_Projection" )

'What was created

logmessage "Created Operators: " & l_CreatedObjects

See Also

GenerateUVSetByContourStretching