
# IPrintedElectronics interface

*No description yet.*

```csharp
public interface IPrintedElectronics
```

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

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [ArcApproximation](#arcapproximation) | `int` | get |  |

### ArcApproximation

*No description yet.*

```csharp
int GetState_ArcApproximation();
```

**Type:** `int` · **Access:** read-only

## Methods

| Method | Returns | Description |
| --- | --- | --- |
| [Clear](#clear) | `void` |  |
| [GetDielectricalLayers](#getdielectricallayers) | [IPCB_LayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerSet.md) |  |
| [GetDielectricBetweenTwoLayers](#getdielectricbetweentwolayers) | [IPCB_LayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerSet.md) |  |
| [GetElectricalLayers](#getelectricallayers) | [IPCB_LayerSet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerSet.md) |  |
| [GetLowerDielectricBetweenTwoLayers](#getlowerdielectricbetweentwolayers) | [IPCB_LayerObject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObject.md) |  |
| [GetMaxClearance](#getmaxclearance) | `int` |  |
| [GetMaxViaSizeOnElectricalLayers](#getmaxviasizeonelectricallayers) | `int` |  |
| [ProducePrimitiveToCheck](#produceprimitivetocheck) | `bool` |  |
| [ProducePrimitiveToCheckOnTopLayerInGroup](#produceprimitivetocheckontoplayeringroup) | `bool` |  |
| [RemovePrimitive](#removeprimitive) | `void` |  |

### Clear

*No description yet.*

```csharp
void Clear();
```

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

### GetDielectricalLayers

*No description yet.*

```csharp
IPCB_LayerSet GetDielectricalLayers();
```

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

Extension method of `IPrintedElectronicsHelper` (`using PCB;`).

### GetDielectricBetweenTwoLayers

*No description yet.*

```csharp
IPCB_LayerSet GetDielectricBetweenTwoLayers(V7_LayerBase argUpperLayer, V7_LayerBase argLowerLayer);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argUpperLayer` | [V7_LayerBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_LayerBase.md) | value |
| `argLowerLayer` | [V7_LayerBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_LayerBase.md) | value |

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

Extension method of `IPrintedElectronicsHelper` (`using PCB;`).

### GetElectricalLayers

*No description yet.*

```csharp
IPCB_LayerSet GetElectricalLayers();
```

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

Extension method of `IPrintedElectronicsHelper` (`using PCB;`).

### GetLowerDielectricBetweenTwoLayers

*No description yet.*

```csharp
IPCB_LayerObject GetLowerDielectricBetweenTwoLayers(V7_LayerBase argUpperLayer, V7_LayerBase argLowerLayer);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argUpperLayer` | [V7_LayerBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_LayerBase.md) | value |
| `argLowerLayer` | [V7_LayerBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_LayerBase.md) | value |

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

Extension method of `IPrintedElectronicsHelper` (`using PCB;`).

### GetMaxClearance

*No description yet.*

```csharp
int GetMaxClearance();
```

**Returns:** `int`

### GetMaxViaSizeOnElectricalLayers

*No description yet.*

```csharp
int GetMaxViaSizeOnElectricalLayers(IPCB_Primitive argPrimitive);
int GetMaxViaSizeOnElectricalLayers(object argPrimitive);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPrimitive` | [IPCB_Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md) | value |

**Returns:** `int`

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

### ProducePrimitiveToCheck

*No description yet.*

```csharp
bool ProducePrimitiveToCheck(IPCB_Primitive argPrimitive1, IPCB_Primitive argPrimitive2, ref IPCB_Primitive argUpperPrimitive, ref IPCB_Primitive argLowerPrimitive);
bool ProducePrimitiveToCheck(object argPrimitive1, object argPrimitive2, ref object argUpperPrimitive, ref object argLowerPrimitive);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPrimitive1` | [IPCB_Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md) | value |
| `argPrimitive2` | [IPCB_Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md) | value |
| `argUpperPrimitive` | [IPCB_Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md) | ref |
| `argLowerPrimitive` | [IPCB_Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md) | ref |

**Returns:** `bool`

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

### ProducePrimitiveToCheckOnTopLayerInGroup

*No description yet.*

```csharp
bool ProducePrimitiveToCheckOnTopLayerInGroup(IPCB_Primitive argPrimitive1, IPCB_Primitive argPrimitive2, ref IPCB_Primitive argUpperPrimitive, ref IPCB_Primitive argLowerPrimitive);
bool ProducePrimitiveToCheckOnTopLayerInGroup(object argPrimitive1, object argPrimitive2, ref object argUpperPrimitive, ref object argLowerPrimitive);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPrimitive1` | [IPCB_Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md) | value |
| `argPrimitive2` | [IPCB_Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md) | value |
| `argUpperPrimitive` | [IPCB_Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md) | ref |
| `argLowerPrimitive` | [IPCB_Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md) | ref |

**Returns:** `bool`

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

### RemovePrimitive

*No description yet.*

```csharp
void RemovePrimitive(IPCB_Primitive argPrimitive);
void RemovePrimitive(object argPrimitive);
```

| Parameter | Type | Passing |
| --- | --- | --- |
| `argPrimitive` | [IPCB_Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md) | value |

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

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

## Returned by

[IPCB_PrintedElectronics.GetPrintedElectronics](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PrintedElectronics.md#getprintedelectronics)
