Skip to main content

Motion Standalone Preprocessor C# library 2026 R1

Class CouplerAPI

Last update: 09.03.2026

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

This class implements APIs for class.

public static class CouplerAPI

Inheritance

object ← CouplerAPI

Extension Methods

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

Methods

CreateCable(SubSystemDocument, Obj, Obj, ExpressionValueVariable?, ExpressionValueVariable?, string, SymmetricType)

Create with builder.

[NotNull(new string[] { "subSystemDocument" })]
[NotNullObj(new string[] { "firstJoint", "secondJoint" })]
[MatchTypeObj(new object[] { "firstJoint", typeof(ITranslationalMotionComponent), "secondJoint", typeof(ITranslationalMotionComponent) })]
public static Obj CreateCable(this SubSystemDocument subSystemDocument, Obj firstJoint, Obj secondJoint, ExpressionValueVariable? firstRatio = null, ExpressionValueVariable? secondRatio = null, string name = "", SymmetricType symmetricType = SymmetricType.None)

Parameters

subSystemDocument SubSystemDocument

The document to create the coupler cable.

firstJoint Obj

The first joint to create the coupler cable.

secondJoint Obj

The second joint of the coupler cable.

firstRatio ExpressionValueVariable?

The first ratio of the coupler cable.

secondRatio ExpressionValueVariable?

The second ratio of the coupler cable.

name string

The name of the .

symmetricType SymmetricType

The symmetric type of the new .

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'subSystemDocument', 'firstJoint', 'secondJoint' is null.

CreateCoupler(SubSystemDocument, Obj, Obj, MotionType, MotionType, ExpressionValueVariable?, ExpressionValueVariable?, string, SymmetricType)

Create with builder.

[NotNull(new string[] { "subSystemDocument" })]
[NotNullObj(new string[] { "firstJoint", "secondJoint" })]
[MatchTypeObj(new object[] { "firstJoint", typeof(ICouplerComponent), "secondJoint", typeof(ICouplerComponent) })]
public static Obj CreateCoupler(this SubSystemDocument subSystemDocument, Obj firstJoint, Obj secondJoint, PropertyCouplerBase.MotionType firstType = MotionType.Translation, PropertyCouplerBase.MotionType secondType = MotionType.Translation, ExpressionValueVariable? firstRatio = null, ExpressionValueVariable? secondRatio = null, string name = "", SymmetricType symmetricType = SymmetricType.None)

Parameters

subSystemDocument SubSystemDocument

The document to create the coupler.

firstJoint Obj

The first joint to create the coupler.

secondJoint Obj

The second joint of the coupler.

firstType PropertyCouplerBase.MotionType

The first type of the coupler.

secondType PropertyCouplerBase.MotionType

The second type of the coupler.

firstRatio ExpressionValueVariable?

The first ratio of the coupler.

secondRatio ExpressionValueVariable?

The second ratio of the coupler.

name string

The name of the .

symmetricType SymmetricType

The symmetric type of the new .

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'subSystemDocument', 'firstJoint', 'secondJoint' is null.

CreateCoupler(SubSystemDocument, Obj, Obj, Obj, MotionType, MotionType, MotionType, ExpressionValueVariable?, ExpressionValueVariable?, ExpressionValueVariable?, string, SymmetricType)

Create with builder.

[NotNull(new string[] { "subSystemDocument" })]
[NotNullObj(new string[] { "firstJoint", "secondJoint", "thirdJoint" })]
[MatchTypeObj(new object[] { "firstJoint", typeof(ICouplerComponent), "secondJoint", typeof(ICouplerComponent), "thirdJoint", typeof(ICouplerComponent) })]
public static Obj CreateCoupler(this SubSystemDocument subSystemDocument, Obj firstJoint, Obj secondJoint, Obj thirdJoint, PropertyCouplerBase.MotionType firstType = MotionType.Translation, PropertyCouplerBase.MotionType secondType = MotionType.Translation, PropertyCouplerBase.MotionType thirdType = MotionType.Translation, ExpressionValueVariable? firstRatio = null, ExpressionValueVariable? secondRatio = null, ExpressionValueVariable? thirdRatio = null, string name = "", SymmetricType symmetricType = SymmetricType.None)

