Now i'm use three simple scripts for quick toggling from object filter to vertex/edge/polygon filter.
This example of Object/vertex toggle script. For each hotkey i'm use single script
Code: Select all
currFilter = selection.filter;
if ( currFilter.name == "object" )
SetSelFilter ( "Vertex" );
else if ( currFilter.name == "Vertex" )
SetSelFilter ( "object" );
else if ( currFilter.name == "Edge" )
SetSelFilter ( "Vertex" );
else if ( currFilter.name == "Polygon" )
SetSelFilter ( "Vertex" );
For example: if i'm select polymesh (avalible point/edge/polygon filters for toggling), if curve (avalible point, isopoint, knot for toggling) and etc
But i dont uderstand how i can get current selection type?
Maybe something like this:
Code: Select all
currFilter = selection.filter;
currType = selection.type;
if (currType == "polymesh")
{
if ( currFilter.name == "object" )
SetSelFilter ( "Edge" );
else if ( currFilter.name == "Edge" )
SetSelFilter ( "object" );
else if ( currFilter.name == "Polygon" )
SetSelFilter ( "Edge" );
else if ( currFilter.name == "Vertex" )
SetSelFilter ( "Edge" );
}
if (currType == "crvlist")
{
if ( currFilter.name == "object" )
SetSelFilter ( "Isopoint" );
else if ( currFilter.name == "isopoint" )
SetSelFilter ( "object" );
else if ( currFilter.name == "Knot" )
SetSelFilter ( "Isopoint" );
else if ( currFilter.name == "Vertex" )
SetSelFilter ( "Isopoint" );
}
And second question about scripting. I have script for quick subdivision level toggling
Code: Select all
Dim objSelected, intSubDLevel, intNewLevel
Subdivide
Sub Subdivide
Set objSelected = SIFilter( null, "sceneobject", true, siQuickSearch )
If typename(objSelected) = "Nothing" Then
objSelected="Nothing"
LogMessage "Clear selection "
Exit Sub
Else
intSubDLevel = GetValue (objSelected & ".geomapprox.gapproxmosl")
' LogMessage "SubD Level : " & intSubDLevel
If intSubDLevel => 4 Then
intNewLevel = 0
Else
intNewLevel = 4
End If
End If
' sets the selected object's sub-d level
SetValue objSelected & ".geomapprox.gapproxmosl", intNewLevel
End Sub
Thanks for reading