
# IPCB_AdvancedPlacerOptions interface

The automatic component placement settings of a PCB document, returned by [`IPCB_Board.PlacerOptions`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md#placeroptions).

```csharp
public interface IPCB_AdvancedPlacerOptions : IPCB_AbstractOptions
```

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

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

## Remarks

The interface extends [`IPCB_AbstractOptions`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractOptions.md). [`Export_ToParameters`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractOptions.md#export_toparameters) writes every setting as a parameter named after its property; [`Import_FromParameters`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractOptions.md#import_fromparameters) reads them.

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [PlaceByPassNet1](#placebypassnet1) | `string` | get; set |  |
| [PlaceByPassNet2](#placebypassnet2) | `string` | get; set |  |
| [PlaceLargeClear](#placelargeclear) | `int` | get; set | The clearance kept around components with 14 or more pads when components are shoved apart, in internal units (10,000 per mil). |
| [PlaceSmallClear](#placesmallclear) | `int` | get; set | The clearance kept around components with fewer than 14 pads when components are shoved apart, in internal units (10,000 per mil). |
| [PlaceUseAdvancedPlace](#placeuseadvancedplace) | `bool` | get; set |  |
| [PlaceUseGrouping](#placeusegrouping) | `bool` | get; set |  |
| [PlaceUseLayerSwap](#placeuselayerswap) | `bool` | get; set |  |
| [PlaceUseRotation](#placeuserotation) | `bool` | get; set |  |

### PlaceByPassNet1

*No description yet.*

```csharp
string GetState_PlaceByPassNet1();
void SetState_PlaceByPassNet1(string argValue);
```

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

Newly created options start with an empty string.

### PlaceByPassNet2

*No description yet.*

```csharp
string GetState_PlaceByPassNet2();
void SetState_PlaceByPassNet2(string argValue);
```

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

Newly created options start with an empty string.

### PlaceLargeClear

The clearance kept around components with 14 or more pads when components are shoved apart, in internal units (10,000 per mil).

```csharp
int GetState_PlaceLargeClear();
void SetState_PlaceLargeClear(int argValue);
```

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

Components with fewer pads use [`PlaceSmallClear`](#placesmallclear). Newly created options start with 50 mil.

### PlaceSmallClear

The clearance kept around components with fewer than 14 pads when components are shoved apart, in internal units (10,000 per mil).

```csharp
int GetState_PlaceSmallClear();
void SetState_PlaceSmallClear(int argValue);
```

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

Components with 14 or more pads use [`PlaceLargeClear`](#placelargeclear). Newly created options start with 20 mil.

### PlaceUseAdvancedPlace

*No description yet.*

```csharp
bool GetState_PlaceUseAdvancedPlace();
void SetState_PlaceUseAdvancedPlace(bool argValue);
```

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

Newly created options start with true.

### PlaceUseGrouping

*No description yet.*

```csharp
bool GetState_PlaceUseGrouping();
void SetState_PlaceUseGrouping(bool argValue);
```

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

Newly created options start with true.

### PlaceUseLayerSwap

*No description yet.*

```csharp
bool GetState_PlaceUseLayerSwap();
void SetState_PlaceUseLayerSwap(bool argValue);
```

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

Newly created options start with false.

### PlaceUseRotation

*No description yet.*

```csharp
bool GetState_PlaceUseRotation();
void SetState_PlaceUseRotation(bool argValue);
```

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

Newly created options start with true.

## Inherited members

- From [IPCB_AbstractOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractOptions.md): [Export_ToParameters](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractOptions.md#export_toparameters), [Export_ToParameters_Version3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractOptions.md#export_toparameters_version3), [Export_ToParameters_Version4](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractOptions.md#export_toparameters_version4), [Import_FromParameters](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractOptions.md#import_fromparameters), [Import_FromParameters_Version3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractOptions.md#import_fromparameters_version3), [Import_FromParameters_Version4](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractOptions.md#import_fromparameters_version4), [ObjectID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_AbstractOptions.md#objectid)

## Returned by

[IPCB_Board.PlacerOptions](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Board.md#placeroptions)
