
# IPCB_InternalPlane interface

An internal plane of a board's layer stack, a copper layer that is connected to a net.

```csharp
public interface IPCB_InternalPlane : IPCB_ElectricalLayer
```

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

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

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

## Remarks

16 internal planes are supported. A net can be assigned to each internal plane, or a plane can be shared by several nets by splitting it into two or more isolated areas. Pad and via connections to internal planes are controlled by the Plane design rules.

The examples visit the internal planes of a board with [`IPCB_Board.InternalPlaneLayerIterator`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md#internalplanelayeriterator) and cast each [`IPCB_LayerObjectIterator.LayerObject`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObjectIterator.md#layerobject) to [`IPCB_InternalPlane_V7`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_InternalPlane_V7.md), which derives from `IPCB_InternalPlane`.

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [NetName](#netname) | `string` | get; set | The name of the net that the internal plane is connected to. |
| [PullBackDistance](#pullbackdistance) | `int` | get; set | The distance by which the copper of the plane is pulled back from the board outline, in internal units (10,000 per mil). |

### NetName

The name of the net that the internal plane is connected to.

```csharp
string GetState_NetName();
void SetState_NetName(string argName);
```

**Type:** `string` · **Access:** read/write

A new internal plane has the net name `(No Net)`. Setting the name only stores it; it does not check that the board has a net of that name.

### PullBackDistance

The distance by which the copper of the plane is pulled back from the board outline, in internal units (10,000 per mil).

```csharp
int GetState_PullBackDistance();
void SetState_PullBackDistance(int argDist);
```

**Type:** `int` · **Access:** read/write

A new internal plane has a pull-back distance of 200,000 internal units (20 mil).

**Examples:** [Extension_InternalPlaneLayer](https://github.com/AltiumDeveloper/ad-sdk-examples/blob/5b144f54740a53ec578b3b6c3f902b831e0b1144/Extension_InternalPlaneLayer/Source%20Code/Commands.cs#L40)

## Inherited members

- From [IPCB_ElectricalLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ElectricalLayer.md): [CopperThickness](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_ElectricalLayer.md#copperthickness)
- From [IPCB_LayerObject](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObject.md): [IsInLayerStack](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObject.md#isinlayerstack), [LayerDisplayName](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObject.md#layerdisplayname), [LayerName](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObject.md#layername), [LayerStack](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObject.md#layerstack), [UsedByPrims](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObject.md#usedbyprims), [V6_LayerID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObject.md#v6_layerid), [V7_LayerID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_LayerObject.md#v7_layerid)