Parameters

subSystemDocument SubSystemDocument

The document to create the coupler.

firstJoint Obj

The first joint to create the coupler.

secondJoint Obj

The second joint of the coupler.

thirdJoint Obj

The third joint of the coupler.

firstType PropertyCouplerBase.MotionType

The first type of the coupler.

secondType PropertyCouplerBase.MotionType

The second type of the coupler.

thirdType PropertyCouplerBase.MotionType

The third type of the coupler.

firstRatio ExpressionValueVariable?

The first ratio of the coupler.

secondRatio ExpressionValueVariable?

The second ratio of the coupler.

thirdRatio ExpressionValueVariable?

The third ratio of the coupler.

name string

The name of the .

symmetricType SymmetricType

The symmetric type of the new .

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'subSystemDocument', 'firstJoint', 'secondJoint', 'thirdJoint' is null.

CreateGear(SubSystemDocument, Obj, Obj, ExpressionValueVariable?, ExpressionValueVariable?, string, SymmetricType)

Create with builder.

[NotNull(new string[] { "subSystemDocument" })]
[NotNullObj(new string[] { "firstJoint", "secondJoint" })]
[MatchTypeObj(new object[] { "firstJoint", typeof(IRotationalMotionComponent), "secondJoint", typeof(IRotationalMotionComponent) })]
public static Obj CreateGear(this SubSystemDocument subSystemDocument, Obj firstJoint, Obj secondJoint, ExpressionValueVariable? firstRatio = null, ExpressionValueVariable? secondRatio = null, string name = "", SymmetricType symmetricType = SymmetricType.None)

Parameters

subSystemDocument SubSystemDocument

The document to create the coupler gear.

firstJoint Obj

The first joint to create the coupler gear.

secondJoint Obj

The second joint of the coupler gear.

firstRatio ExpressionValueVariable?

The first ratio of the coupler gear.

secondRatio ExpressionValueVariable?

The second ratio of the coupler gear.

name string

The name of the .

symmetricType SymmetricType

The symmetric type of the new .

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'subSystemDocument', 'firstJoint', 'secondJoint' is null.

CreateRackAndPinion(SubSystemDocument, Obj, Obj, ExpressionValueVariable?, ExpressionValueVariable?, string, SymmetricType)

Create with builder.

[NotNull(new string[] { "subSystemDocument" })]
[NotNullObj(new string[] { "firstJoint", "secondJoint" })]
[MatchTypeObj(new object[] { "firstJoint", typeof(ITranslationalMotionComponent), "secondJoint", typeof(IRotationalMotionComponent) })]
public static Obj CreateRackAndPinion(this SubSystemDocument subSystemDocument, Obj firstJoint, Obj secondJoint, ExpressionValueVariable? firstRatio = null, ExpressionValueVariable? secondRatio = null, string name = "", SymmetricType symmetricType = SymmetricType.None)

Parameters

subSystemDocument SubSystemDocument

The document to create the coupler rack and pinion.

firstJoint Obj

The first joint to create the coupler rack and pinion.

secondJoint Obj

The second joint of the coupler rack and pinion.

firstRatio ExpressionValueVariable?

The first ratio of the coupler rack and pinion.

secondRatio ExpressionValueVariable?

The second ratio of the coupler rack and pinion.

name string

The name of the .

symmetricType SymmetricType

The symmetric type of the new .

Returns

Obj

The new object that is created by this API.

Exceptions

ArgumentNullException

Will be thrown if 'subSystemDocument', 'firstJoint', 'secondJoint' is null.

Connect with Ansys