IPCB_EmbeddedBoard interface
An embedded board array, a rectangular object on a board that places copies of another PCB document (the child board) in a matrix of rows and columns.
public interface IPCB_EmbeddedBoard : IPCB_RectangularPrimitive
Namespace: PCB · Assembly: Altium.SDK.Interfaces
Inherits: IPCB_Primitive → IPCB_RectangularPrimitive
Remarks
DocumentPath names the child PCB document and ChildBoard returns its board.
The copies are arranged in RowCount rows and ColCount columns, RowSpacing and ColSpacing apart. The first copy is placed with the point selected by OriginMode at the embedded board's location (XLocation, YLocation); each further row is offset upwards by RowSpacing and each further column to the right by ColSpacing. The copies are then mirrored when Mirror is true and rotated about the location by Rotation.
Properties
| Property | Type | Access | Description |
|---|---|---|---|
| ChildBoard | IPCB_Board | get | The board of the child PCB document that DocumentPath refers to. |
| ColCount | int | get; set | The number of columns of child board copies in the array. |
| ColSpacing | int | get; set | The horizontal distance from one column of copies to the next, in internal units (10,000 per mil). |
| DocumentPath | string | get; set | The full path of the child PCB document used for the board array. |
| Mirror | bool | get; set | Whether the copies of the child board are mirrored. |
| OriginMode | TEmbeddedBoardOriginMode | get; set | Which point of the child board is placed at the embedded board's location, the child board's origin (TEmbeddedBoardOriginMode.eOriginMode_BoardOrigin) or its bottom-left corner (`TEmbeddedBoardOrig… |
| RowCount | int | get; set | The number of rows of child board copies in the array. |
| RowSpacing | int | get; set | The vertical distance from one row of copies to the next, in internal units (10,000 per mil). |
| TransmitLayersEnabled | bool | get | Whether objects of the child board on a layer pass the embedded board's transmit filter. |
ChildBoard
The board of the child PCB document that DocumentPath refers to.
IPCB_Board GetState_ChildBoard();
Type: IPCB_Board · Access: read-only
The accessors are extension methods of IPCB_EmbeddedBoardHelper (using PCB;).
Null when no PCB document with that path is loaded.
ColCount
The number of columns of child board copies in the array.
int GetState_ColCount();
void SetState_ColCount(int argValue);
Type: int · Access: read/write
A new embedded board has 1.
ColSpacing
The horizontal distance from one column of copies to the next, in internal units (10,000 per mil).
int GetState_ColSpacing();
void SetState_ColSpacing(int argValue);
Type: int · Access: read/write
The gap between two columns is this value minus the width of the child board. A new embedded board has a column spacing of 1500 mil.
DocumentPath
The full path of the child PCB document used for the board array.
string GetState_DocumentPath();
void SetState_DocumentPath(string argValue);
Type: string · Access: read/write
When the embedded board belongs to a board, the path is kept relative to the folder of that board's document, and reading it returns the full path resolved against that folder. Setting the path of the document that contains the embedded board clears the stored path.
Mirror
Whether the copies of the child board are mirrored.
bool GetState_Mirror();
void SetState_Mirror(bool argValue);
Type: bool · Access: read/write
Each copy is mirrored about a vertical line through the embedded board's XLocation, before the rotation is applied.
OriginMode
Which point of the child board is placed at the embedded board's location, the child board's origin (TEmbeddedBoardOriginMode.eOriginMode_BoardOrigin) or its bottom-left corner (TEmbeddedBoardOriginMode.eOriginMode_BottomLeft).
TEmbeddedBoardOriginMode GetState_OriginMode();
void SetState_OriginMode(TEmbeddedBoardOriginMode argValue);
Type: TEmbeddedBoardOriginMode · Access: read/write
The accessors are extension methods of IPCB_EmbeddedBoardHelper (using PCB;).
The bottom-left corner is that of the child board's outline, or of the child board's objects when it has no outline. A new embedded board has TEmbeddedBoardOriginMode.eOriginMode_BottomLeft.
The origin of the child board is defined in the child PCB document.
See also: TEmbeddedBoardOriginMode
RowCount
The number of rows of child board copies in the array.
int GetState_RowCount();
void SetState_RowCount(int argValue);
Type: int · Access: read/write
A new embedded board has 1.
RowSpacing
The vertical distance from one row of copies to the next, in internal units (10,000 per mil).
int GetState_RowSpacing();
void SetState_RowSpacing(int argValue);
Type: int · Access: read/write
The gap between two rows is this value minus the height of the child board. A new embedded board has a row spacing of 2500 mil.
TransmitLayersEnabled
Whether objects of the child board on a layer pass the embedded board's transmit filter.
bool GetState_TransmitLayersEnabled(V7_LayerBase argLayer);
Type: bool · Access: read-only · Index: argLayer (V7_LayerBase): The layer of the child board.
The accessors are extension methods of IPCB_EmbeddedBoardHelper (using PCB;).
On a new embedded board, every layer passes. ApplyFilterToIterator applies the filter to an iterator.
Methods
| Method | Returns | Description |
|---|---|---|
| ApplyFilterToIterator | void | Applies the embedded board's transmit filter to an iterator, so that the iterator returns only the objects that the filter passes. |
| GetForbiddenParameterList | IPCB_ParameterList | Returns the parameters whose transmission from the child board is disabled, or null when there are none. |
ApplyFilterToIterator
Applies the embedded board's transmit filter to an iterator, so that the iterator returns only the objects that the filter passes.
void ApplyFilterToIterator(IPCB_AbstractIterator argIterator);
void ApplyFilterToIterator(object argIterator);
| Parameter | Type | Passing | Description |
|---|---|---|---|
argIterator | IPCB_AbstractIterator | value | The iterator to filter, typically one created on ChildBoard. |
Returns: nothing (void)
The first overload is an extension method of IPCB_EmbeddedBoardHelper (using PCB;) with typed parameters; the second is declared by the interface.
Board, spatial and group iterators are supported; any other iterator, or null, is left unchanged. The filter rejects objects on layers for which TransmitLayersEnabled is false and, when the embedded board is set not to transmit them, dimensions, drill tables and layer stack tables.
GetForbiddenParameterList
Returns the parameters whose transmission from the child board is disabled, or null when there are none.
IPCB_ParameterList GetForbiddenParameterList();
Returns: IPCB_ParameterList
Extension method of IPCB_EmbeddedBoardHelper (using PCB;).
Inherited members
- From IPCB_RectangularPrimitive: IsRedundant, RotateAroundXY, Rotation, SetState_XSizeYSize, X1Location, X2Location, XLocation, Y1Location, Y2Location, YLocation
- From IPCB_Primitive: AllowGlobalEdit, BeginModify, Board, BoundingRectangle, BoundingRectangleChildren, BoundingRectangleForPainting, BoundingRectangleForSelection, CancelModify, Component, Coordinate, DescriptorString, DetailString, Dimension, DrawAsPreview, DRCError, Enabled, Enabled_Direct, Enabled_vComponent, Enabled_vCoordinate, Enabled_vDimension, Enabled_vNet, Enabled_vPolygon, EnableDraw, EndModify, Export_ToParameters, FlipXY, GraphicallyInvalidate, Handle, Identifier, InBoard, InComponent, InCoordinate, Index, InDimension, InNet, InPolygon, InSelectionMemory, IsAssyTestPoint_Bottom, IsAssyTestPoint_Top, IsElectricalPrim, IsFreePrimitive, IsHidden, IsKeepout, IsPreRoute, IsSaveable, IsTenting, IsTenting_Bottom, IsTenting_Top, IsTestPoint_Bottom, IsTestPoint_Top, Layer, MiscFlag1, MiscFlag2, MiscFlag3, Moveable, MoveByXY, MoveToXY, Net, ObjectID, ObjectIDString, PadCacheRobotFlag, PasteMaskExpansion, Polygon, PolygonOutline, PowerPlaneClearance, PowerPlaneConnectStyle, PowerPlaneReliefExpansion, Preview, ReliefAirGap, ReliefConductorWidth, ReliefEntries, Replicate, RequiredParamterSpace, RotateBy, Selected, SolderMaskExpansion, SwapLayerPairs, TearDrop, UnionIndex, UniqueId, UniqueID, Used, UserRouted, V7Layer, ViewableObjectID