Interface: SceneExplorerManager

Interfaces > Core Interfaces > SceneExplorerManager

 

   

Core Interfaces - Quick Navigation

The SceneExplorerManager Core Interface exposes the Scene Explorer to MAXScript.

Available in 3ds Max 2008 and higher.

   

Interface: SceneExplorerManager 

Methods:

<boolean>SceneExplorerManager.CreateExplorerFromDefault <&TSTR>explorerName
explorerName is In parameter

NEW in 3ds Max 2016: Creates a new local Scene Explorer using the specified defaults settings

Returns True on success.

Returns False on failure. For example, if the specified defaults settings do not exist.

EXAMPLE

SceneExplorerManager.CreateExplorerFromDefault "Test"
-->False
SceneExplorerManager.CreateExplorerFromDefault "Light Explorer"
-->True
-- A new Light Explorer will be created.

   

<boolean>SceneExplorerManager.IsExplorerInViewport <&TSTR>explorerName
explorerName is In parameter

NEW in 3ds Max 2016: Returns True if the specified Scene Explorer is displayed in a viewport

Returns False if the specified Scene Explorer is floating, is not displayed, or does not exist at all.

   

<enum>SceneExplorerManager.ExplorerPersistenceType <&TSTR>explorerName
ExplorerPersistenceType enums: {#Global|#Local|#Workspace}
explorerName is In parameter

NEW in 3ds Max 2016: Returns the Persistence Type of the specified Scene Explorer.

Possible return values are:

#Global: The Scene Explorer is global, or the specified Explorer Name does not exist.

#Local: The Scene Explorer is local to the current scene.

#Workspace: The Scene Explorer is the Workspace Explorer.

   

<boolean>SceneExplorerManager.CreateADefaultExplorer <&String>explorerName   

explorerName is In parameter 

Creates a new Scene Explorer with the given name using the default settings.

Returns True on success, False otherwise.

   

<void>SceneExplorerManager.CreateExplorer <string>explorerName <value>visibleColumns 

Creates a new Scene Explorer with the given name and visible columns specified by an array of property names as second argument.

Available in 3ds Max 2010 and higher.

   

<void>SceneExplorerManager.SetExplorerVisibleColumns <string>explorerName <value>visibleColumns 

Sets the columns visibility of the named Scene Explorer using the array of visible column names specified in the second argument.

If a name does not match an existing column filter, that column will be skipped and no error will occur.

Available in 3ds Max 2010 and higher.

EXAMPLE:

--This will createa default Explorer first, then set its
--columns to show Name, Type and Color only:
SceneExplorerManager.CreateADefaultExplorer "Object Colors"
SceneExplorerManager.SetExplorerVisibleColumns "Object Colors" #("Name","Type","Color")
 
--This will create only columns for Name, Type and Faces
--unless Bananas is a custom filter registered via MAXScript
SceneExplorerManager.CreateExplorer "Geometry Counts" #("Name","Type","Faces","Bananas")

   

<integer>SceneExplorerManager.GetExplorerCount() 

Returns the number of Scene Explorers.

   

<Interface>SceneExplorerManager.GetExplorer <string>explorerName

Returns the MixinInterface:SceneExplorerInterface of the Scene Explorer with the given name if it exists.

Returns undefined if the Scene Explorer with the given name does not exist.

Available in 3ds Max 2015 and higher.

   

<Stringby value>SceneExplorerManager.GetExplorerName <index>explorerIndex 

Returns the name of the indexed Scene Explorer.

Possible values for the index argument are from 1 to SceneExplorerManager.GetExplorerCount()

   

<boolean>SceneExplorerManager.ExplorerExists <&String>explorerName

explorerName is In parameter 

Returns True if a Scene Explorer with the given name already exists, False if no such Scene Explorer has been created yet.

   

<boolean>SceneExplorerManager.ExplorerIsOpen <&String>explorerName

explorerName is In parameter 

Returns True if the Scene Explorer with the given name is open, False if it is not open.

   

<boolean>SceneExplorerManager.OpenExplorer <&String>explorerName

explorerName is In parameter 

Opens the Scene Explorer with the given name.

Returns True on success, False otherwise.

   

<boolean>SceneExplorerManager.CloseExplorer <&String>explorerName

explorerNameis In parameter 

Closes the Scene Explorer with the given name.

Returns True on success, False otherwise.

   

<boolean>SceneExplorerManager.ClearAllExplorers() 

Closes all Scene Explorers and clears the Tools>Saved Scene Explorers> menu list.

In 3ds Max 2010 and higher, returns True on success, False otherwise.

   

<point2 by value>SceneExplorerManager.GetExplorerPosition <&String>explorerName

explorerName is In parameter 

Returns the position of the named Scene Explorer as Point2 value relatively to the top left corner of the Desktop.

   

<boolean>SceneExplorerManager.SetExplorerPosition <&String>explorerName <point2 by value>position

explorerName is In parameter 

Sets the position of the named Scene Explorer to the given Point2 value relatively to the top left corner of the Desktop.

Returns True on success, False otherwise.

   

<point2 by value>SceneExplorerManager.GetExplorerSize <&String>explorerName

explorerName is In parameter 

Returns the size of the named Scene Explorer as Point2 value.

   

<boolean>SceneExplorerManager.SetExplorerSize <&String>explorerName <point2 by value>size

explorerName is In parameter 

Sets the size of the named Scene Explorer to the given Point2 value.

Returns True on success, False otherwise.

   

<boolean>SceneExplorerManager.ConfigureExplorer <&String>explorerName <&String>configurationFile 

explorerName is In parameter 
configurationFile is In parameter 

Configures the named Scene Explorer using the configuration file specified by the second argument.

Returns True on success, False otherwise.

   

Scene Explorer Manager

<void>SceneExplorerManager.OpenManageInstancesDialog() 

Opens the "Manage Scene Explorer" dialog.

   

<void>SceneExplorerManager.CloseManageInstancesDialog() 

Closes the "Manage Scene Explorer" dialog.

   

<boolean>SceneExplorerManager.LoadExplorerConfiguration <&String>configurationFile

configurationFile is In parameter 

Loads a previously saved Scene Explorer configuration from the specified configuration file.

Corresponds to pressing the "Load" button in the "Manage Scene Explorer" dialog and selecting the file to load.

Returns True on success, False otherwise.

   

<boolean>SceneExplorerManager.SaveExplorerConfiguration <&String>explorerName <&String>outputConfigurationFile

explorerName is In parameter 
outputConfigurationFile is In parameter 

Saves the configuration of the named Scene Explorer to the configuration file specified by the second argument.

Corresponds to pressing the "Save" button in the "Manage Scene Explorer" dialog with the named Scene Explorer selected and specifying the file to save to.

Returns True on success, False otherwise.

   

<boolean> SceneExplorerManager.DeleteExplorer <&String>explorerName 

explorerName is In parameter 

Deletes the Scene Explorer with the given name.

Corresponds to pressing the "Delete" button in the "Manage Scene Explorer" dialog with the named Scene Explorer selected.

Returns True on success, False otherwise.

   

<boolean>SceneExplorerManager.RenameExplorer <&String>oldExplorerName <&String>newExplorerName 

oldExplorerName is In parameter 
newExplorerName is In parameter 

Renames the Scene Explorer with the name specified by the first argument to the name given by the second argument.

Corresponds to pressing the "Rename" button in the "Manage Scene Explorer" dialog with the named Scene Explorer selected and entering a new name.

Returns True on success, False otherwise.

   

Adding Custom Property Filters

<value>SceneExplorerManager.AddProperty <string>propertyName <value>getFunction <value>setFunction 

Adds a new property filter to be displayed as column in the Scene Explorer.

The first argument is the name of the property to add.

The second argument is the function to call in order to get the value of the property.

The third argument is the function to call in order to set the value of the property.

Once defined, the new property filter will appear at the end of the Column Chooser.

   

<void>SceneExplorerManager.AddLocalizableProperty <string>propertyName <string>displayName <value>getFunction <value>setFunction 

Adds a new property filter to be displayed as a column in the Scene Explorer.

This method is similar to the SceneExplorerManager.AddProperty method listed above except for the additional displayName argument which defines an alternative display name to be shown in the Scene Explorer. This is useful for localization purposes.

Available in 3ds Max 2010 and higher.

   

<value>SceneExplorerManager.AddReadOnlyProperty <string>propertyName <value>getFunction 

Adds a new read-only property filter to be displayed in the Scene Explorer.

The first argument is the property name.

The second argument is the function to call in order to get the value of the property.

Once defined, the new property filter will appear at the end of the Column Chooser.

   

<void>SceneExplorerManager.AddLocalizableReadOnlyProperty <string>propertyName <string>displayName <value>getFunction 

Adds a new read-only property filter to be displayed as a column in the Scene Explorer.

This method is similar to the SceneExplorerManager.AddReadOnlyProperty method listed above except for the additional displayName argument which defines an alternative display name to be shown in the Scene Explorer. This is useful for localization purposes.

Available in 3ds Max 2010 and higher.

   

<value>SceneExplorerManager.RemoveProperty <string>propertyName 

Removes a previously added property by property name.

EXAMPLE USAGE:

--Define a getter function which returns the radius property
--if it exists or implicitly undefined when no such property
fn getRad theNode = (
if isProperty theNode "Radius" then theNode.Radius )
 
--Define asetter function which sets the radius property
--if it exists otherwise does nothing
fn setRad theNode theValue = (
if isProperty theNode "Radius" then theNode.Radius = theValue)
 
--Add a Property filter to the Scene Explorer Manager with the name
--"Radius" and the two functions as second and third argument
SceneExplorerManager.addProperty "Radius" getRad setRad
 
--Define a getter function which returns the class of the node
fn getClass theNode = (classof theNode)
--Add aRead-OnlyProperty filter to the Scene Explorer Manager
--which can only get properties but cannot set them
SceneExplorerManager.addReadOnlyProperty "Class" getClass

Once evaluated, the new properties will appear at the end of the Column Chooser dialog:

Drag the new columns to a Scene Explorer to see the class of all scene nodes and the radius value of any scene node that has a .radius property:

To make these additional properties available to the Scene Explorer in future 3ds Max sessions, save the custom property filter definitions to a script file in the Scripts\Startup folder.

 

Interface: SceneExplorerInterface

This MixinInterface is returned by the method     SceneExplorerManager.GetExplorer() and exposes properties and methods of a single named Scene Explorer.

Available in 3ds Max 2015 and higher.

Properties:

.Name : string : Read|Write

Get/set the name of the Scene Explorer.

   

Methods:

<fpvalue by value array>SelectedItems()

Returns an array of the objects represented by the selected items.

   

<void>CollapseAll()

Collapses children sub-trees display of all items.

   

<void>CollapseSelected()

Collapses the children sub-trees display of the selected items.

   

<void>ExpandAll()

Expands the children sub-trees display of all items.

   

<void>ExpandSelected()

Expands the children sub-trees display of the selected items.

   

<void>InvertDisplay()

Inverts the states of all Display Filters

   

<void>Rename()

Switches the selected item to rename mode.

If multiple items are selected, the last selected item will enter rename mode.

The Scene Explorer must be open for this method to succeed.

   

<void>Unlink()

Unlinks the selected children objects from their parent objects.

   

<void>SelectChildren()

Selects the children of the selected items while preserving the parents' selection.

   

<void>FocusAndRename <maxObject>layer

Selects the item representing the specified scene object and enters rename mode.

Does nothing If the object does not exist.

   

See also

Core Interfaces