ConstructionHistory.Filter
 
 
 

ConstructionHistory.Filter

Description

Returns a collection of Operator objects that match the specified criteria.

C# Syntax

OperatorCollection ConstructionHistory.Filter( String in_filter, Object in_famArray, String in_path );

Scripting Syntax

oReturn = ConstructionHistory.Filter( [Type], [Family], [Path] );

Return Value

OperatorCollection

Parameters

Parameter Type Description
Type String Operator type e.g. twistop (see Operator Information for a list of available operators.)
Family siFamily Name of family to filter by (for example, use "siDeformOperatorFamily" for the deform operator family).
Path String Name of object(s) as an Object List string expression (for example, "twist*" to return all twist operators).

Examples

VBScript Example

' The following code illustrates how to get a ConstructionHistory, 
' filter the construction history for DeformOperators and then iterate 
' the converters using the For Each...Next statement: 
Dim oGPig
' See if there are any DeformOperators now
Set oGPig = ActiveSceneRoot.AddGeometry( "Torus", "MeshSurface" )
ShowTransforms oGPig 
' Apply a Bend Operator and then see
ApplyOp "bend", oGPig
ShowTransforms oGPig 
' Apply a Twist Operator and then see
ApplyOp "twist", oGPig
ShowTransforms oGPig 
Function ShowTransforms( in_object )
        Dim oStack, oTransform, sMemberList 
        Set oStack = in_object.ActivePrimitive.ConstructionHistory.Filter( , siDeformOperatorFamily )
        If oStack.Count > 0 Then
                For Each oTransform In oStack
                        sMemberList = sMemberList & oTransform.Name & ", "
                Next
                sMemberList = Left( sMemberList, ( Len( sMemberList ) - 2 ) )
        Else
                sMemberList = "(none found)"
        End If
        LogMessage sMemberList
        ShowConstructionHistory = sMemberList
End Function
' Output of above script:
'INFO : "(none found)"
'INFO : "Bend Op"
'INFO : "Twist Op, Bend Op"