Skip to main content
View as Markdown

IPCB_RoutingViaStyleRule interface

A routing via style rule (TRuleKind.eRule_RoutingViaStyle) that specifies the vias to be used during routing.

public interface IPCB_RoutingViaStyleRule : IPCB_Rule

Namespace: PCB · Assembly: Altium.SDK.Interfaces

Inherits: IPCB_Primitive → IPCB_Rule

Remarks​

Vias can be through-hole, blind (from a surface layer to an inner layer) or buried (between two inner layers).

The rule applies to vias, except back-drill vias. ActualCheck reports a violation for a via whose diameter (IPCB_Via.Size) is outside the range from MinWidth to MaxWidth, or whose hole size (IPCB_Via.HoleSize) is outside the range from MinHoleWidth to MaxHoleWidth; values equal to a limit are allowed. The preferred values are not limits: fanout uses PreferedWidth and PreferedHoleWidth for the vias it adds, and the via stitching and via shielding options start from them.

A rule can instead check vias against a list of via templates, a setting that this interface does not expose. Such a rule accepts a via that has the hole size and the layer diameters of one of its templates, and does not use the minimum and maximum values. When its template list is empty, it accepts any via.

Properties​

PropertyTypeAccessDescription
MaxHoleWidthintget; setThe largest via hole size that the rule allows, in internal units (10,000 per mil).
MaxWidthintget; setThe largest via diameter that the rule allows, in internal units (10,000 per mil).
MinHoleWidthintget; setThe smallest via hole size that the rule allows, in internal units (10,000 per mil).
MinWidthintget; setThe smallest via diameter that the rule allows, in internal units (10,000 per mil).
PreferedHoleWidthintget; setThe preferred via hole size, in internal units (10,000 per mil).
PreferedWidthintget; setThe preferred via diameter, in internal units (10,000 per mil).
ViaStyleTRouteViaget; set

MaxHoleWidth​

The largest via hole size that the rule allows, in internal units (10,000 per mil).

int GetState_MaxHoleWidth();
void SetState_MaxHoleWidth(int argValue);

Type: int · Access: read/write

A new rule has 28 mil.

MaxWidth​

The largest via diameter that the rule allows, in internal units (10,000 per mil).

int GetState_MaxWidth();
void SetState_MaxWidth(int argValue);

Type: int · Access: read/write

A new rule has 50 mil.

MinHoleWidth​

The smallest via hole size that the rule allows, in internal units (10,000 per mil).

int GetState_MinHoleWidth();
void SetState_MinHoleWidth(int argValue);

Type: int · Access: read/write

A new rule has 28 mil.

MinWidth​

The smallest via diameter that the rule allows, in internal units (10,000 per mil).

int GetState_MinWidth();
void SetState_MinWidth(int argValue);

Type: int · Access: read/write

A new rule has 50 mil.

PreferedHoleWidth​

The preferred via hole size, in internal units (10,000 per mil).

int GetState_PreferedHoleWidth();
void SetState_PreferedHoleWidth(int argValue);

Type: int · Access: read/write

A new rule has 28 mil. DataSummaryString shows the value.

PreferedWidth​

The preferred via diameter, in internal units (10,000 per mil).

int GetState_PreferedWidth();
void SetState_PreferedWidth(int argValue);

Type: int · Access: read/write

A new rule has 50 mil. DataSummaryString shows the value.

ViaStyle​

No description yet.

TRouteVia GetState_ViaStyle();
void SetState_ViaStyle(TRouteVia argValue);

Type: TRouteVia · Access: read/write

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

A new rule has TRouteVia.eViaThruHole.

Inherited members​