
# IPCB_Pad2 interface

Extends [`IPCB_Pad`](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md) with the corner radius of rounded rectangular pads on each layer.

```csharp
public interface IPCB_Pad2 : IPCB_Pad
```

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

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

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

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [CornerRadiusOnLayer](#cornerradiusonlayer) | `int` | get | The corner radius of the pad's shape on the given layer, in internal units (10,000 per mil). |
| [CRPercentageOnLayer](#crpercentageonlayer) | `byte` | get | The corner radius percentage that applies to the pad's shape on the given layer, from 0 to 100. |
| [StackCRPctOnLayer](#stackcrpctonlayer) | `byte` | get; set | The corner radius percentage stored in the pad's stack for the given layer, from 0 to 100. |

### CornerRadiusOnLayer

The corner radius of the pad's shape on the given layer, in internal units (10,000 per mil).

```csharp
int GetState_CornerRadiusOnLayer(V7_LayerBase argL);
```

**Type:** `int` · **Access:** read-only · **Index:** `argL` ([V7_LayerBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_LayerBase.md)): The layer to query.

The accessors are extension methods of `IPCB_Pad2Helper` (`using PCB;`).

0 unless the pad's shape on the layer is rounded rectangular (`TShape.eRoundedRectangular`) or a custom shape of kind `TShapeSubKind.eRoundedRectangle` or `TShapeSubKind.eChamferedRectangle`. On the top and bottom solder mask and paste mask layers, a radius greater than 0 includes the pad's mask expansion on that layer. The value is never negative.

### CRPercentageOnLayer

The corner radius percentage that applies to the pad's shape on the given layer, from 0 to 100.

```csharp
byte GetState_CRPercentageOnLayer(V7_LayerBase argL);
```

**Type:** `byte` · **Access:** read-only · **Index:** `argL` ([V7_LayerBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_LayerBase.md)): The layer to query.

The accessors are extension methods of `IPCB_Pad2Helper` (`using PCB;`).

The percentage is of half the shorter side of the pad: 0% gives a rectangular pad and 100% a fully rounded pad shape. It applies only when the pad's shape is rounded rectangular (`TShape.eRoundedRectangular`).

For the top and bottom solder mask and paste mask layers, the value is that of the top or bottom layer on the same side. Returns 0 for a layer on which the pad does not appear, such as a solder mask layer on a tented side.

### StackCRPctOnLayer

The corner radius percentage stored in the pad's stack for the given layer, from 0 to 100.

```csharp
byte GetState_StackCRPctOnLayer(V7_LayerBase argL);
void SetState_StackCRPctOnLayer(V7_LayerBase argL, byte argValue);
```

**Type:** `byte` · **Access:** read/write · **Index:** `argL` ([V7_LayerBase](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/V7_LayerBase.md)): The layer of the pad stack.

The accessors are extension methods of `IPCB_Pad2Helper` (`using PCB;`).

The percentage is of half the shorter side of the pad on that layer: 0% gives a rectangular pad and 100% a fully rounded pad shape. It applies only when the pad's shape on the layer is rounded rectangular (`TShape.eRoundedRectangular`). Assigning a value greater than 100 stores 100.

## Inherited members

- From [IPCB_Pad](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md): [BotShape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#botshape), [BotXSize](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#botxsize), [BotYSize](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#botysize), [BoundingRectangleOnLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#boundingrectangleonlayer), [Cache](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#cache), [ClearStackSizeAndShapes](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#clearstacksizeandshapes), [DefinitionLayerIterator](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#definitionlayeriterator), [DrillType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#drilltype), [HoleNegativeTolerance](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#holenegativetolerance), [HolePositiveTolerance](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#holepositivetolerance), [HoleRotation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#holerotation), [HoleSize](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#holesize), [HoleType](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#holetype), [HoleWidth](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#holewidth), [InvalidateCache](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#invalidatecache), [InvalidateSizeShape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#invalidatesizeshape), [IsConnectedToPlane](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#isconnectedtoplane), [IsPadStack](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#ispadstack), [IsSurfaceMount](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#issurfacemount), [IsVirtualPin](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#isvirtualpin), [JumperID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#jumperid), [MidShape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#midshape), [MidXSize](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#midxsize), [MidYSize](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#midysize), [Mode](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#mode), [Name](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#name), [OwnerPart_ID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#ownerpart_id), [PinDescriptorString](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#pindescriptorstring), [PlaneConnectionStyleForLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#planeconnectionstyleforlayer), [Plated](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#plated), [ReValidateSizeShape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#revalidatesizeshape), [RotateAroundXY](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#rotatearoundxy), [Rotation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#rotation), [ShapeOnLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#shapeonlayer), [SolderMaskExpansionFromHoleEdge](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#soldermaskexpansionfromholeedge), [SolderMaskExpansionFromHoleEdgeWithRule](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#soldermaskexpansionfromholeedgewithrule), [StackShapeOnLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#stackshapeonlayer), [SwapID_Pad](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#swapid_pad), [SwapID_Part](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#swapid_part), [SwappedPadName](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#swappedpadname), [TemplateLink](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#templatelink), [TopShape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#topshape), [TopXSize](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#topxsize), [TopYSize](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#topysize), [UpdateCache](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#updatecache), [ValidateSizeShape](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#validatesizeshape), [WidthOnLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#widthonlayer), [XLocation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#xlocation), [XPadOffsetOnLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#xpadoffsetonlayer), [XSizeOnLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#xsizeonlayer), [XStackSizeOnLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#xstacksizeonlayer), [YLocation](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#ylocation), [YPadOffsetOnLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#ypadoffsetonlayer), [YSizeOnLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#ysizeonlayer), [YStackSizeOnLayer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Pad.md#ystacksizeonlayer)
- From [IPCB_Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md): [AllowGlobalEdit](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#allowglobaledit), [BeginModify](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#beginmodify), [Board](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#board), [BoundingRectangle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#boundingrectangle), [BoundingRectangleChildren](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#boundingrectanglechildren), [BoundingRectangleForPainting](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#boundingrectangleforpainting), [BoundingRectangleForSelection](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#boundingrectangleforselection), [CancelModify](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#cancelmodify), [Component](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#component), [Coordinate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#coordinate), [DescriptorString](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#descriptorstring), [DetailString](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#detailstring), [Dimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#dimension), [DrawAsPreview](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#drawaspreview), [DRCError](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#drcerror), [Enabled](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#enabled), [Enabled_Direct](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#enabled_direct), [Enabled_vComponent](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#enabled_vcomponent), [Enabled_vCoordinate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#enabled_vcoordinate), [Enabled_vDimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#enabled_vdimension), [Enabled_vNet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#enabled_vnet), [Enabled_vPolygon](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#enabled_vpolygon), [EnableDraw](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#enabledraw), [EndModify](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#endmodify), [Export_ToParameters](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#export_toparameters), [FlipXY](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#flipxy), [GraphicallyInvalidate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#graphicallyinvalidate), [Handle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#handle), [Identifier](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#identifier), [InBoard](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#inboard), [InComponent](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#incomponent), [InCoordinate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#incoordinate), [Index](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#index), [InDimension](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#indimension), [InNet](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#innet), [InPolygon](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#inpolygon), [InSelectionMemory](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#inselectionmemory), [IsAssyTestPoint_Bottom](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#isassytestpoint_bottom), [IsAssyTestPoint_Top](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#isassytestpoint_top), [IsElectricalPrim](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#iselectricalprim), [IsFreePrimitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#isfreeprimitive), [IsHidden](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#ishidden), [IsKeepout](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#iskeepout), [IsPreRoute](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#ispreroute), [IsSaveable](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#issaveable), [IsTenting](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#istenting), [IsTenting_Bottom](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#istenting_bottom), [IsTenting_Top](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#istenting_top), [IsTestPoint_Bottom](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#istestpoint_bottom), [IsTestPoint_Top](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#istestpoint_top), [Layer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#layer), [MiscFlag1](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#miscflag1), [MiscFlag2](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#miscflag2), [MiscFlag3](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#miscflag3), [Moveable](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#moveable), [MoveByXY](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#movebyxy), [MoveToXY](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#movetoxy), [Net](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#net), [ObjectID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#objectid), [ObjectIDString](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#objectidstring), [PadCacheRobotFlag](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#padcacherobotflag), [PasteMaskExpansion](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#pastemaskexpansion), [Polygon](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#polygon), [PolygonOutline](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#polygonoutline), [PowerPlaneClearance](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#powerplaneclearance), [PowerPlaneConnectStyle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#powerplaneconnectstyle), [PowerPlaneReliefExpansion](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#powerplanereliefexpansion), [Preview](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#preview), [ReliefAirGap](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#reliefairgap), [ReliefConductorWidth](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#reliefconductorwidth), [ReliefEntries](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#reliefentries), [Replicate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#replicate), [RequiredParamterSpace](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#requiredparamterspace), [RotateBy](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#rotateby), [Selected](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#selected), [SolderMaskExpansion](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#soldermaskexpansion), [SwapLayerPairs](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#swaplayerpairs), [TearDrop](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#teardrop), [UnionIndex](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#unionindex), [UniqueId](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#uniqueid), [UniqueID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#uniqueid-1), [Used](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#used), [UserRouted](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#userrouted), [V7Layer](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#v7layer), [ViewableObjectID](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_Primitive.md#viewableobjectid)

## Returned by

[IPCB_PinPairTiePoint.TiePointPad](https://altiumdeveloper.github.io/ad-sdk-docs/reference/pcb/IPCB_PinPairTiePoint.md#tiepointpad)
