
# IMBA2_SDK_Document interface

*No description yet.*

```csharp
public interface IMBA2_SDK_Document : IServerDocument
```

**Namespace:** EDP · **Assembly:** Altium.SDK.Interfaces

**Inherits:** [IServerDocument](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md)

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [AddMate](#addmate) | [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md) |  |
| [AddMate2](#addmate2) | [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md) |  |
| [AddMate3](#addmate3) | [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md) |  |
| [AddMate4](#addmate4) | [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md) |  |
| [AddMateWithSettings](#addmatewithsettings) | [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md) |  |
| [AddMBAPart](#addmbapart) | [IMBA2_SDK_ArrayList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_ArrayList.md) |  |
| [AddPCBPart](#addpcbpart) | [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md) |  |
| [AddSTEPPart](#addsteppart) | [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md) |  |
| [CalculateMateSettings](#calculatematesettings) | [MBAMateSettingsWithOrientation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAMateSettingsWithOrientation.md) |  |
| [ConvertLocalToWorldDirection](#convertlocaltoworlddirection) | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) |  |
| [ConvertLocalToWorldPosition](#convertlocaltoworldposition) | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) |  |
| [ConvertWorldToLocalDirection](#convertworldtolocaldirection) | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) |  |
| [ConvertWorldToLocalPosition](#convertworldtolocalposition) | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) |  |
| [Export3DStep](#export3dstep) | `void` |  |
| [FindFaceByRay](#findfacebyray) | [IMBA2_SDK_Face](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Face.md) |  |
| [FindFaceOfComponentByRay](#findfaceofcomponentbyray) | [IMBA2_SDK_Face](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Face.md) |  |
| [FindFaceOfPartByRay](#findfaceofpartbyray) | [IMBA2_SDK_Face](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Face.md) |  |
| [FindNearestMatingItemByRay](#findnearestmatingitembyray) | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) |  |
| [FindNearestMatingItemOfComponentByRay](#findnearestmatingitemofcomponentbyray) | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) |  |
| [FindNearestMatingItemOfFaceByRay](#findnearestmatingitemoffacebyray) | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) |  |
| [FindNearestMatingItemOfPartByRay](#findnearestmatingitemofpartbyray) | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) |  |
| [GetDataModel](#getdatamodel) | [IMBA2_SDK_DataModel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_DataModel.md) |  |
| [GetPart](#getpart) | [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md) |  |
| [GetPartCount](#getpartcount) | `int` |  |
| [GetSceneData](#getscenedata) | `string` |  |
| [MeasureDistanceComponentToComponent](#measuredistancecomponenttocomponent) | `double` |  |
| [MeasureDistanceComponentToFace](#measuredistancecomponenttoface) | `double` |  |
| [MeasureDistanceFaceToFace](#measuredistancefacetoface) | `double` |  |
| [RemoveMate](#removemate) | `bool` |  |
| [RemovePart](#removepart) | `bool` |  |
| [SetMateOrientation](#setmateorientation) | `void` |  |
| [SetMateSettings](#setmatesettings) | `void` |  |
| [SetMateType](#setmatetype) | `void` |  |
| [SetPartTransform](#setparttransform) | `void` |  |
| [SetPartTransform_ForPreview](#setparttransform_forpreview) | `void` |  |
| [SetPartTransformByPartId](#setparttransformbypartid) | `void` |  |
| [UpdateAllParts](#updateallparts) | `void` |  |
| [UpdatePart](#updatepart) | `void` |  |

### AddMate

*No description yet.*

```csharp
IMBA2_SDK_MatingPair AddMate(IMBA2_SDK_MatingItem argItemA, IMBA2_SDK_MatingItem argItemB);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argItemA` | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) | value |
| `argItemB` | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) | value |

**Returns:** [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### AddMate2

*No description yet.*

```csharp
IMBA2_SDK_MatingPair AddMate2(IMBA2_SDK_MatingItem argItemA, IMBA2_SDK_MatingItem argItemB, TMBAMateType argMateType);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argItemA` | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) | value |
| `argItemB` | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) | value |
| `argMateType` | [TMBAMateType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TMBAMateType.md) | value |

**Returns:** [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### AddMate3

*No description yet.*

```csharp
IMBA2_SDK_MatingPair AddMate3(IMBA2_SDK_MatingItem argItemA, IMBA2_SDK_MatingItem argItemB, TMBAMateOrientation argMateOrientation);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argItemA` | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) | value |
| `argItemB` | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) | value |
| `argMateOrientation` | [TMBAMateOrientation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TMBAMateOrientation.md) | value |

**Returns:** [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### AddMate4

*No description yet.*

```csharp
IMBA2_SDK_MatingPair AddMate4(IMBA2_SDK_MatingItem argItemA, IMBA2_SDK_MatingItem argItemB, TMBAMateType argMateType, TMBAMateOrientation argMateOrientation);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argItemA` | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) | value |
| `argItemB` | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) | value |
| `argMateType` | [TMBAMateType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TMBAMateType.md) | value |
| `argMateOrientation` | [TMBAMateOrientation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TMBAMateOrientation.md) | value |

**Returns:** [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### AddMateWithSettings

*No description yet.*

```csharp
IMBA2_SDK_MatingPair AddMateWithSettings(IMBA2_SDK_MatingItem argItemA, IMBA2_SDK_MatingItem argItemB, TMBAMateType argMateType, TMBAMateOrientation argMateOrientation, MBAMateSettings argMateSettings);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argItemA` | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) | value |
| `argItemB` | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) | value |
| `argMateType` | [TMBAMateType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TMBAMateType.md) | value |
| `argMateOrientation` | [TMBAMateOrientation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TMBAMateOrientation.md) | value |
| `argMateSettings` | [MBAMateSettings](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAMateSettings.md) | value |

**Returns:** [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### AddMBAPart

*No description yet.*

```csharp
IMBA2_SDK_ArrayList AddMBAPart(string argFileName);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFileName` | `string` | value |

**Returns:** [IMBA2_SDK_ArrayList](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_ArrayList.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### AddPCBPart

*No description yet.*

```csharp
IMBA2_SDK_Part AddPCBPart(string argFileName);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFileName` | `string` | value |

**Returns:** [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### AddSTEPPart

*No description yet.*

```csharp
IMBA2_SDK_Part AddSTEPPart(string argFileName);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFileName` | `string` | value |

**Returns:** [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### CalculateMateSettings

*No description yet.*

```csharp
MBAMateSettingsWithOrientation CalculateMateSettings(IMBA2_SDK_MatingItem argItemA, IMBA2_SDK_MatingItem argItemB);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argItemA` | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) | value |
| `argItemB` | [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md) | value |

**Returns:** [MBAMateSettingsWithOrientation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAMateSettingsWithOrientation.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### ConvertLocalToWorldDirection

*No description yet.*

```csharp
MBAVec3 ConvertLocalToWorldDirection(IMBA2_SDK_Part argPart, MBAVec3 argDirection);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPart` | [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md) | value |
| `argDirection` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |

**Returns:** [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### ConvertLocalToWorldPosition

*No description yet.*

```csharp
MBAVec3 ConvertLocalToWorldPosition(IMBA2_SDK_Part argPart, MBAVec3 argPosition);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPart` | [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md) | value |
| `argPosition` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |

**Returns:** [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### ConvertWorldToLocalDirection

*No description yet.*

```csharp
MBAVec3 ConvertWorldToLocalDirection(IMBA2_SDK_Part argPart, MBAVec3 argDirection);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPart` | [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md) | value |
| `argDirection` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |

**Returns:** [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### ConvertWorldToLocalPosition

*No description yet.*

```csharp
MBAVec3 ConvertWorldToLocalPosition(IMBA2_SDK_Part argPart, MBAVec3 argPosition);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPart` | [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md) | value |
| `argPosition` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |

**Returns:** [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### Export3DStep

*No description yet.*

```csharp
void Export3DStep(string argFileName, string argParams);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFileName` | `string` | value |
| `argParams` | `string` | value |

**Returns:** nothing (`void`)

### FindFaceByRay

*No description yet.*

```csharp
IMBA2_SDK_Face FindFaceByRay(MBAVec3 argRayOrigin, MBAVec3 argRayDirection, double argRayRadius);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argRayOrigin` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayDirection` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayRadius` | `double` | value |

**Returns:** [IMBA2_SDK_Face](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Face.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### FindFaceOfComponentByRay

*No description yet.*

```csharp
IMBA2_SDK_Face FindFaceOfComponentByRay(IMBA2_SDK_Component argComponent, MBAVec3 argRayOrigin, MBAVec3 argRayDirection, double argRayRadius);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argComponent` | [IMBA2_SDK_Component](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Component.md) | value |
| `argRayOrigin` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayDirection` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayRadius` | `double` | value |

**Returns:** [IMBA2_SDK_Face](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Face.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### FindFaceOfPartByRay

*No description yet.*

```csharp
IMBA2_SDK_Face FindFaceOfPartByRay(IMBA2_SDK_Part argPart, MBAVec3 argRayOrigin, MBAVec3 argRayDirection, double argRayRadius);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPart` | [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md) | value |
| `argRayOrigin` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayDirection` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayRadius` | `double` | value |

**Returns:** [IMBA2_SDK_Face](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Face.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### FindNearestMatingItemByRay

*No description yet.*

```csharp
IMBA2_SDK_MatingItem FindNearestMatingItemByRay(MBAVec3 argRayOrigin, MBAVec3 argRayDirection, double argRayRadius);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argRayOrigin` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayDirection` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayRadius` | `double` | value |

**Returns:** [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### FindNearestMatingItemOfComponentByRay

*No description yet.*

```csharp
IMBA2_SDK_MatingItem FindNearestMatingItemOfComponentByRay(IMBA2_SDK_Component argComponent, MBAVec3 argRayOrigin, MBAVec3 argRayDirection, double argRayRadius);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argComponent` | [IMBA2_SDK_Component](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Component.md) | value |
| `argRayOrigin` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayDirection` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayRadius` | `double` | value |

**Returns:** [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### FindNearestMatingItemOfFaceByRay

*No description yet.*

```csharp
IMBA2_SDK_MatingItem FindNearestMatingItemOfFaceByRay(IMBA2_SDK_Face argFace, MBAVec3 argRayOrigin, MBAVec3 argRayDirection);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFace` | [IMBA2_SDK_Face](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Face.md) | value |
| `argRayOrigin` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayDirection` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |

**Returns:** [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### FindNearestMatingItemOfPartByRay

*No description yet.*

```csharp
IMBA2_SDK_MatingItem FindNearestMatingItemOfPartByRay(IMBA2_SDK_Part argPart, MBAVec3 argRayOrigin, MBAVec3 argRayDirection, double argRayRadius);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPart` | [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md) | value |
| `argRayOrigin` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayDirection` | [MBAVec3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAVec3.md) | value |
| `argRayRadius` | `double` | value |

**Returns:** [IMBA2_SDK_MatingItem](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingItem.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### GetDataModel

*No description yet.*

```csharp
IMBA2_SDK_DataModel GetDataModel();
```

**Returns:** [IMBA2_SDK_DataModel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_DataModel.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### GetPart

*No description yet.*

```csharp
IMBA2_SDK_Part GetPart(int argIndex);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argIndex` | `int` | value |

**Returns:** [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md)

Extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`).

### GetPartCount

*No description yet.*

```csharp
int GetPartCount();
```

**Returns:** `int`

### GetSceneData

*No description yet.*

```csharp
string GetSceneData();
```

**Returns:** `string`

### MeasureDistanceComponentToComponent

*No description yet.*

```csharp
double MeasureDistanceComponentToComponent(IMBA2_SDK_Component argComponentA, IMBA2_SDK_Component argComponentB);
double MeasureDistanceComponentToComponent(object argComponentA, object argComponentB);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argComponentA` | [IMBA2_SDK_Component](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Component.md) | value |
| `argComponentB` | [IMBA2_SDK_Component](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Component.md) | value |

**Returns:** `double`

The first overload is an extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

### MeasureDistanceComponentToFace

*No description yet.*

```csharp
double MeasureDistanceComponentToFace(IMBA2_SDK_Component argComponent, IMBA2_SDK_Face argFace);
double MeasureDistanceComponentToFace(object argComponent, object argFace);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argComponent` | [IMBA2_SDK_Component](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Component.md) | value |
| `argFace` | [IMBA2_SDK_Face](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Face.md) | value |

**Returns:** `double`

The first overload is an extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

### MeasureDistanceFaceToFace

*No description yet.*

```csharp
double MeasureDistanceFaceToFace(IMBA2_SDK_Face argFaceA, IMBA2_SDK_Face argFaceB);
double MeasureDistanceFaceToFace(object argFaceA, object argFaceB);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argFaceA` | [IMBA2_SDK_Face](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Face.md) | value |
| `argFaceB` | [IMBA2_SDK_Face](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Face.md) | value |

**Returns:** `double`

The first overload is an extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

### RemoveMate

*No description yet.*

```csharp
bool RemoveMate(IMBA2_SDK_MatingPair argMate);
bool RemoveMate(object argMate);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argMate` | [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md) | value |

**Returns:** `bool`

The first overload is an extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

### RemovePart

*No description yet.*

```csharp
bool RemovePart(IMBA2_SDK_Part argPart);
bool RemovePart(object argPart);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPart` | [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md) | value |

**Returns:** `bool`

The first overload is an extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

### SetMateOrientation

*No description yet.*

```csharp
void SetMateOrientation(IMBA2_SDK_MatingPair argMate, TMBAMateOrientation argMateOrientation);
void SetMateOrientation(object argMate, int argMateOrientation);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argMate` | [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md) | value |
| `argMateOrientation` | [TMBAMateOrientation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TMBAMateOrientation.md) | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

### SetMateSettings

*No description yet.*

```csharp
void SetMateSettings(IMBA2_SDK_MatingPair argMate, MBAMateSettings argSettings);
void SetMateSettings(object argMate, IMBAMateSettings argSettings);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argMate` | [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md) | value |
| `argSettings` | [MBAMateSettings](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAMateSettings.md) | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

### SetMateType

*No description yet.*

```csharp
void SetMateType(IMBA2_SDK_MatingPair argMate, TMBAMateType argMateType);
void SetMateType(object argMate, int argMateType);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argMate` | [IMBA2_SDK_MatingPair](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_MatingPair.md) | value |
| `argMateType` | [TMBAMateType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/TMBAMateType.md) | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

### SetPartTransform

*No description yet.*

```csharp
void SetPartTransform(IMBA2_SDK_Part argPart, MBAMat4 argTransform);
void SetPartTransform(object argPart, IMBAMat4 argTransform);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPart` | [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md) | value |
| `argTransform` | [MBAMat4](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAMat4.md) | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

### SetPartTransform_ForPreview

*No description yet.*

```csharp
void SetPartTransform_ForPreview(int argPartId, MBAMat4 argTransform);
void SetPartTransform_ForPreview(int argPartId, IMBAMat4 argTransform);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPartId` | `int` | value |
| `argTransform` | [MBAMat4](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAMat4.md) | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

### SetPartTransformByPartId

*No description yet.*

```csharp
void SetPartTransformByPartId(int argPartId, MBAMat4 argTransform);
void SetPartTransformByPartId(int argPartId, IMBAMat4 argTransform);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPartId` | `int` | value |
| `argTransform` | [MBAMat4](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/MBAMat4.md) | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

### UpdateAllParts

*No description yet.*

```csharp
void UpdateAllParts();
```

**Returns:** nothing (`void`)

### UpdatePart

*No description yet.*

```csharp
void UpdatePart(IMBA2_SDK_Part argPart);
void UpdatePart(object argPart);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPart` | [IMBA2_SDK_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_Part.md) | value |

**Returns:** nothing (`void`)

The first overload is an extension method of `IMBA2_SDK_DocumentHelper` (`using EDP;`) with typed parameters; the second is declared by the interface.

## Inherited members

- From [IServerDocument](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md): [AcquireDataFileHandle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#acquiredatafilehandle), [AcquireFileOwnership](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#acquirefileownership), [AddView](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#addview), [BeingClosed](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#beingclosed), [CanCreateSnippet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#cancreatesnippet), [CanPlaceSnippet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#canplacesnippet), [CreateSnippetFile](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#createsnippetfile), [DocumentDirectoryChanged](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#documentdirectorychanged), [DoFileLoad](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#dofileload), [DoFileSave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#dofilesave), [DoSafeChangeFileNameAndSave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#dosafechangefilenameandsave), [DoSafeFileSave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#dosafefilesave), [FileModifiedDate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#filemodifieddate), [FileName](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#filename), [Focus](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#focus), [GetCanClose](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#getcanclose), [GetContextHelpTopicName](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#getcontexthelptopicname), [GetCount](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#getcount), [GetDocumentModifiedDate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#getdocumentmodifieddate), [GetKind](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#getkind), [GetServerModule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#getservermodule), [GetSnippetView](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#getsnippetview), [GetSupportsOwnSave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#getsupportsownsave), [GetView](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#getview), [GetViewByName](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#getviewbyname), [IsShown](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#isshown), [Modified](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#modified), [NotifyViews](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#notifyviews), [OwnsFile](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#ownsfile), [PlaceSnippet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#placesnippet), [ReleaseDataFileHandle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#releasedatafilehandle), [ReleaseFileOwnership](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#releasefileownership), [SupportsReload](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#supportsreload), [UpdateModifiedDate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#updatemodifieddate), [WarnIfOwnedByOther](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#warnifownedbyother), [ZoomSnippetContents](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/IServerDocument.md#zoomsnippetcontents)

## Returned by

[IMBA2_SDK_CoreObject.GetDocument](https://altiumdeveloper.github.io/ad-sdk-docs/reference/edp/IMBA2_SDK_CoreObject.md#getdocument)
