InvertSelection

Introduced

1.0

Description

Deselects the elements that are currently selected, and selects the elements that are selected.

Note: If the SelectionList argument contains an error, the command fails.

Scripting Syntax

    InvertSelection( [SelFilter], [CheckComponentVisibility], [CheckObjectSelectability] )

Parameters

Parameter | Type | Description
SelFilter | FilterConstant | Selection filter that specifies what type of elements to select. Default Value: Current selection filter
CheckComponentVisibility | siComponentVisibilityMode | Specifies whether the command should apply to visible components only. Default Value: siIgnoreComponentVisibility Possible Values: • siIgnoreComponentVisibility: The command will ignore component visibility • siCheckComponentVisibility: The command will apply to visible components only
CheckObjectSelectability | Boolean | Specifies whether to select objects that marked as unselectable. Default Value: False Possible Values: • False: Select objects even if they are marked as unselectable. • True: Do not select objects if they are marked as unselectable.

Examples

1. VBScript Example

    NewScene

    ' Create some objects and an extra light to play with
    CreatePrim "Cube", "MeshSurface"
    Translate , -6, -0.995037190209989, 9.95037190209989E-02, siAbsolute, siView, siObj, siXYZ, True, , , , , , , , , 0
    Scale , 0.46615087040619, 0.46615087040619, 0.46615087040619, siRelative, siGlobal, siObj, siXYZ, , , , , , , , 0
    CreatePrim "Sphere", "MeshSurface"
    Translate , 6, -0.995037190209989, 9.95037190209989E-02, siAbsolute, siView, siObj, siXYZ, True, , , , , , , , , 0
    GetPrimLight "Infinite.Preset", "Infinite"
    SelectObj "Cube,Infinite"

    ' Deselect all selected objects, and select all unselected objects
    PrintSelection
    InvertSelection "object"
    PrintSelection

    ' Note that when you use a filter, everything that does not match the filter is unselected
    ' For example, this command inverts the selection status of all the lights, and unselects
    ' all other elements in the scene.
    InvertSelection "light"
    PrintSelection

    ' Invert the selection of some components
    SetSelFilter "Vertex"
    SelectGeometryComponents "cube.pnt[3,4]"
    PrintSelection
    InvertSelection "point"
    PrintSelection

    Sub PrintSelection
       msg = "Selection:"
       if Selection.count = 0 then
           msg = msg & " <empty>"
       else
           for each obj in Selection
              msg = msg & " " & obj
           next
       end if
       logmessage msg
    End Sub

2. VBScript Example

    NewScene

    ' Create a sphere, hide some polygons
    CreatePrim "Sphere", "MeshSurface"
    ActivatePolygonSelTool
    SelectGeometryComponents "sphere.poly[4,12,20,28,36,44,52,60]"
    ToggleVisibility

    ' Select the right half of the sphere.
    SelectGeometryComponents "sphere.poly[16-47]"

    ' Invert the poly selection, ignoring the fact that some of the polys are hidden
    MsgBox "Will now InvertSelection ignoring component visibility..."
    InvertSelection , siIgnoreComponentVisibility
    MsgBox "Notice some of the hidden polygons are selected"

    ' Invert the poly selection again, taking into account the fact that some of the polys are hidden
    MsgBox "Will now InvertSelection again, but checking component visibility..."
    InvertSelection , siCheckComponentVisibility
    MsgBox "Notice no hidden polygons are selected"

Autodesk Softimage v7.5