Padstacks

Classes

class keysight.ads.de.tech.pads.LengthValue

A length value with units.

Supports the following units: ‘mil’, ‘in’, ‘um’, ‘mm’, ‘cm’, ‘meter’, ‘ft’, ‘nm’. A value that does not have units is assumed to be in meters.

__init__(*args, **kwargs)

Overloaded function.

  1. __init__(self: keysight.ads.de._pde.tech.LengthValue, arg0: str) -> None

  2. __init__(self: keysight.ads.de._pde.tech.LengthValue, arg0: str, arg1: str) -> None

mks(self: keysight.ads.de._pde.tech.LengthValue) float
property value
class keysight.ads.de.tech.pads.LayerMatcher

Base class for classes that determine which layer to use for pads in Padstacks.

__init__(unused: InvalidCall, *args, **kwargs) None

Return an error about attempts to initialize objects that don’t support initialization.

static is_id_matcher(o: LayerMatcher) TypeGuard[MatchLayerById]
static is_name_matcher(o: LayerMatcher) TypeGuard[MatchLayerByName]
static is_from_top_matcher(o: LayerMatcher) TypeGuard[MatchLayerFromTopOfBoard]
static is_from_bottom_matcher(o: LayerMatcher) TypeGuard[MatchLayerFromBottomOfBoard]
class keysight.ads.de.tech.pads.MatchLayerById

Matches the layers by LayerId.

__init__(layer_id: LayerId) None
property id: LayerId
class keysight.ads.de.tech.pads.MatchLayerByName

Matches the layers by layer name.

__init__(name: str) None
property name: str
class keysight.ads.de.tech.pads.MatchLayerFromBottomOfBoard

Matches the layer relative to the bottom of the board.

__init__(offset: int, role: str | ProcessRole) None
property offset: int
property process_role: ProcessRole
class keysight.ads.de.tech.pads.MatchLayerFromTopOfBoard

Matches the layer relative to the top of the board.

__init__(offset: int, role: str | ProcessRole) None
property offset: int
property process_role: ProcessRole
class keysight.ads.de.tech.pads.Antipad
class Mode

Defines the mode of an Antipad.

Members:

USE_DEFAULT : ‘UseDefault’: Use the antipad mode defined in the default PadLayerEntry.

NONE : ‘None’: Only for Clearance

ADD_CLEARANCE : ‘AddClearance’: Use the distance from the pad.

ADD_CLEARANCE_EXACT : ‘AddClearanceExact’: Use the distance from the pad and keep the same distance around corners.

CUSTOM : ‘Custom’: Use the shape specified.

SAME_AS_CLEARANCE : ‘SameAsClearance’: Only for Antipad - Use the Clearance rule

property Mode.str

Return the string representation of the Antipad Mode.

Mode.__new__(**kwargs)
Mode.__init__(self: keysight.ads.de._pde.tech.Antipad.Mode, value: int) None
__init__() None
property mode: Mode
property use_clearance_rule_with_custom_antipad: bool

Use a clearance rule with a custom antipad shape.

property expansion: LengthValue

The expansion when the mode is CLEARANCE or CLEARANCE_EXACT.

property custom_antipad: Pad | None

The shape of the antipad when the mode is CUSTOM.

class keysight.ads.de.tech.pads.MaskExpansion

Defines the expansion on the solder mask and solder paste layers.

class AffectsLayers

Tells which layers are affected by a MaskExpansion.

Members:

NONE : ‘None’: Does not affect a layer.

TOP_OF_BOARD : ‘TopOfBoard’: Affects the layer on the top of the board.

BOTTOM_OF_BOARD : ‘BottomOfBoard’: Affects the layer on the bottom of the board.

TOP_AND_BOTTOM_BOARD : ‘TopAndBottomBoard’: Affects the layers on the top and bottom of the board.

property AffectsLayers.str

Return the string representation of the AffectsLayers Mode.

AffectsLayers.__new__(**kwargs)
AffectsLayers.__init__(self: keysight.ads.de._pde.tech.MaskExpansion.AffectsLayers, value: int) None
class Mode

Describes the direction of expansion.

Members:

SIZE : Expansion is linear.

CUSTOM : Expansion is descibed by the Pad.

Mode.__init__(self: keysight.ads.de._pde.tech.MaskExpansion.Mode, value: int) None
property Mode.name
__init__(affects_layers: str | AffectsLayers, expansion: str | LengthValue | Pad | None = None) None
property affects_layers: AffectsLayers
property mode: Mode
property is_default: bool
property expansion: LengthValue

The expansion when the mode is SIZE.

property expansion_pad: Pad | None

The expansion when the mode is CUSTOM.

class keysight.ads.de.tech.pads.Pad

Base class for pads used in Padstacks.

Defines the size and shape of pads used in Padstacks. This information will be used by the generators that create Pad and Via objects in layout.

class Shape

Defines the shape of a Pad.

Members:

NONE

CIRCLE

SQUARE

RECTANGLE

OBLONG

ROUNDED_RECT

CHAMFERED_RECT

OCTAGON

DONUT

N_GON

property Shape.str

Return the string representation of the Shape.

Shape.__new__(**kwargs)
Shape.__init__(self: keysight.ads.de._pde.tech.Pad.Shape, value: int) None
__init__(unused: InvalidCall, *args, **kwargs) None

Return an error about attempts to initialize objects that don’t support initialization.

property shape: Shape
property x_offset: LengthValue

The horizontal offset from the via placement of the pad center.

property y_offset: LengthValue

The vertical offset from the via placement of the pad center.

property rotate_degrees: str

The counterclockwise rotation of the pad.

Note: This is also the angle for the spokes of a thermal on a circular pad.

