The Certified Hardware page now includes 2013 info, and it lists both System Hardware and Graphics Hardware.
Hat tip: our friends at Up and Ready
The Certified Hardware page now includes 2013 info, and it lists both System Hardware and Graphics Hardware.
Hat tip: our friends at Up and Ready
I see that some of you have found the 2013 docs.
For your convenience, here’s a list of the new commands and Object Model methods, but with actual links 🙂
New Commands
New Methods (Object Model)
In 2013, you can use the selection view attribute to get the materials that are selected in the Material Manager.
Here’s a python custom menu item that shows how to do it. In summary, you do this:
import win32com.client from win32com.client import constants null = None false = 0 true = 1 def XSILoadPlugin( in_reg ): in_reg.Author = "blairs" in_reg.Name = "MaterialsManagerPlugin" in_reg.Major = 1 in_reg.Minor = 0 in_reg.RegisterMenu(constants.siMenuMaterialManagerTopLevelID,"Custom_Tools",false,false) #RegistrationInsertionPoint - do not remove this line return true def XSIUnloadPlugin( in_reg ): strPluginName = in_reg.Name Application.LogMessage(str(strPluginName) + str(" has been unloaded."),constants.siVerbose) return true def Custom_Tools_Init( in_ctxt ): oMenu = in_ctxt.Source oMenu.AddCallbackItem("Get Selected Materials","OnGetSelected") return true def OnGetSelected( c ): view = c.GetAttribute( "Target" ) Application.LogMessage( view ) Application.LogMessage( view.GetAttributeValue( "selection" ) ) for mat in view.GetAttributeValue( "selection" ).split(","): Application.LogMessage( mat ) return true
In Softimage 2013, you can use the ViewportCapture.DSCodec parameter to set the codec for your viewport captures.
DSCodec is an string that encodes the codec ID and parameters. To get the DSCodec value, do a viewport capture and set the Codec. Softimage will log the DSCodec value in the script history:
# INFO : ViewportCapture.DSCodec: AAAAFnNwdGxycHphAAAAAAAQAAACAAAAABR0cHJsAAACAAAeAAAAAAAYAAAAGGRyYXQAAAAAAAAAUwAAAQAAAAEAAAAACW1wc28AAAAADG1mcmEAAAAAAAAADHBzZnIAAAAAAAAACWJmcmEAAAAACm1wZXMAAAAAABxoYXJkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKc2RuZQAAAAAADGNtZnJhcHBsAAAAAA==
Here’s a Python snippet that shows how to set the DSCodec parameter:
from siutils import si si = si() # win32com.client.Dispatch('XSI.Application') from siutils import log # LogMessage from siutils import disp # win32com.client.Dispatch from siutils import C # win32com.client.constants def dispFix( badDispatch ): import win32com.client.dynamic # Re-Wraps a bad dispatch into a working one: return win32com.client.dynamic.Dispatch(badDispatch) oViewportCapture = dispFix(si.Dictionary.GetObject( "ViewportCapture" )) oViewportCapture.NestedObjects("File Name").Value = "C:\\test.mov"; oDSCodec = oViewportCapture.NestedObjects("DSCodec") #log( oDSCodec.Value ) # INFO : ViewportCapture.DSCodec: AAAAFnNwdGxycHphAAAAAAAQAAACAAAAABR0cHJsAAACAAAeAAAAAAAYAAAAGGRyYXQAAAAAAAAAUwAAAQAAAAEAAAAACW1wc28AAAAADG1mcmEAAAAAAAAADHBzZnIAAAAAAAAACWJmcmEAAAAACm1wZXMAAAAAABxoYXJkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKc2RuZQAAAAAADGNtZnJhcHBsAAAAAA== oDSCodec.Value = "AAAAFnNwdGxycHphAAAAAAAQAAACAAAAABR0cHJsAAACAAAeAAAAAAAYAAAAGGRyYXQAAAAAAAAAUwAAAQAAAAEAAAAACW1wc28AAAAADG1mcmEAAAAAAAAADHBzZnIAAAAAAAAACWJmcmEAAAAACm1wZXMAAAAAABxoYXJkAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAKc2RuZQAAAAAADGNtZnJhcHBsAAAAAA=="
In Softimage 2013, the XSICollection object now has a Filter method, so you can filter XSICollections by type, family, or path name.
oFilteredCollection = XSICollection.Filter( [Type], [Families], [Path] )
I updated my find all cameras script to use XSICollection.Filter, and here’s the timing results (form the same scene, but in 2013).
# INFO : getCameras_FindObjects finished in 0.033000 seconds # INFO : Found 8301 cameras # INFO : getCameras_FindObjects_w_Filter finished in 0.269000 seconds # INFO : Found 24 cameras # INFO : getCameras_FindObjects_w_SIFilter finished in 0.044000 seconds # INFO : Found 24 cameras # INFO : getCameras_FindObjects2 finished in 0.001000 seconds # INFO : Found 49 cameras # INFO : getCameras_FindObjects2_w_Filter finished in 0.003000 seconds # INFO : Found 24 cameras # INFO : getCameras_FindChildren2 finished in 0.149000 seconds # INFO : Found 24 cameras # INFO : getCameras_SelectAllUsingFilter finished in 0.035000 seconds # INFO : Found 24 cameras
FindObjects2_w_Filter 0.003000 seconds SelectAllUsingFilter 0.035000 seconds FindObjects_w_SIFilter 0.044000 seconds FindChildren2 0.149000 seconds FindObjects_w_Filter 0.269000 seconds
Here’s the updated script for Softimage 2013:
import time si = Application log = si.LogMessage from win32com.client import constants as C import win32com.client oCameraColl = win32com.client.Dispatch( "XSI.Collection" ) si.SetValue("preferences.scripting.cmdlog", False, "") def timeExecution(func): def closure(*args, **kwargs): startTime = time.time() try: ret = func(*args, **kwargs) except Exception, e: delta = time.time() - startTime log('Failed in %f seconds' % delta) raise delta = time.time() - startTime log('%s finished in %f seconds' % (func.__name__, delta)) return ret return closure @timeExecution def getCameras_FindObjects(): oCameraColl = Application.FindObjects( "", "{5FC0CCAE-3DC8-11D0-9449-00AA006D3165}" ) return oCameraColl.Count @timeExecution def getCameras_FindObjects_w_Filter(): oCameraColl = Application.FindObjects( "", "{5FC0CCAE-3DC8-11D0-9449-00AA006D3165}" ) oCameraColl = oCameraColl.Filter( "camera" ) oCameraColl.RemoveItems( oCameraColl.Filter( "", "", "CopyPaste*" ) ) oCameraColl.RemoveItems( oCameraColl.Filter( "", "", "View*" ) ) return oCameraColl.Count @timeExecution def getCameras_FindObjects_w_SIFilter(): oCameraColl = Application.FindObjects( "", "{5FC0CCAE-3DC8-11D0-9449-00AA006D3165}" ) oCameraColl = si.SIFilter( oCameraColl, "camera" ) oCameraColl.RemoveItems( oCameraColl.Filter( "", "", "CopyPaste*" ) ) oCameraColl.RemoveItems( oCameraColl.Filter( "", "", "View*" ) ) return oCameraColl.Count @timeExecution def getCameras_FindObjects2(): c = si.FindObjects2( C.siCameraID ) return c.Count @timeExecution def getCameras_FindObjects2_w_Filter(): cams = si.FindObjects2( C.siCameraID ) oCameraColl.Items = cams oCameraColl.RemoveItems( cams.Filter( "", "", "CopyPaste*" ) ) oCameraColl.RemoveItems( cams.Filter( "", "", "View*" ) ) return oCameraColl.Count @timeExecution def getCameras_FindChildren2(): cams = si.ActiveSceneRoot.FindChildren2("", "camera") return cams.Count @timeExecution def getCameras_SelectAllUsingFilter(): cams = si.SelectAllUsingFilter("Camera", "siIgnoreComponentVisibility", False, "") return cams.Count @timeExecution def getCameras_Model_FindObjects(): cams = si.ActiveSceneRoot.FindObjects( C.siCameraID ) return cams.Count log( 'Found %d cameras' % getCameras_FindObjects() ) log( 'Found %d cameras' % getCameras_FindObjects_w_Filter() ) log( 'Found %d cameras' % getCameras_FindObjects_w_SIFilter() ) log( 'Found %d cameras' % getCameras_FindObjects2() ) log( 'Found %d cameras' % getCameras_FindObjects2_w_Filter() ) log( 'Found %d cameras' % getCameras_FindChildren2() ) log( 'Found %d cameras' % getCameras_SelectAllUsingFilter() )
In 2011, there were just under 12K posts on the XSI mailing list. Here’s the top posts, posters, and keywords for 2011.
Top 10 posts:
I listed the top 11 because “Friday Flashback” is an ongoing thread.
Top 10 posters:
Top 10 keywords in Subject lines
I removed words like “Softimage”, “Autodesk”, “using”, “getting”, and “SI” before generating this word cloud.
The 2010 list retrospective, for comparison…
If you prefer Top 25 lists, here you go…
Continue reading
The WordPress.com stats helper monkeys prepared a 2011 annual report for this blog.
Here’s an excerpt:
The Louvre Museum has 8.5 million visitors per year. This blog was viewed about 180,000 times in 2011. If it were an exhibit at the Louvre Museum, it would take about 8 days for that many people to see it.
In 2011, there were 475 new posts, growing the total archive of this blog to 722 posts. There were 542 pictures uploaded, taking up a total of 354mb. That’s about a picture per day.
The busiest day of the year was October 21st with 1,182 views. The most popular post that day was Friday Flashback #40.
The latest Flash Player includes 32- and 64-bit versions of the player, so you can now see Flash content in NetView in 64-bit Softimage.
64-bit Windows 7 only!
Flash Player does not support 64-bit versions of Windows XP and Vista. Flash Player 11 now includes support for Windows 7 64-bit.