v1.0
Imports an action from a file. The imported action is added to
the animation source list of the specified model.
The file formats accepted by this command are:
- External Softimage Native Binary Action (".eani") files.
- dotXSI Action (".xsi") files.
- Softimage Preset Action(".Preset") files.
This command supports downloading most file types off the internet.
If the filename specified is a URL then the file will be downloaded
locally before the command is executed. However URL arguments are
not supported for Soft3D animation files.
oReturn = ImportAction( Model, [FileName], [Name], [ActionStorage] ); |
Returns the action as an ActionSource.
Parameter | Type | Description |
---|---|---|
Model | String or Model | Model into which the action is imported. |
FileName | String | Full path to the file to import.
Default Value: User is prompted to select a file |
Name | String | Name of the new action.
Default Value: The file name |
ActionStorage | Integer based on the values listed in siAssetStorageType | Whether the imported action will be saved internally or
externally. If you specify -1 it will automatically detect what kind of file it is and set it. Default Value: 0 (saved in the scene) |
/* This example demonstrates how to export and import an action. It also shows how to create an action source from a static source and then how to access the static source from the imported action. */ NewScene( null, false ); var root = ActiveSceneRoot; // Create a static action var obj = root.AddGeometry( "Cone", "MeshSurface" ); var targets = new Array( obj.rotx.FullName, obj.roty.FullName, obj.rotz.FullName ); var statics = new Array( 22.5, 90, 45 ); var actives = new Array( true, true, true ); var src = root.AddActionSource( "StoredAnimStaticAction", targets, statics, actives ); // Export the action var path = Application.InstallationPath( siProjectPath ) + "\\Actions"; var filepath = path + "\\TestImportAction.eani"; ExportAction( src, filepath ); // Import the action into a new scene but this time in a different model NewScene( null, false ); var mdl = ActiveSceneRoot.AddModel(); mdl.Name = "TestActionModel"; var newsrc = ImportAction( mdl, filepath, "ImportedAction4Test", -1 ); if ( newsrc.SourceItems.Count > 0 ) { LogMessage( "Imported action contains these items: " ); for ( var s=0; s<newsrc.SourceItems.Count; s++ ) { var datasrc = newsrc.SourceItems(s).Source; LogMessage( "\t" + datasrc ); } } else { LogMessage( "Imported action is a(n) " + ClassName(newsrc) ); } // Expected results: //INFO : Imported action contains these items: //INFO : StaticSource //INFO : StaticSource //INFO : StaticSource |