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"