IPCB_DatumDimension interface
A datum dimension on a PCB document, which measures the linear distances of a collection of references from a single base reference along a common datum line.
public interface IPCB_DatumDimension : IPCB_Dimension
Namespace: PCB · Assembly: Altium.SDK.Interfaces
Inherits: IPCB_Primitive → IPCB_Group → IPCB_Dimension
Remarks
The first reference is the base reference, and the dimension value of each reference is its distance from the base reference. The references may be tracks, arcs, pads, vias, text, fills, polygons or components.
The datum line passes through the text location (TextX, TextY) in the direction given by Angle. The extension line of each reference runs from the referenced object, perpendicular to the datum line, up to the datum line, and the text of each reference shows the distance along the datum line between its extension line and that of the base reference. When the primitives are regenerated, TextValue is set to this distance for the last reference and the dimension's location (XLocation, YLocation) is set to the point of the base reference.
Each reference has its own text and extension line, which Texts and Extension_Track return for its index. References_Add adds them with a new reference and References_DeleteLast removes them with the last reference. A new datum dimension has one reference, an Angle of 0 and TextPosition set to TDimensionTextPosition.eTextUniDirectional. MoveByXY moves the dimension only when every referenced object is selected or it refers to no object.
Properties
| Property | Type | Access | Description |
|---|---|---|---|
| Angle | double | get; set | The angle of the datum line to the horizontal, in degrees. |
Angle
The angle of the datum line to the horizontal, in degrees.
double GetState_Angle();
void SetState_Angle(double argValue);
Type: double · Access: read/write
The default is 0, at which the dimension measures horizontal distances. Rotating the dimension with RotateAroundXY changes the angle by the rotation angle.
Methods
| Method | Returns | Description |
|---|---|---|
| Extension_Track | IPCB_Track | Returns the extension line of a reference, which runs from the referenced object to the datum line. |
| Text | IPCB_Text | Returns the text of the base reference, the same object as Texts returns for index 0. |
| Texts | IPCB_Text | Returns the text that shows the distance of a reference from the base reference. |
Extension_Track
Returns the extension line of a reference, which runs from the referenced object to the datum line.
IPCB_Track Extension_Track(int argI);
| Parameter | Type | Passing | Description |
|---|---|---|---|
argI | int | value | The zero-based index of the reference, from 0 to References_Count - 1. |
Returns: IPCB_Track
Extension method of IPCB_DatumDimensionHelper (using PCB;).
Text
Returns the text of the base reference, the same object as Texts returns for index 0.
IPCB_Text Text();
Returns: IPCB_Text
Extension method of IPCB_DatumDimensionHelper (using PCB;).
Texts
Returns the text that shows the distance of a reference from the base reference.
IPCB_Text Texts(int argI);
| Parameter | Type | Passing | Description |
|---|---|---|---|
argI | int | value | The zero-based index of the reference, from 0 to References_Count - 1. |
Returns: IPCB_Text
Extension method of IPCB_DatumDimensionHelper (using PCB;).
Inherited members
- From IPCB_Dimension: ArrowLength, ArrowLineWidth, ArrowPosition, ArrowSize, Bold, DimensionKind, ExtensionLineWidth, ExtensionOffset, ExtensionPickGap, FontName, Italic, LineWidth, MoveTextByXY, MoveTextToXY, References, References_Add, References_Count, References_Delete, References_DeleteLast, References_IndexOf, References_Validate, ResetPrefixIfNeeded, RotateAroundXY, Size, Style, TextDimensionUnit, TextFont, TextFormat, TextGap, TextHeight, TextLineWidth, TextPosition, TextPrecision, TextPrefix, TextSuffix, TextValue, TextWidth, TextX, TextY, UseTTFonts, X1Location, Y1Location
- From IPCB_Group: AddPCBObject, FastSetState_XSizeYSize, FreePrimitives, GetPrimitiveAt, GetPrimitiveCount, GroupIterator_Create, GroupIterator_Destroy, LayerUsed, PrimitiveLock, RemovePCBObject, ReplicateWithChildren, SetState_LayersUsedArray, SetState_XSizeYSize, XLocation, 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