Skip to main content

Motion Standalone Preprocessor C# library 2026 R1

Class ChainedSystemAPI

Last update: 09.03.2026

Namespace: VM.API.Pre.Links
Assembly: VM.API.Pre.Links.dll

This class implements APIs for chained system.

public static class ChainedSystemAPI

Inheritance

object ← ChainedSystemAPI

Extension Methods

LinkPropertyItemCache.GetLinkProperties(object, LinkPropertyType), LinkPropertyItemCache.GetLinkPropertiesAndValues(object, LinkPropertyType), LinkPropertyItemCache.GetLinkedObjects<T>(object, LinkPropertyType)

Methods

AddObjectToActiveDocument(Obj, int, int, IEnumerable<string>, IEnumerable<TMatrix>, IEnumerable<Document3D>, bool)

Add object to active document.

[NotNullObj(new string[] { "chainedPlacing" })]
[NotNull(new string[] { "preFixed", "transforms", "segmentDocuments" })]
[MatchTypeObj(new object[] { "chainedPlacing", typeof(ChainedPlacing) })]
public static IEnumerable<Obj> AddObjectToActiveDocument(this Obj chainedPlacing, int numberOfSegment, int numberOfSegmentData, IEnumerable<string> preFixed, IEnumerable<TMatrix> transforms, IEnumerable<Document3D> segmentDocuments, bool isCreate)

Parameters

chainedPlacing Obj

The chained placing to add object.

numberOfSegment int

The number of segment.

numberOfSegmentData int

The number of segment data.

preFixed IEnumerable<string>

The pre-fixed names. The length is 'numberOfSegmentData'.

transforms IEnumerable<TMatrix>

The segment transforms. The length is 'numberOfSegment'.

segmentDocuments IEnumerable<Document3D>

The segment data documents. The length is 'numberOfSegmentData'.

isCreate bool

The create flag. If operation is modify state, You can put the value in 'false'.

Returns

IEnumerable<Obj>

The new segment list

Exceptions

ArgumentNullException

Will be thrown if 'chainedPlacing' arguments are empty.

ArgumentException

Will be thrown if type of 'chainedPlacing' is not .

ArgumentException

Will be thrown if type of 'preFixed', 'transforms', 'segmentDocuments' arguments are empty.

ArgumentException

Will be thrown if 'numberOfSegmentData' value is greater than 'numberOfSegment' value.

ArgumentException

Will be thrown if the length of 'preFixed' is not equal 'numberOfSegmentData' value.

ArgumentException

Will be thrown if the length of 'segmentDocuments' is not equal 'numberOfSegmentData' value.

ArgumentException

Will be thrown if the length of 'transforms' is not equal 'numberOfSegment' value.

ChangeObjectLayer(Obj, IEnumerable<Obj>, IEnumerable<bool>)

Change object layer.

[NotNullObj(new string[] { "chainedPlacing" })]
[NotNull(new string[] { "visibleObjects", "visibleStates" })]
[MatchTypeObj(new object[] { "chainedPlacing", typeof(ChainedPlacing) })]
public static void ChangeObjectLayer(this Obj chainedPlacing, IEnumerable<Obj> visibleObjects, IEnumerable<bool> visibleStates)

Parameters

chainedPlacing Obj

The chained placing to change object.

visibleObjects IEnumerable<Obj>

The objects to be changed.

visibleStates IEnumerable<bool>

The vislble flags.

Exceptions

ArgumentNullException

Will be thrown if 'chainedPlacing' arguments are empty.

ArgumentException

Will be thrown if type of 'chainedPlacing' is not .

ArgumentException

Will be thrown if type of 'visibleObjects', 'visibleStates' argument is empty.

CreateCenter(DocumentChainedPath, string, Color?, bool)

Create center roller with builder.

public static Obj CreateCenter(this DocumentChainedPath document, string bodyName = "", Color? color = null, bool isInterface = false)

Parameters

document DocumentChainedPath

The document to create the center roller solid body.

bodyName string

The name of the . If empty, default name starts with 'BD_' will be generated and used.

color Color?

The color of the new flat roller geometry. The default value is '0xBFAAAA'

isInterface bool

'true' if it is interface body. Otherwise, 'false'.

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' is null.

CreateCenter(PartDocumentChainedPath, Color?)

Create center roller with builder in part.

public static Obj CreateCenter(this PartDocumentChainedPath document, Color? color = null)

Parameters

document PartDocumentChainedPath

The document to create the center roller body.

color Color?

The color of the new flat roller geometry. The default value is '0xBFAAAA'

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' is null.

CreateChainedSystem(SubSystemDocument, IEnumerable<Obj>, string)

Create chained system .

[NotNull(new string[] { "document", "pathList" })]
public static Obj CreateChainedSystem(this SubSystemDocument document, IEnumerable<Obj> pathList, string name = "")

Parameters

document SubSystemDocument

The document to create the chained system.

pathList IEnumerable<Obj>

The path list.

name string

The name of the . If empty, default name starts with 'CPlacing_' will be generated and used.

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' , 'pathList' are null.

ArgumentException

Will be thrown if item type of 'pathList' is not .

CreateDouble(DocumentChainedPath, string, Color?, bool)

Create double roller with builder.

