SelectMaterialsUsedBy
 
 
 

SelectMaterialsUsedBy

Introduced

v5.0

Description

Selects all the materials being 'used by' the input object(s) which can include 3DObjects, clusters, groups, layers and partitions. For a 3DObject this includes the materials on clusters and subsurfaces.

Scripting Syntax

SelectMaterialsUsedBy( InputObjs );

Parameters

Parameter Type Description
InputObjs String List of objects

Default Value: Current selection

Examples

1. VBScript Example

'
' The following example creates a couple of objects and places them in a group.
' Then it adds a material (green in color) to the group.  Thus that material is
' inherited by the two objects.  Then it demonstates this command.
'
NewScene , False
' Create a couple of objects
SetDisplayMode "Camera", "shaded"
set oRoot = Application.ActiveSceneRoot
set oCube = oRoot.AddGeometry("Cube","MeshSurface", "Green_Cube")
set oCone = oRoot.AddGeometry("Cone","MeshSurface", "Green_Cone")
Translate "Green_Cone", 7.57946639200555, -4.14387414395287E-02, 4.14387414395287E-03, siRelative, siView, siObj, siXYZ, , , , , , , , , , 0
' Create a group and add the two objects
set oGroup = oRoot.AddGroup
oGroup.AddMember(oCube)
oGroup.AddMember(oCone)
' Create a material (green in color) on the group
set oMaterial = oGroup.AddMaterial("Phong", siBranch, "GREEN_Material")
SetValue "Sources.Materials.DefaultLib.GREEN_Material.GREEN_Material.diffuse.red", 0
SetValue "Sources.Materials.DefaultLib.GREEN_Material.GREEN_Material.diffuse.green", 1
SetValue "Sources.Materials.DefaultLib.GREEN_Material.GREEN_Material.diffuse.blue", 0
' Select the material 'used by' an object in the group.
DeselectAll
SelectMaterialsUsedBy "Green_Cone"
' The material 'GREEN_Material' should now be selected.

2. JScript Example

/*
        The following example creates an object and adds a material (red in color)
        on it.  Then it demonstates this command.
*/
NewScene( null, false );
// Create an object
SetDisplayMode("Camera", "shaded");
var oRoot = Application.ActiveSceneRoot;
var oObject = oRoot.AddGeometry( "Cylinder", "MeshSurface" );
// Add a material (red in color) on it
var oMaterial = oObject.AddMaterial( "Phong", siNode, "RED_Material" );
SetValue("Sources.Materials.DefaultLib.RED_Material.RED_Material.diffuse.red", 1, null);
SetValue("Sources.Materials.DefaultLib.RED_Material.RED_Material.diffuse.green", 0, null);
SetValue("Sources.Materials.DefaultLib.RED_Material.RED_Material.diffuse.blue", 0, null);
// Select the material(s) used by the object
DeselectAll();
SelectMaterialsUsedBy("cylinder");
// The material 'RED_Material' should now be selected.
//

See Also

SelectObjectsUsingMaterial