v3.5
Reconnects all operators in a model that have connections
outside the model and are not yet connected.
Usually, exporting a model strips away all objects that have
connections outside the model. But there are some operators that
are exported anyway (for example, enveloping operators). When
importing a model the connections to objects outside the model are
not established due to a lack of information concerning the
targets. But when importing referenced models the connections are
established automatically.
As of v6.5, the command takes an extra, optional parameter,
ConnectDuplicateObjects, specifying whether or not duplicate
objects are allowed. The previous behaviour was to always allow
them, but now this command only duplicates objects when this
parameter is passed in with a value of True.
ReconnectModel( Model, ExternalCnxMappingTemplate, [DeleteUnconnectedObjects], [AllowDuplicateObjects] ); |
Parameter | Type | Description |
---|---|---|
Model | String | Name of the model to reconnect. |
ExternalCnxMappingTemplate | String | This parameter contains a list of models separated by a comma, used to resolved the objects that we try to reconnect. |
DeleteUnconnectedObjects | Boolean | True to delete operators that were unable to be connected due
to missing targets.
Default Value: True |
AllowDuplicateObjects | Boolean | True to allow duplicate objects to be connected.
Default Value: False |
' ' This example demonstrates exporting a model, importing it back without the envelope ' being connected and then using the ReconnectModel command to reconnect the envelope ' NewScene , false ' Create a sphere in a model CreatePrim "Sphere", "MeshSurface" CreateModel ' Create a chain Create2DSkeleton -1.17507494684892E-02, 4.06772293980565, 0, -3.52522484054694E-02, 2.35128493630388E-02, 0, 0, 0, 0, 4 AppendBone "eff", -1.17507494684892E-02, -3.99718439171653, 0 ' Envelope the sphere on the chain. SelectObj "Model.sphere" ApplyFlexEnv "Model.sphere;root,bone,bone1,eff", False ' Export the model and delete it. SelectObj "Model" ExportModel "Model", Application.InstallationPath( siFactoryPath ) & "/Data/XSI_SAMPLES/Models/mymodel.emdl" SelectObj "Model", "BRANCH" DeleteObj "B:Model" ' Import the model back, the envelope will not be reconnected ImportModel Application.InstallationPath( siFactoryPath ) + "/Data/XSI_SAMPLES/Models/mymodel.emdl" SelectObj "eff", , True Translate , 1.83679023666235, 4.14069033985075, -0.414069033985075, siRelative, siView, siObj, siXYZ ' Reconnect the envelope in the model on the chain on the scene root. ReconnectModel "eff", "Scene_Root" |