public static Obj CreateDouble(this DocumentChainedPath document, string bodyName = "", Color? color = null, bool isInterface = false)

Parameters

document DocumentChainedPath

The document to create the double roller solid body.

bodyName string

The name of the . If empty, default name starts with 'BD_' will be generated and used.

color Color?

The color of the new flat roller geometry. The default value is '0xBFAAAA'

isInterface bool

'true' if it is interface body. Otherwise, 'false'.

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' is null.

CreateDouble(PartDocumentChainedPath, Color?)

Create double roller with builder in part.

public static Obj CreateDouble(this PartDocumentChainedPath document, Color? color = null)

Parameters

document PartDocumentChainedPath

The document to create the double roller body.

color Color?

The color of the new flat roller geometry. The default value is '0xBFAAAA'

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' is null.

CreateFlat(DocumentChainedPath, string, Color?, bool)

Create flat roller with builder.

public static Obj CreateFlat(this DocumentChainedPath document, string bodyName = "", Color? color = null, bool isInterface = false)

Parameters

document DocumentChainedPath

The document to create the flat roller solid body.

bodyName string

The name of the . If empty, default name starts with 'BD_' will be generated and used.

color Color?

The color of the new flat roller geometry. The default value is '0xBFAAAA'

isInterface bool

'true' if it is interface body. Otherwise, 'false'.

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' is null.

CreateFlat(PartDocumentChainedPath, Color?)

Create flat roller with builder in part.

public static Obj CreateFlat(this PartDocumentChainedPath document, Color? color = null)

Parameters

document PartDocumentChainedPath

The document to create the flat roller body.

color Color?

The color of the new flat roller geometry. The default value is '0xBFAAAA'

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' is null.

CreateGeneral(DocumentChainedPath, string, Color?, bool)

Create general roller with builder.

public static Obj CreateGeneral(this DocumentChainedPath document, string bodyName = "", Color? color = null, bool isInterface = false)

Parameters

document DocumentChainedPath

The document to create the general roller solid body.

bodyName string

The name of the . If empty, default name starts with 'BD_' will be generated and used.

color Color?

The color of the new flat roller geometry. The default value is '0xBFAAAA'

isInterface bool

'true' if it is interface body. Otherwise, 'false'.

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' is null.

CreateGeneral(PartDocumentChainedPath, Color?)

Create general roller with builder in part.

public static Obj CreateGeneral(this PartDocumentChainedPath document, Color? color = null)

Parameters

document PartDocumentChainedPath

The document to create the general roller body.

color Color?

The color of the new flat roller geometry. The default value is '0xBFAAAA'

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' is null.

CreateSingle(DocumentChainedPath, string, Color?, bool)

Create single roller with builder.

public static Obj CreateSingle(this DocumentChainedPath document, string bodyName = "", Color? color = null, bool isInterface = false)

Parameters

document DocumentChainedPath

The document to create the single roller solid body.

bodyName string

The name of the . If empty, default name starts with 'BD_' will be generated and used.

color Color?

The color of the new flat roller geometry. The default value is '0xBFAAAA'

isInterface bool

'true' if it is interface body. Otherwise, 'false'.

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' is null.

CreateSingle(PartDocumentChainedPath, Color?)

Create single roller with builder in part.

public static Obj CreateSingle(this PartDocumentChainedPath document, Color? color = null)

Parameters

document PartDocumentChainedPath

The document to create the single roller body.

color Color?

The color of the new flat roller geometry. The default value is '0xBFAAAA'

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' is null.

CreateSprocket(DocumentChainedPath, string, Color?, bool)

Create sprocket with builder.

[NotNull(new string[] { "document" })]
public static Obj CreateSprocket(this DocumentChainedPath document, string bodyName = "", Color? color = null, bool isInterface = false)

Parameters

document DocumentChainedPath

The document to create the sprocket solid body.

bodyName string

The name of the . If empty, default name starts with 'BD_' will be generated and used.

color Color?

The color of the new flat roller geometry. The default value is '0xBFAAAA'

isInterface bool

'true' if it is interface body. Otherwise, 'false'.

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' is null.

CreateSprocket(PartDocumentChainedPath, Color?)

Create sprocket with builder in part.

[NotNull(new string[] { "document" })]
public static Obj CreateSprocket(this PartDocumentChainedPath document, Color? color = null)

Parameters

document PartDocumentChainedPath

The document to create the sprocket body.

color Color?

The color of the new flat roller geometry. The default value is '0xBFAAAA'

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'document' is null.

DeleteObjectList(Obj, IEnumerable<Obj>)

Add object to active document.

[NotNullObj(new string[] { "chainedPlacing" })]
[NotNull(new string[] { "deletedObjects" })]
[MatchTypeObj(new object[] { "chainedPlacing", typeof(ChainedPlacing) })]
public static void DeleteObjectList(this Obj chainedPlacing, IEnumerable<Obj> deletedObjects)

Parameters

chainedPlacing Obj

The chained placing to delete object.

deletedObjects IEnumerable<Obj>

The objects to be deleted.

Exceptions

ArgumentNullException

Will be thrown if 'chainedPlacing' arguments are empty.

ArgumentException

Will be thrown if type of 'chainedPlacing' is not .

ArgumentException

Will be thrown if type of 'deletedObjects' argument is empty.

Connect with Ansys