The EditablePoly Interface was added to the Editable_Poly class in 3ds Max 5.
Topic Navigation: |
|
---|---|
Copy/Paste Named Selection Sets |
<bool><EditablePoly>.Hide <enum>mnSelLevel [flags:<DWORD>] mnSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel}
Hide the sub-objects defined by flags in the specified sub-object level. Returns true on success.
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
<bool><EditablePoly>.unhideAll <enum>mnSelLevel mnSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel}
Unhide the specified sub-object level. The modify panel does not have to be in the same sub-object level for this method to have effect. Returns true on success.
Copy selection to the given name.
Paste named selection. When useRenameDialog is supplied as true, enables the Rename Dialog.
<index>createVertex <point3>point [pointInLocalCoords:<bool>] [select:<bool>] pointInLocalCoords default value: true select default value: false
Create a new vertex with the specified coordinates. If the optional pointInLocalCoords argument is true, the coordinates are taken in local space. If the optional select argument is true , the new vertex will be selected after creation. Returns the index of the new vertex.
<index><EditablePoly>.createEdge <index>vertex1 <index>vertex2 [select:<bool>] select default value: false
Create a new edge between the two specified vertices. If the optional select argument is true , the new edge will be selected after creation. Returns the index of the new edge.
<index><EditablePoly>.createFace <index array>vertexArray [select:<bool>] select default value: false
Creates a new face using the specified array of vertices. If the optional select argument is true, the new face will be selected after creation. Returns the index of the new face.
<bool><EditablePoly>.capHoles <enum>mnSelLevel [flags:<DWORD>] mnSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel}
Create new faces to cap open edge loops. Acquire open edge loop defining the hole using the msSelLevel enums. Returns true on success.
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
<bool><EditablePoly>.delete <enum>mnSelLevel [flags:<DWORD>] [deleteIsoVerts:<bool>] mnSelLevelenums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel}
deleteIsoVerts default value: true
Delete the sub-objects in the specified sub-object level. Returns true on success.
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
Delete isolated vertices. Returns true on success.
Attach a node to the Editable_Poly object. The additional node provides the transformation of the node to be attached. You can use the nodeToAttach as myNode to use its own transforms.
<bool><EditablePoly>.detachToElement <enum>mnSelLevel [flags:<DWORD>] [keepOriginal:<bool>] mnSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel}
keepOriginal default value: false
Detach the sub-objects defined by flags in the specified sub-object level to element. Returns true on success.
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
Break the vertices defined by edgeFlags . See polyOp.getEdgesByFlag for descriptions of the flag bits.
Split the edges defined by edgeFlags . See polyOp.getEdgesByFlag for descriptions of the flag bits.
<index><EditablePoly>.divideEdge <index>edgeID <float>proportion [select:<bool>] select default value: false
Divides the specified edge using the proportions for placement control. Returns the index of the new vertex. If select is true, the new vertex will be selected.
<index><EditablePoly>.divideFace <index>faceID <&float array>vertexCoefficients [select:<bool>] vertexCoefficients is In and Out parameter
Divides the specified polygon using the vertexCoefficients to place the new edges. Returns the index of the new vertex. If select is true , the new vertex will be selected.
<index><EditablePoly>.insertVertexInFace <index>faceID <&float array>vertexCoefficients [select:<bool>] vertexCoefficients is In and Out parameter
Insert a vertex inside the specified polygon. Returns the index of the new vertex.
<index><EditablePoly>.insertVertexInEdge <index>edgeID <float>proportion [select:<bool>] select default value: false
Inserts a vertex in the specified edge using the proportions for placement control. Returns the index of the new vertex. If select is true, the new vertex will be selected.
<bool><EditablePoly>.collapse <enum>mnSelLevel [flags:<DWORD>] mnSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel}
Collapses the sub-objects defined by flags in the specified sub-object level. Returns true on success.
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
Extrudes the polygons defined by faceFlags by the specified amount.
By default uses flag 1 which means selected polygons.
See polyOp.getFacesByFlag for descriptions of the flag bits.
Extrude along spline the polygons defined by the flags.
See polyOp.getFacesByFlag for descriptions of the flag bits.
Hinge from edge the polygons defined by the flags.
See polyOp.getFacesByFlag for descriptions of the flag bits.
<void><EditablePoly>.bevelFaces <float>height <float>outline [faceFlags:<DWORD>] faceFlags default value: 1
Bevels the polygons defined by faceFlags using the specified amount and outline values.
By default uses flag 1 which means selected polygons.
See polyOp.getFacesByFlag for descriptions of the flag bits.
Chamfer the selected vertices using the specified amount.
If the optional open: keyword is supplied and set to true , the new faces generated by the chamfer operation will be removed, leaving an opening.
Available in 3ds Max 8 and higher.
Chamfers the selected edges using the specified amount.
If the optional open: keyword is supplied and set to true , the new faces generated by the chamfer operation will be removed, leaving an opening.
Available in 3ds Max 8 and higher.
<bool><EditablePoly>.Bridgesel Level:<enum> flag:<DWORD> selLevel enums: {#Object|#Vertex|#Edge|#Border|#Face|#Element|#CurrentLevel} selLevel default value:#CurrentLevel flag default value: 1
Creates a bridge using the specified selection level and flags.
Returns true on success, false otherwise.
<bool><EditablePoly>.ReadyToBridgeFlagged selLevel:<enum> flag:<DWORD> selLevel enums: {#Object|#Vertex|#Edge|#Border|#Face|#Element|#CurrentLevel} selLevel default value:#CurrentLevel flag default value: 1
Returns true if the specified selection level and flags are ready to be bridged, false otherwise.
<bool><EditablePoly>.Relax selLevel:<enum> flag:<DWORD> selLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel} selLevel default value:#CurrentLevel flag default value: 1
Relaxes the vertices using the specified selection level and flags.
Returns true on success, false otherwise.
<bool><EditablePoly>.slice <point3>slicePlaneNormal <point3>slicePlaneCenter [flaggedFacesOnly:<bool>] [faceFlags:<DWORD>] flaggedFacesOnly default value: false faceFlags default value: 1
Slices using a slice plane defined by the normal vector and center. Both values are specified in local coordinates.
When flaggedFacesOnly is set to true , only polygons specified by faceFlags will be affected (by default flag is 1, in other words, selected polygons). Operates by default on the whole EditablePoly object. Returns true on success.
See polyOp.getFacesByFlag for descriptions of the flag bits.
Cut using a plane defined by the start vertex, the specified point and the view direction.
<index><EditablePoly>.cutEdges <index>startEdge <float>startProportion <index>endEdge <float>endProportion <point3>viewDirection
Cut using a plane defined by the point specified by the two edges and proportions and the view direction.
<index><EditablePoly>.cutFaces <index>startFace <point3>startPosition <point3>endPosition <point3>viewDirection
Cut using a plane defined by the point specified by the two face positions and the view direction.
Weld the two specified vertices and move the resulting vertex to the specified position.
Weld the vertices defined by the supplied flags.
See polyOp.getVertsByFlag for descriptions of the flag bits.
Weld the edges defined by the supplied flags.
See polyOp.getEdgesByFlag for descriptions of the flag bits.
<bool><EditablePoly>.createShape <string>shapeName <bool>curved <node>myNode edgeFlags:<DWORD> edgeFlags default value: 1
Create a shape from the edges defined by the supplied flags.
See polyOp.getEdgesByFlag for descriptions of the flag bits.
<bool><EditablePoly>.makePlanar <enum>mnSelLevel [flags:<DWORD>] mnSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel} flags default value: 1
Make the sub-objects defined by flags in the specified sub-object level planar.
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
<bool><EditablePoly>.moveToPlane <point3>planeNormal <float>planeOffset <enum>mnSelLevel flags:<DWORD> mnSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel} flags default value: 1
Move the sub-objects defined by flags in the specified sub-object level to the specified plane. Returns true on success.
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
<bool><EditablePoly>.alignToGrid <enum>mnSelLevel [flags:<DWORD>] mnSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel} flags default value: 1
Align the sub-objects defined by flags in the specified sub-object level to the active grid. Returns true on success.
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
<bool><EditablePoly>.alignToView <enum>mnSelLevel [flags:<DWORD>] mnSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel} flags default value: 1
Align the sub-objects defined by flags in the specified sub-object level to the active view. Returns true on success.
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
<bool><EditablePoly>.MakePlanarIn <enum>axis selLevel:<enum> flag:<DWORD> axis enums: {#X|#Y|#Z} selLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel} selLevel default value:#CurrentLevel flag default value: 1
Makes the elements in the given sub-level specified by the flag bits planar relatively to the specified axis.
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
<bool><EditablePoly>.meshSmooth <enum>mnSelLevel flags:<DWORD> mnSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel} flags default value: 1
Apply MeshSmooth the sub-objects defined by flags in the specified sub-object level. Returns true on success.
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
<bool><EditablePoly>.tessellate <enum>mnSelLevelflags:<DWORD> mnSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel} flags default value: 1
Tessellate the sub-objects defined by flags in the specified sub-object level.
Set a diagonal in the specided face from corner1 to corner2.
Retriangulate the faces defined by faceFlags .
See polyOp.getFacesByFlag for descriptions of the flag bits.
Turn the indexed diagonal of the indexed face.
Flip the normals of the faces defined by faceFlags .
See polyOp.getFacesByFlag for descriptions of the flag bits.
<void><EditablePoly>.selectByMaterial <index>materialID [clearCurrentSelection:<bool>] clearCurrentSelection default value: true
Select the faces with the specified materialID.
If the optional clearCurrentSelection is set to false , the existing selection will be kept.
<void><EditablePoly>.selectBySmoothGroup <DWORD>smoothingGroups [clearCurrentSelection:<bool>] clearCurrentSelection default value: true
Select the faces with the specified smoothing groups.
If the optional clearCurrentSelection is set to false , the existing selection will be kept.
Generate smoothing groups automatically based on face angles.
<void><EditablePoly>.buttonOp <enum>buttonOpID buttonOpID enums: {#GrowSelection | #ShrinkSelection | #SelectEdgeLoop | #SelectEdgeRing | #HideSelection | #HideUnselected | #UnhideAll | #NamedSelectionCopy | #NamedSelectionPaste | #Cap | #Delete | #Remove | #Detach | #AttachList | #SplitEdges | #BreakVertex | #Collapse | #ResetSlicePlane | #Slice | #WeldSelected | #CreateShape | #MakePlanar | #AlignGrid | #AlignView | #RemoveIsoVerts | #MeshSmooth | #Tessellate | #Update | #SelectByVertexColor | #Retriangulate | #FlipNormals | #SelectByMatID | #SelectBySmoothingGroups | #Autosmooth | #ClearSmoothingGroups| #Extrude | #Bevel | #Inset | #Outline | #ExtrudeAlongSpline | #HingeFromEdge | #ConnectEdges | #ConnectVertices | #Chamfer | #Cut | #RemoveIsoMapVerts | #ToggleShadedFaces | #MakePlanarInX | #MakePlanarInY |#MakePlanarInZ }
Presses the specified Editable_Poly UI button.
<void><EditablePoly>.toggleCommandMode <enum>commandModeID commandModeID enums: { #CreateVertex | #CreateEdge | #CreateFace | #DivideEdge | #DivideFace | #ExtrudeVertex | #ExtrudeEdge | #ExtrudeFace | #ChamferVertex | #ChamferEdge | #Bevel | #SlicePlane | #CutVertex | #CutEdge | #CutFace | #Weld | #EditTriangulation | #InsetFace | #QuickSlice | #HingeFromEdge | #PickLiftEdge | #OutlineFace}
Presses the specified Editable_Poly UI button to enter a command mode.
Presses the button to enter the specified pick mode.
<bool><EditablePoly>.getVerticesByFlag <&bitArray>vertexSet <DWORD>flagsRequested [flagMask:<DWORD>] vertexSet is In and Out parameter flagMask default value: 0
Each vertex in a poly contains a 32 bit flag variable.
This method returns a by-reference bitarray of the vertices that have specific bits in this flag variable set, where the bits being tested are based on a combination of < flagsRequested > and < flagMask >.
Internally, if < flagMask > is 0 then < flagMask > is set to the < flagsRequested > value, otherwise < flagsRequested > is set to the bitwise-AND of < flagsRequested > and < flagMask >.
Bit 2 of < flagMask > is then set, which prevents dead vertices from being included in the resulting bitarray unless this bit was set in < flagMask >.
Each bit in the resulting bitarray is set if the bitwise-AND of the flag variable and < flagMask > is equal to the bitwise-AND of < flagsRequested > and < flagMask >.
See polyOp.getVertsByFlag for descriptions of the flag bits.
<bool><EditablePoly>.getEdgesByFlag <&bitArray>edgeSet <DWORD>flagsRequested [flagMask:<DWORD>] edgeSet is In and Out parameter flagMask default value: 0
Get all edges whose flag bits are set to the ones supplied by flagsRequested . Returns true on success.
Each edge contains a 32 bit flag variable. This method returns a by-reference bitarray of the edges that have specific bits in this flag variable set, where the bits being tested are based on a combination of < flagsRequested > and < flagMask >.
Internally, if < flagMask > is 0 then < flagMask > is set to the < flagsRequested > value, otherwise < flagsRequested > is set to the bitwise-AND of < flagsRequested > and < flagMask >.
Bit 2 of < flagMask > is then set, which prevents dead edges from being included in the resulting bitarray unless this bit was set in < flagMask >.
Each bit in the resulting bitarray is set if the bitwise-AND of the flag variable and < flagMask > is equal to the bitwise-AND of < flagsRequested > and < flagMask >.
See polyOp.getEdgesByFlag for descriptions of the flag bits.
<bool><EditablePoly>.getFacesByFlag <&bitArray>faceSet <DWORD>flagsRequested [flagMask:<DWORD>] faceSet is In and Out parameter flagMask default value: 0
Each face contains a 32 bit flag variable.
This method returns a by-reference bitarray of the faces that have specific bits in this flag variable set, where the bits being tested are based on a combination of < flagsRequested > and < flagMask >.
Internally, if < flagMask > is 0 then < flagMask > is set to the < flagsRequested > value, otherwise < flagsRequested > is set to the bitwise-AND of < flagsRequested > and < flagMask >.
Bit 2 of < flagMask > is then set, which prevents dead faces from being included in the resulting bitarray unless this bit was set in < flagMask >.
Each bit in the resulting bitarray is set if the bitwise-AND of the flag variable and < flagMask > is equal to the bitwise-AND of < flagsRequested > and < flagMask >.
See polyOp.getFacesByFlag for descriptions of the flag bits.
<void><EditablePoly>.setVertexFlags <&bitArray>vertexSet <DWORD>flagsToSet [flagMask:<DWORD>] generateUndoRecord:<bool> vertexSet is In and Out parameter flagMask default value: 0
Set the flag bits of the vertices supplied by the vertexSet bitarray to the bits supplied by flagsToSet .
See polyOp.getVertsByFlag for descriptions of the flag bits.
<void><EditablePoly>.setEdgeFlags <&bitArray>edgeSet <DWORD>flagsToSet [flagMask:<DWORD>] generateUndoRecord:<bool> edgeSet is In and Out parameter flagMask default value: 0
Set the flag bits of the edges supplied by the edgeSet bitarray to the bits supplied by flagsToSet .
See polyOp.getEdgesByFlag for descriptions of the flag bits.
<void><EditablePoly>.setFaceFlags <&bitArray>faceSet <DWORD>flagsToSet [flagMask:<DWORD>] generateUndoRecord:<bool> faceSet is In and Out parameter flagMask default value: 0
Set the flag bits of the faces supplied by the faceSet bitarray to the bits supplied by flagsToSet .
See polyOp.getFacesByFlag for descriptions of the flag bits.
Reset the slice plane transformations to their defaults.
<void><EditablePoly>.getSlicePlane <&point3>planeNormal <&point3>planeCenter <*float>planeSize planeNormal is In and Out parameter planeCenter is In and Out parameter planeSize is In and Out parameter
Get the orientation, center and size of the slice plane.
<void><EditablePoly>.setSlicePlane <&point3>planeNormal <&point3>planeCenter <float>planeSize planeNormal is In and Out parameter planeCenter is In and Out parameter
Set the orientation, center and size of the slice plane.
<float><EditablePoly>.getVertexData <integer>vertexDataChannel <*integer>numberSelected <*bool>uniformData [vertexFlags:<DWORD>] numberSelected is In and Out parameter uniformData is In and Out parameter vertexFlags default value: 1
Get the vertex data stored in the specified vertexDataChannel .
The number of vertices with stored values in this channel will be written to the passed by reference variable numberSelected .
If all vertices contain the same value, the passed by reference boolean variable uniformData will contain true , otherwise false .
If vertexFlags is specified, only values from the flagged vertices will be read.
Returns the value stored in the first vertex encountered (e.g. the vertex with lower index)
See polyOp.getVertsByFlag for descriptions of the flag bits.
<float><EditablePoly>.getEdgeData <integer>edgeDataChannel <*integer>numberSelected <*bool>uniformData [edgeFlags:<DWORD>] numberSelected is In and Out parameter uniformData is In and Out parameter edgeFlags default value: 1
Get the edge data stored in the specified edgeDataChannel .
The number of edges with stored values in this channel will be written to the passed by reference variable numberSelected .
If all edges contain the same value, the passed by reference boolean variable uniformData will contain true , otherwise false .
If edgeFlags is specified, only values from the flagged edges will be read.
Returns the value of the first edge encountered (e.g. the edge with lower index)
See polyOp.getEdgesByFlag for descriptions of the flag bits.
<void><EditablePoly>.setVertexData <integer>vertexDataChannel <float>value vertexFlags:<DWORD> vertexFlags default value: 1
Set the vertex data stored in the specified vertexDataChannel to the provided value. If vertexFlags is specified, only flagged vertices will be affected.
See polyOp.getVertsByFlag for descriptions of the flag bits.
<void><EditablePoly>.setEdgeData <integer>edgeDataChannel <float>value [edgeFlags:<DWORD>] edgeFlags default value: 1
Set the edge data stored in the specified edgeDataChannel to the provided value. If edgeFlags is specified, only flagged edges will be affected.
See polyOp.getEdgesByFlag for descriptions of the flag bits.
Reset the vertex data stored in the specified vertexDataChannel .
Reset the vertex data stored in the specified edgeDataChannel .
<void><EditablePoly>.beginModifyPerData <enum>mnSelLevel <integer>dataChannel mnSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel}
Puts the EditablePoly object into ModifyPerData state.
This makes all changes to the specified sub-object level and dataChannel conditional.
At the end of the data changes, endModifyPerData has to be called with a boolean parameter to commit or discard the changes.
Returns true if the object is currently in ModfyPerData state.
Exits the ModifyPerData state.
If true is supplied for success, the changes will be commited.
If false is supplied for success, the changes will be discarded.
Set the material ID of the faces specified by the supplied flags.
<void><EditablePoly>.getSmoothingGroups <DWORD>faceFlag <*DWORD>anyFaces <*DWORD>allFaces anyFaces is In and Out parameter allFaces is In and Out parameter
Get the smoothing groups of the specified faces.
Set the smoothing groups of the specified faces.
Collapses all dead structures.
<integer><EditablePoly>.propogateComponentFlags <enum>mnSelLevelTo <DWORD>flagSetTo <enum>mnSelLevelFrom <DWORD>flagTestFrom \ [allBitsMustMatch:<bool>] [set:<bool>] [undoable:<bool>] mnSelLevelTo enums: { #Object|#Vertex|#Edge|#Face|#CurrentLevel} mnSelLevelFrom enums: { #Object|#Vertex|#Edge|#Face|#CurrentLevel} allBitsMustMatch default value: false set default value: true undoable default value: false
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
<void><EditablePoly>.PreviewBegin <enum>previewOperation previewOperation enums:{ #GrowSelection | #ShrinkSelection | #SelectEdgeLoop | #SelectEdgeRing | #HideSelection | #HideUnselected | UnhideAll | #NamedSelectionCopy | #NamedSelectionPaste | #Cap | #Delete | #Remove | #Detach | #AttachList | #SplitEdges | #BreakVertex | #Collapse | #ResetSlicePlane | #Slice | #WeldSelected | #CreateShape | #MakePlanar | #AlignGrid | #AlignView | #RemoveIsoVerts | #MeshSmooth | #Tessellate | #Update | #SelectByVertexColor | #Retriangulate | #FlipNormals | #SelectByMatID | #SelectBySmoothingGroups | #Autosmooth | #ClearSmoothingGroups | #Extrude | #Bevel | #Inset | #Outline | #ExtrudeAlongSpline | #HingeFromEdge | #ConnectEdges | #ConnectVertices | #Chamfer | #Cut | #RemoveIsoMapVerts | #ToggleShadedFaces | #MakePlanarInX | #MakePlanarInY |#MakePlanarInZ}
Preview the specified operation. Lets you create interactive dialogs for manipulating sub-object selections in realtime.
Cancel the interactive preview.
Accept the interactive preview results.
Invalidates the preview results.
Enables/Disables preview dragging.
Returns true if preview dragging is enabled, false otherwise.
<bool><EditablePoly>.PopupDialog <enum>popupOperation popupOperation enums:{#GrowSelection | #ShrinkSelection | #SelectEdgeLoop | #SelectEdgeRing | #HideSelection | #HideUnselected | #UnhideAll | #NamedSelectionCopy | #NamedSelectionPaste | #Cap | #Delete | #Remove | #Detach | #AttachList | #SplitEdges | #BreakVertex | #Collapse | #ResetSlicePlane | #Slice | #WeldSelected | #CreateShape | #MakePlanar | #AlignGrid | #AlignView | #RemoveIsoVerts | #MeshSmooth | #Tessellate | #Update | #SelectByVertexColor | #Retriangulate | #FlipNormals | #SelectByMatID | #SelectBySmoothingGroups #Autosmooth | #ClearSmoothingGroups | #Extrude | #Bevel | #Inset | #Outline | #ExtrudeAlongSpline | #HingeFromEdge | #ConnectEdges | #ConnectVertices | #Chamfer | #Cut | #RemoveIsoMapVerts | #ToggleShadedFaces | #MakePlanarInX | #MakePlanarInY |#MakePlanarInZ}
Push the popup dialog's button for the specified interactive operation.
<void><EditablePoly>.GrowSelection selLevel:<enum> selLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel} selLevel default value: #CurrentLevel
Grow the selection in the specified sub-object level.
<void><EditablePoly>.ShrinkSelection selLevel:<enum> selLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel} selLevel default value: #CurrentLevel
Shrink the selection in the specified sub-object level.
<integer><EditablePoly>.ConvertSelection <enum>fromSelLevel <enum>toSelLevel [requireAll:<bool>] fromSelLevel enums: {#Object|#Vertex|#Edge|#Border|#Face|#Element|#CurrentLevel} toSelLevel enums: {#Object|#Vertex|#Edge|#Border|#Face|#Element|#CurrentLevel} requireAll default value: false
Convert the selection from the specified source sub-object level to the specified target sub-object level. Returns the number of selected target sub-object elements.
Select the borders containing the currently selected edges.
Select the elements containing the currently selected faces.
Select the edge loops containing the currently selected edges.
Select the edge rings using the currently selected edges.
Available in 3ds Max 8 and higher.
RingShiftValue is the quantity of edges to shift.
If MoveOnly is true, the selected edges will be moved, If Add is true and MoveOnly is true, newly selected edges will be added to the current selection.
If MoveOnly is true and Add is false, newly selected edges will be removed to the current selection.
Available in 3ds Max 8 and higher.
LoopShiftValue is the quantity of edges to shift.
If MoveOnly is true, the selected edges will be moved, If Add is true and MoveOnly is true, newly selected edges will be added to the current selection.
If MoveOnly is true and Add is false, newly selected edges will be removed to the current selection.
<integer><EditablePoly>.ConvertSelectionToBorder <enum>fromSelLevel <enum>toSelLevel fromSelLevel enums:{#Object|#Vertex|#Edge|#Border|#Face|#Element|#CurrentLevel} toSelLevel enums:{#Object|#Vertex|#Edge|#Border|#Face|#Element|#CurrentLevel}
Converts the current selection to border selection. The first argument represent the sub-object type to convert from, the second one represents the sub-object type to convert to. Available in 3ds Max 8 and higher.
<bool><EditablePoly>.Remove selLevel:<enum> flag:<DWORD> selLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel} selLevel default value: #CurrentLevel flag default value: 1
Remove the sub-objects defined by flags from the specified sub-object level. Returns true on success.
See polyOp.getVertsByFlag, polyOp.getEdgesByFlag and polyOp.getFacesByFlag for descriptions of the flag bits.
Outline the polygons defined by the flags. Returns true on success.
See polyOp.getFacesByFlag for descriptions of the flag bits.
Connect the edges defined by the flags. Returns true on success.
See polyOp.getEdgesByFlag for descriptions of the flag bits.
Connect the vertices defined by the flags. Returns true on success.
See polyOp.getVertsByFlag for descriptions of the flag bits.
<enum><EditablePoly>.GetEPolySelLevel () GetEPolySelLevel enums: {#Object|#Vertex|#Edge|#Border|#Face|#Element|#CurrentLevel}
Returns the EditablePoly selection level set in the Modify panel.
<enum><EditablePoly>.GetMeshSelLevel () GetMeshSelLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel}
Returns the mesh selection level, this means the sub-object that can be selected in the current sub-object level.
Edge and Border sub-object levels both return #Edge, Polygon and Element sub-object levels both return #Face.
<bitArray><EditablePoly>.GetSelection <enum>selectionLevel selectionLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel}
Returns the selection from the specified sub-object level as bitarray
<void><EditablePoly>.SetSelection <enum>selectionLevel <bitArray>selection selectionLevel enums: {#Object|#Vertex|#Edge|#Face|#CurrentLevel}
Set the selection in the specified sub-object level using a bitarray.
Returns the number of vertices in the EditablePoly.
Returns the coordinates of the vertex with the specified index.
Returns the coordinates of the vertex with the specified index.
Returns the face index of the Nth polygon sharing the specified vertex (where N is between 1 and the number of polygons using the vertex).
If the face argument is higher than the number of polygon sharing the vertex, the function will return 0.
Returns the number of edges sharing the specified vertex.
Returns the edge index of the Nth edge sharing the specified vertex. (where N is between 1 and the number of edges sharing the vertex).
If the edge argument is higher than the number of edges sharing the vertex, the function will return 0.
Returns the number of edges in the EditablePoly.
Returns the vertex index used by the specified edge.
Since an edge has two vertices, the end argument is needed to define which of the two vertices of the edge to get.
Returns the face index used by the specified edge. Since an edge can have two faces, the side argument is needed to define which of the two possible faces to get.
Returns the number of faces in the EditablePoly.
Returns the number of corners of the specified polygon. 3 means triangle, 4 means quad etc.
Returns the vertex index of the Nth vertex used by the specified face. (where N is between 1 and the number of face corners).
If the corner argument is higher than the number of face corners, the function will return 0.
Returns the vertex index of the Nth vertex used by the specified face. (where N is between 1 and the number of face corners).
If the corner argument is higher than the number of face corners, the function will return 0.
Returns the material ID of the specified face.
If the face index is higher than the number of faces in the EditablePoly, the function will return 1.
Returns the Smoothing Groups of the specified face.
If the face index is higher than the number of faces in the EditablePoly, the function will return 0.
Returns the number of mapping channels in the EditablePoly.
Returns true if the specified mapping channel is active, false if not.
If the mapChannel argument is higher than the number of available mapping channels, the function will return false.
Returns the number of texture vertices in the specified mapping channel.
Returns 0 if the mapChannel argument is higher than the number of available mapping channels.
Returns the value of the specified texture verticex in the specified mapping channel.
Returns [0,0,0] if the mapChannel argument is higher than the number of available mapping channels or the vertex index is higher than the number of texture vertices.
Returns the texture vertex index of the Nth texture vertex used by the specified face. (where N is between 1 and the number of face corners). If the corner argument is higher than the number of face corners, the function will return -1.
<void><EditablePoly>.SetVertexColor <color>color <enum>Channel Channel enums: {#VertexColor|#Illumination|#Alpha}
Sets the Vertex Color, Illumination or Alpha value of the selected vertices to the specified color value.
Corresponds to using the color picker in the Edit Vertex Colors rollout of the Editable Poly UI.
Available in 3ds Max 2010 and higher.
<void><EditablePoly>.SetFaceColor <color>color <enum>Channel Channel enums: {#VertexColor|#Illumination|#Alpha}
Sets the Vertex Color, Illumination or Alpha value of the selected polygons to the specified color value.
This affects all vertices used by the selected polygons.
Corresponds to using the color picker in the Edit Vertex Colors rollout of the Editable Poly UI.
Available in 3ds Max 2010 and higher.
<color by value><EditablePoly>.GetVertexColor <enum>Channel Channel enums: {#VertexColor|#Illumination|#Alpha}
Gets the Vertex Color, Illumination or Alpha value of the selected vertices
Available in 3ds Max 2010 and higher.
<color by value><EditablePoly>.GetFaceColor <enum>Channel Channel enums: {#VertexColor|#Illumination|#Alpha}
Gets the Vertex Color, Illumination or Alpha value of the selected polygons