Go to: Synopsis. Return value. Flags. Python examples.


polyOptUvs( selectionList , [applyToShell=boolean], [areaWeight=float], [caching=boolean], [constructionHistory=boolean], [globalBlend=float], [globalMethodBlend=float], [iterations=int], [name=string], [nodeState=int], [optimizeAxis=int], [pinSelected=boolean], [pinUvBorder=boolean], [scale=float], [stoppingThreshold=float], [useScale=boolean], [uvSetName=string])

Note: Strings representing object names and arguments must be separated by commas. This is not depicted in the synopsis.

polyOptUvs is undoable, queryable, and editable.

Optimizes selected UVs.

Return value

stringThe node name.

In query mode, return type is based on queried flag.


applyToShell, areaWeight, caching, constructionHistory, globalBlend, globalMethodBlend, iterations, name, nodeState, optimizeAxis, pinSelected, pinUvBorder, scale, stoppingThreshold, useScale, uvSetName
Long name (short name) Argument types Properties
iterations(i) int create
Maximum number of iterations for each connected UV piece.
stoppingThreshold(ss) float create
Minimum distorsion improvment between two steps in %.
useScale(us) boolean create
Adjust the scale or not.
scale(s) float create
Ratio between 2d and 3d space.
areaWeight(aw) float create
Surface driven importance. 0 treat all faces equal. 1 gives more importance to large ones.
pinUvBorder(pub) boolean create
Specifies that the UV border should be pinned when doing the solve. By default only unselected components are pinned.
pinSelected(ps) boolean create
Specifies that the selected components should be pinned instead the unselected components.
applyToShell(applyToShell) boolean create
Specifies where the whole object or just shells that are selected or pinned should be affected.
optimizeAxis(oa) int create
Degree of freedom for optimization: 0=Optimize freely, 1=Move vertically only, 2=Move horzontally only
globalBlend(gb) float create
This allows the user to blend between a local optimization method (globalBlend = 0.0) and a global optimization method (globalBlend = 1.0). The local optimization method looks at the ratio between the triangles on the object and the triangles in UV space. It has a side affect that it can sometimes introduce tapering problems. The global optimization is much slower, but takes into consideration the entire object when optimizing uv placement.
globalMethodBlend(gmb) float create
The global optimization method uses two functions to compute a minimization. The first function controls edge stretch by using edges lengths between xyz and uv. The second function penalizes the first function by preventing configurations where triangles would overlap. For every surface there is a mix between these two functions that will give the appropriate response. Values closer to 1.0 give more weight to the edge length function. Values closer to 0.0 give more weight to surface area. The default value of '0.5' is a even mix between these two values.
uvSetName(uvs) string createquery
Specifies name of the uv set to modify. Default is the current UV set.
Common flags
name(n) string create
Give a name to the resulting node.
constructionHistory(ch) boolean createquery
Turn the construction history on or off (where applicable). If construction history is on then the corresponding node will be inserted into the history chain for the mesh. If construction history is off then the operation will be performed directly on the object.
Note: If the object already has construction history then this flag is ignored and the node will always be inserted into the history chain.
caching(cch) boolean createedit
Toggle caching for all attributes so that no recomputation is needed
nodeState(nds) int createqueryedit
Defines how to evaluate the node.
  • 0: Normal
  • 1: PassThrough
  • 2: Blocking
  • 3: Internally disabled. Will return to Normal state when enabled
  • 4: Internally disabled. Will return to PassThrough state when enabled
  • 5: Internally disabled. Will return to Blocking state when enabled

Flag can appear in Create mode of command Flag can appear in Edit mode of command
Flag can appear in Query mode of command Flag can have multiple arguments, passed either as a tuple or a list.

Python examples

import maya.cmds as cmds

# Create a sphere and select it.

# Optimise the position of some Uvs
cmds.polyOptUvs( 'pSphere1.map[189:398]' )