## DuplicateSymmetry

### Introduced

v1.5

### Description

Duplicates objects and mirrors the resulting objects across a given plane.
This command will fail where Duplicate fails.
At the moment, this works for chains and some simple geometry. DuplicateSymmetry on bone primitives behaves like simple geometry rather than chains. Some issues still have to be resolved in order to apply it to any geometry (use at your own risk).

### Scripting Syntax

    oReturn = DuplicateSymmetry( InputObjs, [DuplicateConstraints], [ShareParent], [SymmetryPlaneA], [SymmetryPlaneB], [SymmetryPlaneC], [SymmetryPlaneD], [S3D_CMDARG_FREEZESCL] );

### Return Value

Returns an XSICollection object that contains the list of symmetric objects

### Parameters

Parameter | Type | Description
--- | --- | ---
InputObjs | String | List of objects to duplicate and mirror. Default Value: Selected objects
DuplicateConstraints | Boolean | Duplicate the constraints on the objects? Default Value: True
ShareParent | Boolean | Share the same parent Default Value: False
Possible Values: | Description:
True | Will parent the symmetric object under the same parent as the original (or the symmetric parent, if any)
False | Will parent the symmetric object under the scene root.
SymmetryPlaneA | Double | (Symmetry plane equation) Ax + Default Value: 0
SymmetryPlaneB | Double | (Symmetry plane equation) By + Default Value: 0
SymmetryPlaneC | Double | (Symmetry plane equation) Cz = Default Value: 1
SymmetryPlaneD | Double | (Symmetry plane equation) D Default Value: 0
S3D_CMDARG_FREEZESCL | Boolean | Freezes negative scaling values created during the symmetry operation. Default Value: True
Possible Values: | Description:
True | Final scaling will be the absolute value of the original scaling. A center operator may appear in the construction history.
False | Duplicated objects will have negative scaling.

### Examples

#### VBScript Example

    ' This example creates a 3D chain, duplicates it

    Create3DSkeleton -1.330, -5.732, 0.000, 2.050, -3.737, 0.000, 0.000, 0.000, 1.000

    AppendBone , 0.000, -4.556, -2.271, False

    AppendBone , 1.219, -7.006, 0.000, False

    SelectObj "root", "BRANCH"

    set obj = DuplicateSymmetry(, True, False, 0, 1, 0, 0, True)

### See Also

Duplicate