InvertSelection

Introduced

v1.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:

Description:

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:

Description:

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"