MAXScript Language Reference > Collections > Collection Types >

# VertexSelection Values

Value > Collections > Collection Types > VertexSelection Values

| Values and Collections - Quick Navigation

A VertexSelection represents a set of vertices for a scene mesh node as a virtual array.

As such, you can access a vertex by index, iterate over the vertices, and apply mapped functions to the vertices.

See also Editable Mesh.

The VertexSelection array is dynamic, i.e., its contents will change as the vertices or selected vertices of the mesh node change.

VertexSelection values are mappable.

Constructors

    <mesh>.selectedVerts

The currently selected vertices of the mesh object

    <mesh>.verts

All of the vertices of the mesh object, read-only

Properties

    <vertexselection>.count : Integer, read-only

Returns the number of vertices in the VertexSelection array.

    <vertexselection>.selSetNames : Array of names, read-only

Returns an array of names of the current vertex-level named selection sets for the object the VertexSelection is associated with.

The following properties are present for singleton selections (of the form $foo.verts[n]):

    <vertexselection>.index : Integer, read-only

Returns the index of the selected element in the mesh,

FOR EXAMPLE
    $foo.selectedVerts[2].index
returns the vertex index of the 2nd vertex in the current selection.

    <vertexselection>.pos : Point3

Returns or sets the position of the selected element in the mesh,

FOR EXAMPLE
    $foo.verts[i].pos = $baz.verts[j].pos + [10,0,0]

Iterating over a selection yields singleton selections in the loop body:

FOR EXAMPLE
    sv = for i in $foo.selectedVerts collect i.index
    --sv contains selected vertices as array

Operators

    <mesh>.selectedVerts = (<array> | <bitarray>)

Selects the specified vertices.

    <vertexselection>[<integer>]

Retrieves the indexed vertex as a singleton VertexSelection. Index starts at 1

    <vertexselection>[<integer>] = <point3>

Sets the position of the indexed vertex.

    <vertexselection>[(<integer_array> | <bitarray>)]

Retrieves the indexed vertices as a VertexSelection. Index starts at 1.

    <vertexselection>[(<#name> | <string>)]

Retrieves the vertex-level named selection set, where the name of the named selection set can be specified as a name or string value.

    <vertexselection>[(<#name> | <string>)] = (<vertexselection> | <integer_array> | <bitarray>)

Sets the vertex-level named selection set to the specified vertices. The name of the named selection set can be specified as a name or string value, and the vertices can be specified as an array, bitArray, or a VertexSelection from the same object.

Methods

    move <vertexselection> <point3>

Moves the vertices in the VertexSelection.

    select <vertexselection>

Selects the vertices in the VertexSelection.

    deselect <vertexselection>

Deselects the vertices in the VertexSelection.

    delete <vertexselection>

Deletes the vertices in the VertexSelection.

    append <vertexselection> (<vertexselection> | <integer>)

Appends the vertex or vertices to the VertexSelection.

    findItem <vertexselection> (<vertexselection[<integer>] | <integer>)

Returns the selection index of the matching item or 0 if not found. The item is selection index or singleton VertexSelection.

FOR EXAMPLE
    -- move vertices in 'mouth' named selection set
    move $foo.verts[#mouth] [0,0,10]
    -- select vertices in 'front verts' set
    select $baz.verts["front verts"]
    -- set 'baz' named selection set to given vertices
    $foo.verts[#baz] = #(1,3,4,5,10)
    -- set 'cursel' set to current selection
    $baz.verts[#cursel] = $baz.selectedVerts
    -- all the names of the vertex-level named selection sets for object $foo
    $foo.verts.selSetNames
    -- print out all vertex-level named selection sets
    for n in $.verts.selSetNames do print $.verts[n]