Interfaces > Core Interfaces > SME |
The SME Core Interface introduced in 3ds Max 2011 exposes properties and methods related to the Slate Material Editor.
Properties:
sme.activeView : index : Read|Write
Get/set the Slate Material Editor's active View.
Methods:
<void>sme.Open()
Opens the Slate Material Editor.
<void>sme.Close()
Closes the Slate Material Editor.
<bool>sme.IsOpen()
Returns true if the Slate Material Editor is open, false if it is closed.
<integer>sme.GetNumViews()
Returns the number of Node Views as an integer.
<index>sme.CreateView <string>name
Creates a new Node View with the given name and returns its index.
<IObject>sme.GetView <index>index
Returns an IObject:IFP_NodeViewImp object representing the indexed Node View.
<index>sme.GetViewIndex <IObject>view
Returns the index of the given Node View IObject:IFP_NodeViewImp object.
<index>sme.GetViewByName <string>name
Returns the index of the named Node View.
<void>sme.DeleteView <index>index <bool>ask_user
Deletes the indexed Slate Material Editor view.
If the second argument is true, prompts the user for confirmation, otherwise deletes the view without prompting.
<maxObject>sme.GetMtlInParamEditor()
Returns the material or map current displayed in the Parameter Editor of the Slate Material Editor.
sme.SetMtlInParamEditor <maxObject>
Sets the material or map to be displayed in the Parameter Editor of the Slate Material Editor.
Available in 3ds Max 2014 and higher.
<Interface>sme.GetNavigator()
Returns an WndBase Interface to the Slate Material Editor's Navigator.
<Interface>sme.GetMaterialPool()
Returns an WndBase Interface to the Slate Material Editor's Material Pool.
<Interface>sme.GetParamEditor()
Returns an WndBase Interface to the Slate Material Editor's Parameter Editor.
<Interface>sme.GetMainframe()
Returns an WndBase Interface to the Slate Material Editor's Main Frame.
<maxObject>sme.DoMtlBrowseDlg <HWND>parent <DWORD>flags <&boolean>newMat <&boolean>cancel newMat is In and Out parameter cancel is In and Out parameter
Opens a modal Material/Map browser dialog.
The first argument is the window handle of the parent window, use 0 for none.
The second argument is a flags value controlling the display of materials and maps in the dialog. Possible Flag values are:
1,5,9... - Materials, Sample Slots
2,6,10... - Maps
0,3,7,11... - Maps, Materials, Sample Slots
4,8,12... - None
The third by-reference argument will contain true if a new material was created, false if an existing one was picked.
The fourth by-reference argument will contain true if the Cancel button was clicked, false if the OK button was clicked.
EXAMPLE |
isNew = false isCanceled = false c = sme.DoMtlBrowseDlg 0 0 &isNew &isCanceled |
<void>sme.OpenMtlBrowseDlg()
Opens the Material Browser Dialog.
Interface: NodeView
Properties:
.name : string : Read|Write
Get/set the name of the Node View.
Methods:
<integer>GetNumNodes()
Returns the number of nodes in the View.
<Interface>GetNode <index>index
Returns the Node Interface of the indexed node from the View.
<Interface>GetNodeByRef <maxObject>ref
Returns the Node Interface to the given Material or Map object reference, or undefined if the reference does not exist in the Node View.
<Interface>CreateNode <maxObject>ref <&point2>pos pos is In and Out parameter
Creates a new node from the given Material or Map object reference at the position specified by-reference.
<void>DeleteSelection()
Deletes the selected nodes.
<void>SelectNone()
Deselects all nodes in the Node View.
Available in 3ds Max 2014 and higher.
<void>SelectAll()
Selects all nodes in the Node View.
Available in 3ds Max 2014 and higher.
<void>SelectInvert()
Inverts the node selection in the Node View.
Available in 3ds Max 2014 and higher.
<Interface by value array>GetSelectedNodes()
Returns the selected nodes in the Node View as an array of Node Interfaces.
Available in 3ds Max 2014 and higher.
<void>SetSelectedNodes <maxObject by value array>refs
Sets the Node View selection to the array of Materials and/or Maps object references provided as argument.
Setting the selection will deselect any other previously selected nodes.
This function will not open any items in the Parameter Editor - you can use the sme.SetMtlInParamEditor() method documented earlier in this topic.
Available in 3ds Max 2014 and higher.
<void>ZoomExtents type:<enum> type enums: {#all|#selected} type default value: #all
Zooms the Node View to show all nodes or all selected nodes according to the type optional keyword argument.
Available in 3ds Max 2014 and higher.
Interface: WndBase
Properties:
.position : point2 by value : Read|Write
Get/set the Position of the Node View.
.size : point2 by value : Read|Write
Get/set the Size of the Node View.
.visible : bool : Read|Write
Get/set the Visibility of the Node View.
Methods:
<void>SetFocus()
Sets the focus on the Node View.
<Interface>GetParent()
Returns the WndBase interface of the Parent of the Node View.
Properties:
.name : string : Read|Write
Get/set the name of the Node.
.position : point2 by value : Read|Write
Get/set the Position of the Node inside the Node View.
.selected : bool : Read|Write
Get/set the Selected state of the Node.
Available in 3ds Max 2014 and higher.