class keysight.ads.de.tech.pads.PadLayerEntry
__init__() None
property layer_matcher: LayerMatcher | None
property pad: Pad | None
property thermal: Thermal | None

Defines how the pad connects to a plane on the same net.

property clearance: Antipad | None

Defines an area around the pad which is used by avoidance routing to keep clear of different traces on a different net from the pad.

If the clearance is None, the trace routing spacing rules are used.

property antipad: Antipad | None

Defines a keepout area around the pad where a plane on a different net will not intrude.

class keysight.ads.de.tech.pads.Padstack
__init__(name: str) None
property library: Library | None
property name: str
property default_pad_layer: PadLayerEntry

Return a reference to the default PadLayerEntry.

property pad_layers: ListRefAbc[PadLayerEntry]

Return the collection of PadLayerEntry other than the default pad layer entry.

property drill: ViaPadDrill

Return a reference to the ViaPadDrill.

property mask_expansion: MaskExpansion

Return a reference to the solder mask expansion.

property paste_expansion: MaskExpansion

Return a reference to the solder paste expansion.

class keysight.ads.de.tech.pads.Thermal
class Mode

Defines the mode of a Thermal Relief.

Members:

USE_DEFAULT : ‘UseDefault’: Use the thermal mode defined in the default PadLayerEntry.

FULL_CONNECT : ‘FullConnect’: The pad is fully connected to the plane. There is no thermal relief.

STRAIGHT : ‘Straight’: The thermal has 4 spokes. The clearance is drawn with straight lines.

EXACT : ‘Exact’: The thermal has 4 spokes. The clearance is drawn with with rounded corners to keep exact distance.

STRAIGHT_2 : ‘Straight2’: The thermal has 2 spokes. The clearance is drawn with straight lines.

EXACT_2 : ‘Exact2’: The thermal has 2 spokes. The clearance is drawn with with rounded corners to keep exact distance.

property Mode.str

Return the string representation of the Thermal Mode.

Mode.__new__(**kwargs)
Mode.__init__(self: keysight.ads.de._pde.tech.Thermal.Mode, value: int) None
__init__(mode: str | Mode) None
property mode: Mode
property clearance: LengthValue

Distance from the pad to the surrounding plane, ignored for FULL_CONNECT mode.

property connection_width: LengthValue

Thickness of the thermal connection, ignored for FULL_CONNECT mode.

class keysight.ads.de.tech.pads.ViaPadDrill
__init__(drill_type: str | DrillType) None
property drill_type: DrillType

Circle or Square drill.

property drill_size: LengthValue

For a circular drill, the diameter. For a square drill, the side length.

property x_offset: LengthValue

The horizontal offset from the via placement to the center of the barrel.

property y_offset: LengthValue

The vertical offset from the via placement to the center of the barrel.

property slot_length: LengthValue

The distance the drill is moved in cutting a slot.

property rotate_degrees: str

The counterclockwise rotation of the barrel.

class keysight.ads.de.tech.pads.ChamferedRectPad

Holds shape and size information for a rectagular pad with chamfered corners.

__init__(width: str | LengthValue, height: str | LengthValue, chamfer: str | LengthValue) None
property width: LengthValue
property height: LengthValue
property chamfer: LengthValue

The length (vertical or horizontal) of the chamfer cut in the corner.

property ll_chamfered: bool

Whether lower left corner is chamfered.

property lr_chamfered: bool

Whether lower right corner is chamfered.

property ur_chamfered: bool

Whether upper right corner is chamfered.

property ul_chamfered: bool

Whether upper left corner is chamfered.

class keysight.ads.de.tech.pads.CircularPad

Holds shape and size information for a circular pad.

__init__(diameter: str | LengthValue) None
property diameter: LengthValue
class keysight.ads.de.tech.pads.DonutPad

Holds shape and size information for a donut shaped pad.

__init__(outer_diameter: str | LengthValue, inner_diameter: str | LengthValue) None
property outer_diameter: LengthValue
property inner_diameter: LengthValue
class keysight.ads.de.tech.pads.NGonPad

Holds shape and size information for an n-sided polygonal pad.

__init__(width: str | LengthValue, num_sides: str) None
property width: LengthValue
property num_sides: str
class keysight.ads.de.tech.pads.NoPad

Used for cases where there is no pad.

This is essentially an explicit alternative to None.

__init__() None
class keysight.ads.de.tech.pads.OblongPad

Holds shape and size information for an oblong pad (rectangle with very rounded corners).

__init__(width: str | LengthValue, height: str | LengthValue) None
property width: LengthValue
property height: LengthValue
class keysight.ads.de.tech.pads.OctagonalPad

Holds shape and size information for an octagonal pad.

__init__(width: str | LengthValue) None
property width: LengthValue
class keysight.ads.de.tech.pads.RectangularPad

Holds shape and size information for a rectangular pad.

__init__(width: str | LengthValue, height: str | LengthValue) None
property width: LengthValue
property height: LengthValue
class keysight.ads.de.tech.pads.RoundedRectPad

Holds shape and size information for a rectagular pad that can have rounded corners.

__init__(width: str | LengthValue, height: str | LengthValue, radius: str | LengthValue) None
property width: LengthValue
property height: LengthValue
property radius: LengthValue

The radius of the rounded corners.

property ll_rounded: bool

Whether lower left corner is rounded.

property lr_rounded: bool

Whether lower right corner is rounded.

property ur_rounded: bool

Whether upper right corner is rounded.

property ul_rounded: bool

Whether upper left corner is rounded.

class keysight.ads.de.tech.pads.SquarePad

Holds shape and size information for a square pad.

__init__(width: str | LengthValue) None
property width: LengthValue
On this page