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

Synopsis

polyNormal([caching=boolean], [constructionHistory=boolean], [name=string], [nodeState=int], [normalMode=int])

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

polyNormal is undoable, queryable, and editable.

Control the normals of an object. This command works on faces or polygonal objects.

Return value

stringThe node name.

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

Related

polyAverageNormal, polyNormalPerVertex, polySetToFaceNormal, polySoftEdge

Flags

caching, constructionHistory, name, nodeState, normalMode
Long name (short name) Argument types Properties
normalMode(nm) int createqueryedit
This flag specifies the normal mode.
0: reverse; (This flag is being phased out and is included for backwards compatibility only.)
1: propagate; (This flag is being phased out and is included for backwards compatibility only.)
2: conform; (This flag is being phased out and is included for backwards compatibility only.)
3: reverse and cut; Reverse the normal(s) on the selected face(s). Selected faces are cut along their collective border and a new shell is created. The normals in the new shell are reversed from what they were before the action.
4: reverse and propagate; Reverse the normal(s) on the selected face(s) and propagate this direction to all other faces in the shell.
C: Default is 0 (reverse mode).
Q: When queried, this flag returns an int.
Common flags
caching(cch) boolean createedit
Toggle caching for all attributes so that no recomputation is needed.
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.
name(n) string create
Give a name to the resulting node.
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

cmds.polyPlane( n='plg', w=3, h=3 )
cmds.polyOptions( ao=True, dn=True, db=True, bc=True )

#<I>reverse and cut</I>
cmds.select( 'plg.f[40:59]' )
cmds.polyNormal( nm=3 )

#<I>reverse and propagate</I>
cmds.polyNormal( 'plg.f[11]', nm=4 )
# Notice that only the shell containing face 11 is reversed.

# We can reverse all the shells by passing in the object
cmds.polyNormal( 'plg', nm=3 )