
# IPrimitive interface

*No description yet.*

```csharp
public interface IPrimitive
```

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

**Derived:** [IAxis](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IAxis.md), [IChart](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IChart.md), [IChartTitle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IChartTitle.md), [IGridArea](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IGridArea.md), [IGridLines](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IGridLines.md), [IMeasurementCursor](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IMeasurementCursor.md), [IMeasurementCursorData](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IMeasurementCursorData.md), [IPlot](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlot.md), [IPlotTitle](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPlotTitle.md), [IScrollArrow](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IScrollArrow.md), [ISelectionButton](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/ISelectionButton.md), [IWave](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IWave.md), [IWaveLabel](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IWaveLabel.md), [IWaveLegend](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IWaveLegend.md)

## Properties

| Property | Type | Access | Description |
| --- | --- | --- | --- |
| [BoundingRect](#boundingrect) | [Rect](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/Rect.md) | get; set |  |
| [ViewablePrimitiveId](#viewableprimitiveid) | [TViewablePrimitiveId](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/TViewablePrimitiveId.md) | get |  |

### BoundingRect

*No description yet.*

```csharp
Rect GetProperty_BoundingRect();
void SetProperty_BoundingRect(Rect argValue);
```

**Type:** [Rect](https://altiumdeveloper.github.io/ad-sdk-docs/reference/dxp/Rect.md) · **Access:** read/write

The accessors are extension methods of `IPrimitiveHelper` (`using SCH;`).

### ViewablePrimitiveId

*No description yet.*

```csharp
TViewablePrimitiveId GetProperty_ViewablePrimitiveId();
```

**Type:** [TViewablePrimitiveId](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/TViewablePrimitiveId.md) · **Access:** read-only

The accessors are extension methods of `IPrimitiveHelper` (`using SCH;`).

## Returned by

[IPrimitiveList.Primitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPrimitiveList.md#primitive), [ISDFGraphicalView.GetEditablePrimitiveAtXY](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/ISDFGraphicalView.md#geteditableprimitiveatxy)

## Accepted by

[IPainter.Export_ToScreen_HighLight](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPainter.md#export_toscreen_highlight), [IPainter.Export_ToScreen_Paint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPainter.md#export_toscreen_paint), [IPainter.Export_ToScreen_Update](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IPainter.md#export_toscreen_update), [ISDFGraphicalView.DrawPrimitiveToDC](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/ISDFGraphicalView.md#drawprimitivetodc), [ISDFGraphicalView.GraphicallyHighlight](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/ISDFGraphicalView.md#graphicallyhighlight), [ISDFGraphicalView.GraphicallyInvalidate](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/ISDFGraphicalView.md#graphicallyinvalidate), [IViewManager.DestroyingPrimitive](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IViewManager.md#destroyingprimitive), [IViewManager.Export_ToScreen_Paint](https://altiumdeveloper.github.io/ad-sdk-docs/reference/sch/IViewManager.md#export_toscreen_paint)
