Design Elements

Classes

class keysight.ads.de.db_uu.ApolloObject

Base class for objects that appear in Designs.

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

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

delete_object() None
find_prop(name: str) Property | None
property groups: NamedReadableCollectionAbc[Group]

The collection of groups that contain this object.

property library: Library
property parent: Design
property props: NamedReadableCollectionAbc[Property]
property type: ApolloType
class keysight.ads.de.db_uu.AppObject

Bases: ApolloObject

An application defined extension object.

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

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

class keysight.ads.de.db_uu.AppObjectIter
__init__(design: Design) None
class keysight.ads.de.db_uu.Arc

Bases: Shape

class keysight.ads.de.db_uu.ArrayInst

Bases: Instance

class keysight.ads.de.db_uu.AttrDisplay

Bases: TextDisplay

Display object that displays an attribute of some other object.

__init__(obj: ApolloObject | Design, attr_type: DesignAttrType | InstAttrType | InstTermAttrType | NetAttrType | TermAttrType, layer_id: LayerId, origin: PointF | tuple[float, float], font_name: str, height: float, align: TextAlignment = TextAlignment.CENTER_LEFT, orient: Orientation = Orientation.R0, display_format: TextDisplayFormat = TextDisplayFormat.VALUE, has_overbar: bool = False, is_visible: bool = True, is_drafting: bool = True) None
property attribute: DesignAttrType | InstAttrType | InstTermAttrType | NetAttrType | TermAttrType
property object: ApolloObject | Design
class keysight.ads.de.db_uu.BlockObject

Bases: ApolloObject

class keysight.ads.de.db_uu.BundleNet

Bases: Net

A multi-bit net whose name contains commas separating the bits (e.g. “a, b, c”).

__init__(design: Design, name: str) None
property bits: IndexedReadableCollectionAbc[Net]
class keysight.ads.de.db_uu.BundleTerm

Bases: Term

__init__(net: Net, name: str, term_type: TermType = TermType.INPUT_OUTPUT, *, number: int = 0) None
property bits: IndexedReadableCollectionAbc[Term]
class keysight.ads.de.db_uu.BusNet

Bases: Net

A multi-bit net whose name uses bus syntax (e.g. “A<0:7>”).

__init__(design: Design, base_name: str, start: int, stop: int, step: int = 1) None
property bits: IndexedReadableCollectionAbc[Net]
class keysight.ads.de.db_uu.BusTerm

Bases: Term

__init__(net: Net, base_name: str, start: int, stop: int, step: int = 1, term_type: TermType = TermType.INPUT_OUTPUT, *, number: int = 0) None
property bits: IndexedReadableCollectionAbc[Term]
class keysight.ads.de.db_uu.BusNetBit

Bases: Net

A single bit net whose name uses bus syntax (e.g. “A<0>”).

__init__(design: Design, base_name: str, bit: int) None
class keysight.ads.de.db_uu.BusTermBit

Bases: Term

__init__(net: Net, base_name: str, bit: int, term_type: TermType = TermType.INPUT_OUTPUT, *, number: int = 0) None
class keysight.ads.de.db_uu.CompositeDesignIter
__init__(design: Design) None
class keysight.ads.de.db_uu.CompositeObject

Bases: Group

Base class for composite objects in a design.

A collection of objects that represent a special purpose object such as a Plane or Interconnect.

property master_object: ApolloObject

Returns the master object (which is not in this Composite Group).

property name: str
class keysight.ads.de.db_uu.ConstructionLine

Bases: AppObject

A construction line used to aid in aligning objects.

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

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

property layer_id: LayerId
property points: tuple[PointF | tuple[float, float], PointF | tuple[float, float]]
class keysight.ads.de.db_uu.CustomVia

Bases: Via

A custom OpenAccess Via.

The via is defined partly by its definition in the technology. The geometry of a custom via is determined by another design.

__init__(design: Design, via_def_name: str, origin: PointF | tuple[float, float]) None
property via_master_lcv_name: LCVName

The cellview name of the master design referenced by this custom via.

class keysight.ads.de.db_uu.Design

A database that holds all or part of the data that describes a design.

Depending on the parent module, the units of geometric values will be user units or database units.

__init__(lib: str, cell: str, view: str, mode: DesignMode = DesignMode.READ_ONLY) None
__init__(lib: Library, cell: str, view: str, mode: DesignMode = DesignMode.READ_ONLY) None
__init__(*, cell: Cell, view: str, mode: DesignMode = DesignMode.READ_ONLY) None
__init__(*, view: View, mode: DesignMode = DesignMode.READ_ONLY) None
add_attr_display(obj: ApolloObject | Design, attr_type: AttrType, layer_id: LayerId, origin: PointF | tuple[float, float], font_name: str, height: float, align: TextAlignment = TextAlignment.CENTER_LEFT, orient: Orientation = Orientation.R0, display_format: TextDisplayFormat = TextDisplayFormat.VALUE, has_overbar: bool = False, is_visible: bool = True, is_drafting: bool = True) AttrDisplay
add_circle(layer_id: LayerId, center: PointF | tuple[float, float], radius: float) Ellipse
add_constrained_via(lib_rule_name: str, loc: PointF | tuple[float, float]) PCBVia
add_construction_line(layer_id: LayerId, pt1: PointF | tuple[float, float], pt2: PointF | tuple[float, float]) ConstructionLine
add_custom_via(via_def_name: str, origin: PointF | tuple[float, float]) CustomVia
add_dot(layer_id: LayerId, loc: PointF | tuple[float, float]) Dot
add_dot_for_pin(loc: PointF | tuple[float, float]) Dot
add_ellipse(layer_id: LayerId, box: BoxF) Ellipse
add_inst_attr_display(inst: Instance, master_attribute: DesignAttrType, layer_id: LayerId, origin: PointF | tuple[float, float], font_name: str, height: float, align: TextAlignment = TextAlignment.CENTER_LEFT, orient: Orientation = Orientation.R0, display_format: TextDisplayFormat = TextDisplayFormat.VALUE, has_overbar: bool = False, is_visible: bool = True, is_drafting: bool = True) InstAttrDisplay
add_instance(master: ItemInfo, origin: PointF | tuple[float, float], *, angle: float = 0.0) Instance
add_instance(master: CellviewRefLike, origin: PointF | tuple[float, float], *, name: str = '', angle: float = 0.0) Instance
add_line(layer_id: LayerId, outline: Outline, arc_resolution: float = 5.0) Line
add_line(layer_id: LayerId, outline: Sequence[PointF | tuple[float, float]], arc_resolution: float = 5.0) Line
add_net(net_name: str) Net
add_net_connection_label(pt: PointF | tuple[float, float], prop_name: str, net_name: str) EvalText
add_numbered_term(net: Net, term_name: str, term_number: int, term_type: TermType = TermType.INPUT_OUTPUT) Term
add_pad_with_drill_layer(padstack: Padstack | str, drill_layer: LayerId, loc: PointF | tuple[float, float]) PCBPad
add_pad_with_specified_layers(padstack: Padstack | str, top_layer: LayerId, bottom_layer: LayerId, loc: PointF | tuple[float, float], minimize_drills: bool = True) PCBPad
add_path(layer_id: LayerId, polyline: GenPolyline) Polygon
add_path(layer_id: LayerId, polyline: Sequence[PointF | tuple[float, float]], width: float) Polygon
add_pathseg(layer_id: LayerId, begin: PointF | tuple[float, float], end: PointF | tuple[float, float], width: float, end_style: LineEndType) PathSeg
add_pin(term: Term, pin_figs: PinFig, *, angle: float = 0.0) Pin
add_pin(term: Term, pin_figs: list['PinFig'], *, angle: float = 0.0) Pin
add_pin_fig_for_term_type(term_type: TermType, loc: PointF | tuple[float, float]) PinFig
add_plane(plane_info: PlaneInfo, shape: GenPolygonWithHoles, name: str) Plane
add_plane(plane_info: PlaneInfo, shape: GenPolygon, name: str) Plane
add_plane(plane_info: PlaneInfo, shape: Shape, name: str) Plane
add_polygon(layer_id: LayerId, polygon: GenPolygonWithHoles | GenPolygon | Sequence[PointF | tuple[float, float]], arc_resolution: float = 5.0) Polygon
add_power_term(term_name: str, power: str, default_net: str) Term
add_rectangle(layer_id: LayerId, ll_or_box: BoxF) Rect
add_rectangle(layer_id: LayerId, ll_or_box: PointF | tuple[float, float], ur: PointF | tuple[float, float]) Rect
add_scalar_net(name: str | None = None) ScalarNet
add_single_layer_pad(padstack: Padstack | str, pad_layer: LayerId, loc: PointF | tuple[float, float]) PCBPad
add_stacked_via(lib_rule_name: str, loc: PointF | tuple[float, float]) PCBVia
add_term(net: Net, term_name: str, term_type: TermType = TermType.INPUT_OUTPUT) Term
add_text(layer_id: LayerId, text: str, origin: PointF | tuple[float, float], font_name: str, height: float, align: TextAlignment = TextAlignment.CENTER_LEFT, orient: Orientation = Orientation.R0, has_overbar: bool = False, is_visible: bool = True, is_drafting: bool = True) Text
add_through_pad(padstack: Padstack | str, loc: PointF | tuple[float, float]) PCBPad
add_through_via(padstack: Padstack | str, loc: PointF | tuple[float, float]) PCBVia
add_trace(layer_id: LayerId, polyline: GenPolyline) Polygon
add_trace(layer_id: LayerId, polyline: Sequence[PointF | tuple[float, float]], width: float) Polygon
add_var_instance(origin: PointF | tuple[float, float], name: str | None = None) Instance
add_via_with_drill_layer(padstack: Padstack | str, drill_layer: LayerId, loc: PointF | tuple[float, float]) PCBVia
add_via_with_specified_layers(padstack: Padstack | str, top_layer: LayerId, bottom_layer: LayerId, loc: PointF | tuple[float, float], minimize_drills: bool = True) PCBVia
add_wire(outline: Outline, *, layer_id: 'LayerId' | None = None) Line
add_wire(outline: Sequence[PointF | tuple[float, float]], *, layer_id: 'LayerId' | None = None) Line
property bbox: BoxF
calculate_text_width(text: str, font_height: float, font_name: str) float
property cell: Cell
property cell_name: str
clear_design() None
property config_view_name: str
create_layer_id(layer_name: str, purpose_name: str | None = None) LayerId
create_netlist() str
property dbu_to_meter_factor: float
dbu_to_uu(arg: PointDBU) PointUU
dbu_to_uu(arg: tuple[int, int]) PointUU
dbu_to_uu(arg: int) float

Convert a value in database units to an equivalent value in user units.

property dbu_to_uu_factor: float

The ratio of user units to database units in the technology of this design.

property default_wire_layer: LayerId
property design_name: str
property fig_groups: NamedReadableCollectionAbc[FigGroup]

The collection of fig groups in this design.

find_instance(inst_name: str) Instance | None
find_net(net_name: str) Net | None
find_or_add_net(net_name: str) Net
find_prop(name: str) Property | None
find_term(term_name: str) Term | None
find_term_numbered(term_number: int) Term | None
generate_netlist(config_view: CellviewRefLike | None = None) str
get_hierarchy_for_netlist(config_view: CellviewRefLike | None = None) DesignHierarchy
get_instance(inst_name: str) Instance
get_layer_for_pin() LayerId
get_layers() list[LayerId]
get_net_iter() NetIter
get_pcell_parent_library() Library

Use during pcell generation to get the library of the parent design.

get_preference(preference: WorkspacePreference | LibSpecificPreference) PreferenceValueType

Use with de.experimental.preferences(): to work with preferences. The API is subject to change.

get_snap_angle_for_new_pin(loc: PointF | tuple[float, float]) float
get_snap_layer_for_new_pin(loc: PointF | tuple[float, float]) LayerId
get_term_iter() TermIter
property groups: NamedReadableCollectionAbc[Group]

The collection of groups in this design.

Note: Some groups are not uniquely named.

property has_explicit_hierarchy_policy: bool
property hierarchy_policy_name: str
in_database_units() DesignDBU
in_user_units() DesignUU
property instances: NamedItemCollectionAbc[Instance]
property is_layout: bool
property is_schematic: bool
property is_symbol: bool
property lib_name: str
property library: Library
make_pcell(function_name: str) None
property meter_to_dbu_factor: float
property meter_to_uu_factor: float
property model_def: ModelDefBase | None
property nets: NamedItemCollectionAbc[Net]
property pcell_parameters: NamedItemCollectionAbc[OAParam]
pick_object_at(loc: PointF | tuple[float, float], tolerance: float | None = None) ApolloObject | None
pick_objects_at(loc: PointF | tuple[float, float], tolerance: float | None = None) list[ApolloObject]
property props: NamedReadableCollectionAbc[Property]
save_design() None
save_design_as(destination: CellviewRefLike) None
property selected_objects: list[ApolloObject]
set_origin(origin: PointF | tuple[float, float]) None
set_preference(preference: WorkspacePreference | LibSpecificPreference, value: PreferenceValueType) None

Use with de.experimental.preferences(): to work with preferences. The API is subject to change.

property shapes: ShapeIter
property terms: NamedItemCollectionAbc[Term]
property unit_name: str
uu_to_dbu(arg: PointUU) PointDBU
uu_to_dbu(arg: tuple[float, float]) PointDBU
uu_to_dbu(arg: float) int

Convert a value in user units to an equivalent value in database units.

property uu_to_dbu_factor: int

The ratio of database units to user units in the technology of this design.

property uu_to_meter_factor: float
property view: View
property view_name: str
class keysight.ads.de.db_uu.DesignFigGroupIter
__init__(design: Design) None
class keysight.ads.de.db_uu.Donut

Bases: Shape

class keysight.ads.de.db_uu.Dot

Bases: Shape

__init__(design: Design, layer_id: LayerId, loc: PointF | tuple[float, float]) None
property height: float
property location: PointF
property width: float
class keysight.ads.de.db_uu.Ellipse

Bases: Shape

__init__(design: Design, layer_id: LayerId, center_or_box: PointF | tuple[float, float], radius: float) None
__init__(design: Design, layer_id: LayerId, center_or_box: BoxF) None
class keysight.ads.de.db_uu.EvalText

Bases: Text

class keysight.ads.de.db_uu.Fig

Bases: BlockObject

Base class for all figures.

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

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

property bbox: BoxF
property fig_group_mem: FigGroupMem | None

Return the FigGroupMem that references this Fig, if it is a member of a FigGroup.

class keysight.ads.de.db_uu.FigGroup

A collection of figures that can be reused.

This collection is called a Group in the ADS UI.

__init__(design: Design, name: str) None
add_object_to_fig_group(obj: ApolloObject) None

Add obj to this FigGroup.

If obj is a pin, all of its PinFigs will be added. If obj is a composite object, all of its Figs will be added.

add_object_to_fig_group is deprecated, and will be removed in the 2025 Update 2 release. Use add_to_fig_group

add_objects(objects: Sequence[ApolloObject]) None

Add the objects to this FigGroup if not already a member.

add_to_fig_group(obj: ApolloObject) None

Add obj to this FigGroup.

If obj is a pin, all of its PinFigs will be added. If obj is a composite object, all of its Figs will be added.

contains(obj: ApolloObject) bool
property has_any_children: bool
property members: ReadableCollectionAbc[FigGroupMem]
property name: str
remove_from_fig_group(obj: ApolloObject) None

Remove obj from this FigGroup.

If obj is a pin, all of its PinFigs will be removed. If obj is a composite object, all of its Figs will be removed.

remove_object_from_fig_group(obj: ApolloObject) None

Remove obj from this FigGroup.

If obj is a pin, all of its PinFigs will be removed. If obj is a composite object, all of its Figs will be removed.

remove_object_from_fig_group is deprecated, and will be removed in the 2025 Update 2 release. Use remove_from_fig_group

class keysight.ads.de.db_uu.Group

Bases: ApolloObject

A named collection of objects from the same database.

Note: Some groups are not uniquely named.

add_to_group(obj: ApolloObject) None
add_to_group_as_leader(obj: ApolloObject) None
contains(obj: ApolloObject) bool
property is_empty: bool
property is_ordered: bool
property is_uniquely_named: bool

True if the group name must be unique in the database that owns the group.

property leader: GroupMember | None
property members: ReadableCollectionAbc[GroupMember]
property name: str
class keysight.ads.de.db_uu.GroupMember

Bases: ApolloObject

A link between a Group and a member object.

__init__(group: Group, obj: ApolloObject, is_leader: bool = False) None

Create a GroupMember, adding obj to the group.

property group: Group
property is_leader: bool
property object: ApolloObject
class keysight.ads.de.db_uu.Instance

Bases: Ref

Represents an instance of a master cellview in a design.

__init__(design: Design, master: ItemInfo, origin: PointF | tuple[float, float], *, angle: float = 0.0) None
__init__(design: Design, master: CellviewRefLike, origin: PointF | tuple[float, float], *, name: str = '', angle: float = 0.0) None
activate() None
property bbox_annotation_only: BoxF
property bbox_with_annotation: BoxF
property cell_name: str
clear_scope() None
property component_name: str
static create(design: Design, master: CellviewRefLike, origin: PointF | tuple[float, float], *, name: str = '', angle: float = 0.0) Instance
static create_from_item(design: Design, master: ItemInfo, origin: PointF | tuple[float, float], *, angle: float = 0.0) Instance
deactivate() None
deactivate_and_short() None
get_inst_pin_iter() InstPinIter
get_inst_term_iter() InstTermIter
property has_global_scope: bool
property has_nested_scope: bool
property inst_name: str
property inst_pins: NamedItemCollectionAbc[InstPin]
property inst_terms: NamedItemCollectionAbc[InstTerm]
invoke_item_parameter_changed_callback(parameter_names: str | Sequence[str]) None
property is_deactivated: bool
property is_deactivated_and_shorted: bool
property is_implicit: bool
is_primitive_in_default_hierarchy_context(view: View | None = None) bool
is_primitive_in_hierarchy(hierarchy: DesignHierarchy) bool
property is_shorted: bool
property is_var_instance: bool
property item_model_is_bom_item: bool

model_def.is_bom_item

Type:

item_model_is_bom_item is deprecated, and will be removed in the 2025 Update 2 release. Use

property item_model_is_normal_or_undefined: bool

model_def is None

Type:

item_model_is_normal_or_undefined is deprecated, and will be removed in the 2025 Update 2 release. Use

property item_model_is_sub_design: bool

model_def.is_sub_design

Type:

item_model_is_sub_design is deprecated, and will be removed in the 2025 Update 2 release. Use

property library_name: str
property master_cell: Cell | None
property master_lcv_name: LCVName
property model_cell_name: str
property model_def: ModelDefBase | None
property model_library_name: str
property name: str
property net: Net | None
property origin: PointF
property parameters: ParamBaseCollection
set_global_scope() None
set_nested_scope() None
property specialized_subview: str
update_item_annotation() None
property vars: VarParamCollection
property view_name: str
class keysight.ads.de.db_uu.InstanceIter
__init__(design: Design) None
property design: Design
exclude_composite_children() None
exclude_pin_insts() None
include_composite_children() None
include_implicit_insts() None
include_pin_insts() None
limit_region(region: BoxF, allow_intersect: bool) None
class keysight.ads.de.db_uu.InstAttrDisplay

Bases: TextDisplay

Display object that displays an attribute of an instance master.

__init__(inst: Instance, master_attribute: DesignAttrType, layer_id: LayerId, origin: PointF | tuple[float, float], font_name: str, height: float, align: TextAlignment = TextAlignment.CENTER_LEFT, orient: Orientation = Orientation.R0, display_format: TextDisplayFormat = TextDisplayFormat.VALUE, has_overbar: bool = False, is_visible: bool = True, is_drafting: bool = True) None
property instance: Instance
property master_attribute: DesignAttrType
class keysight.ads.de.db_uu.InstPin

Represents the physical connection between an instance terminal and a pin on the master design.

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

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

add_label(label: str, pt: PointF | tuple[float, float]) AttrDisplay
property bbox: BoxF | None
find_first_wire_label() AttrDisplay | None
get_angle_normalized() int
get_snap_layer_id() LayerId
property inst_pin_id: str
property inst_term: InstTerm
property instance: Instance
property is_valid: bool
property master_pin: Pin | None
property net: Net | None
property snap_point: PointF | None
class keysight.ads.de.db_uu.InstPinIter

Bases: object

__init__(obj: Net) None
__init__(obj: Instance) None
__init__(obj: Instance, term_or_bbox: str) None
__init__(obj: Instance, term_or_bbox: int) None
__init__(obj: Instance, term_or_bbox: BoxF) None
__init__(obj: InstTerm) None
class keysight.ads.de.db_uu.InstPropDisplay

Bases: TextDisplay

Display object that displays a property value of an instance master.

property instance: Instance
property master_prop: Property
class keysight.ads.de.db_uu.InstTerm

Bases: BlockObject

Represents a connection between a net and a terminal in the master of an instance.

If either the instance or term is multibit, the number of bits in the net must match the number of bits in the instance times the number of bits in the term.

InstTerms can exist that do not have a corresponding terminal in the instance master design. In this case, the InstTerm is not bound.

InstTerms can be bound by name or by number. If bound by number, all InstTerms on the instance must be bound by number. If bound by name, the InstTerm is bound to the terminal in the master design with the same name.

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

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

add_label(label: str, pt: PointF | tuple[float, float]) AttrDisplay
property bits: IndexedReadableCollectionAbc[InstTerm]
find_first_wire_label() AttrDisplay | None
get_inst_pin_iter() InstPinIter
get_inst_term_name() str

get_inst_term_name is deprecated, and will be removed in the 2025 Update 2 release. Use term_name if not numbered or term.name if bound.

get_inst_term_number() int

get_inst_term_number is deprecated, and will be removed in the 2025 Update 2 release. Use term_number if numbered or term.number if bound.

property inst_pins: NamedItemCollectionAbc[InstPin]
property inst_term_id: str
property instance: Instance
property is_bound: bool

Return True if this InstTerm is bound to the matching terminal on the master design.

property is_implicit: bool
property is_numbered: bool

Return True if this InstTerm uses numbers to bind to the terminal.

property net: Net | None
property term: Term | None
property term_name: str

Return the term name if this InstTerm uses names to bind the term.

Otherwise, raise an exception.

property term_number: int

Return the term number if this InstTerm uses numbers to bind the term.

Otherwise, raise an exception.

class keysight.ads.de.db_uu.InstTermIter
__init__(obj: Instance)
__init__(obj: Net)
class keysight.ads.de.db_uu.Interconnect

Bases: CompositeObject

An Interconnect is a composite object used to implement a Trace.

property interconnect_info: InterconnectInfo

Return a reference to the cached copy of the InterconnectInfo for this Interconnect.

class keysight.ads.de.db_uu.InterconnectDesignIter
__init__(design: Design) None
class keysight.ads.de.db_uu.InterconnectInfo

Holds the information required to create an Interconnect, trace or path.

It may also hold the information that describes existing traces, paths and interconnect.

__init__(obj: Tech)
__init__(obj: Interconnect)
__init__(obj: Path)
__init__(obj: Shape)
__init__(obj: Tech, line: GenPolyline, layer_id: LayerId)

Create a new InterconnectInfo object.

InterconnectInfo(tech):

creates an empty InterconnectInfo.

InterconnectInfo(tech, gen_polyline, layer_id):

creates an InterconnectInfo based on the information from the polyline.

InterconnectInfo(interconnect):

creates an InterconnectInfo with a copy of the information from the interconnect object.

InterconnectInfo(path):

creates an InterconnectInfo with a copy of the information from the path object.

InterconnectInfo(shape):

creates an InterconnectInfo with a copy of the information from the shape object.

add_point(point: PointF | tuple[float, float]) None
add_point_with_bulge(point: PointF | tuple[float, float], bulge: float) None
add_points(points: Sequence[PointF | tuple[float, float]]) None
construct_interconnect(net: Net) ApolloObject
construct_interconnect_or_trace_with_search_for_net(design: Design) ApolloObject
construct_interconnect_with_search_for_net(design: Design, name_prefix: str = '') Interconnect
construct_trace(design: Design) Polygon
copy() InterconnectInfo

Return a copy of this object.

data_matches(other: InterconnectInfo, check_layers: bool) bool

Return true if the other info has matching data.

property first_line_info: LineTypeInfo
property first_point: PointF | None
get_line_info_at_end(end: WhichConnection) LineTypeInfo
get_point_at_end(end: WhichConnection) PointF | None
get_starting_index_of_segment(segment_number: int) int
get_via_at_index(index: int) ViaElement
property has_any_teardrop_definitions: bool
property has_any_vias: bool
property has_arcs: bool
has_via_at_index(index: int) bool
initialize_first_line_type(info: LineTypeInfo) None
property last_line_info: LineTypeInfo
property last_point: PointF | None
property outline: Outline
set_last_arc_angle_then_add_point(point: PointF | tuple[float, float], angle: float) None
set_last_bulge_then_add_point(point: PointF | tuple[float, float], bulge: float) None
set_next_line_type(info: LineTypeInfo) None
set_via_at_last_point(via_element: ViaElement) None
property teardrop_touch_back: TeardropTouching
property teardrop_touch_front: TeardropTouching
class keysight.ads.de.db_uu.Line

Bases: Shape

__init__(design: Design, layer_id: LayerId, outline: Outline, arc_resolution: float = 5.0) None
add_text_label(label: str, pt: PointF | tuple[float, float] | None = None) Text
add_wire_label(label: str, pt: PointF | tuple[float, float] | None = None) AttrDisplay
property interconnect_info: InterconnectInfo

Return a reference to the cached copy of the InterconnectInfo for this Line.

class keysight.ads.de.db_uu.Net

Bases: BlockObject

Base class for net objects.

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

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

are_all_bits_of_net_global_ground() bool
static create(design: Design, net_name: str) Net

Create a derived net object, depending on the type of name.

get_bit(number: int) Net
get_inst_pin_iter() InstPinIter
get_preferred_net() Net
property inst_pins: NamedItemCollectionAbc[InstPin]
is_empty_and_unlabeled() bool
property is_global: bool
property is_global_ground: bool
property is_implicit: bool
property name: str

Return net name.

If the net was created without a name, one has been generated for it.

property num_bits: int
property shapes: ShapeIter
property signal_type: SignalType
class keysight.ads.de.db_uu.NetIter
__init__(design: Design) None
class keysight.ads.de.db_uu.Path

Bases: Shape

property interconnect_info: InterconnectInfo

Return a reference to the cached copy of the InterconnectInfo for this Path.

class keysight.ads.de.db_uu.PathSeg

Bases: Shape

__init__(design: Design, layer_id: LayerId, begin: PointF | tuple[float, float], end: PointF | tuple[float, float], width: float, end_style: LineEndType) None
property begin_point: PointF
property end_point: PointF
set_points(begin: PointF | tuple[float, float], end: PointF | tuple[float, float]) None
property width: float
class keysight.ads.de.db_uu.PCBBase

Bases: ScalarInst

Base class for PCB Pads and Vias.

class PadViaType

Bases: pybind11_object

Type of Pad or Via.

Members:

SINGLE_LAYER_PAD

DRILL_LAYER

THROUGH

BLIND_BURIED_PAD

BLIND_BURIED_PAD = <PadViaType.BLIND_BURIED_PAD: 3>
DRILL_LAYER = <PadViaType.DRILL_LAYER: 1>
SINGLE_LAYER_PAD = <PadViaType.SINGLE_LAYER_PAD: 0>
THROUGH = <PadViaType.THROUGH: 2>
__init__(self: keysight.ads.de._pde.db.PadViaType, value: int) None
property name
property value
static is_pcb_pad(inst: Instance) TypeGuard[PCBPad]
static is_pcb_via(inst: Instance) TypeGuard[PCBVia]
static is_pcb_via_or_pad(inst: Instance) TypeGuard[PCBBase]
static is_stacked_pcb_via(inst: Instance) TypeGuard[StackedPCBVia]
property pad_via_type: PadViaType
class keysight.ads.de.db_uu.PCBPad

Bases: PCBBase

Represents a PCB Pad instance in layout.

The Pad can be a single layer pad, a pad with a specified drill layer, a pad with specified top and bottom layers, or a through pad.

property bottom_layer: int

Bottom layer of this pad.

Will raise an exception if this is not a pad with top and bottom layers.

property drill_layer: int

Drill layer of this pad.

Will raise an exception if this is not a pad with drill.

property pad_layer: int

Layer of this pad.

Will raise an exception if this is not a single layer pad.

property padstack_name: str

Name of the padstack template that defines this pad.

The name will be in the form lib_name:padstack_name.

property top_layer: int

Top layer of this pad.

Will raise an exception if this is not a pad with top and bottom layers.

class keysight.ads.de.db_uu.PCBVia

Bases: PCBBase

Represents a PCB Via instance in layout.

The Via can be specified by rule or with a Padstack template definition and specified layers. Vias with Padstack definitions can have a specified drill layer, specified top and bottom layers, or be a through via.

property bottom_layer: int

Bottom layer of this via.

Will raise an exception if this is not a via with top and bottom layers.

property drill_layer: int

Drill layer of this via.

Will raise an exception if this is not a via with drill.

property padstack_name: str

Name of the padstack template that defines this via.

The name will be in the form lib_name:padstack_name. This will be empty if the via was defined by a rule.

property rule_name: str

Name of the via rule that defines this via.

The name will be in the form lib_name:rule_name. This will be empty if the via was not defined by a rule.

property top_layer: int

Top layer of this via.

Will raise an exception if this is not a via with top and bottom layers.

class keysight.ads.de.db_uu.Pin

Bases: BlockObject

Represents the physical connection between a terminal and a net.

__init__(term: Term, pin_figs: PinFig, *, angle: float = 0.0) None
__init__(term: Term, pin_figs: list[PinFig], *, angle: float = 0.0) None
add_label(label: str, pt: PointF | tuple[float, float]) AttrDisplay
property angle: float
find_first_wire_label() AttrDisplay | None
get_pin_artifact_bbox_only() BoxF
get_pinfig_bbox() BoxF
get_pinfig_bbox_with_artifact() BoxF
get_primary_pin_fig() PinFig | None
property has_any_pinfigs: bool
property name: str
property needs_drawing_artifact: bool
property net: Net
property snap_point: PointF
property term: Term
property term_name: str
property term_number: int
update_pin_annotation(preserve_origin: bool = True) None
class keysight.ads.de.db_uu.PinFig

Bases: Fig

Base class for all figures that can represent pins (instances, shapes and vias).

add_to_pin(pin: Pin) None
property bbox: BoxF
find_first_wire_label() AttrDisplay | None
property net: Net | None
property pin: Pin | None
remove_from_pin() None
class keysight.ads.de.db_uu.PinIter
__init__(obj: Design | Net | Term) None
class keysight.ads.de.db_uu.Plane

Bases: CompositeObject

A plane is a large shape (composite) on a single net.

The layer is usually a conductor (e.g. copper). The net is often ground or power.

copy_original_polygon() GenPolygonWithHoles

Get a copy of the original polygon that defines the plane.

Modifications made to the returned polygon won’t affect this Plane.

copy_plane_info() PlaneInfo

Get a copy of the information used to build this plane.

Modifications made to the returned PlaneInfo won’t affect this Plane.

static rebuild_plane(plane: Plane) Plane

Rebuild the plane using the current PlaneInfo and polygon.

The original plane will be deleted and the return value will be the new plane.

set_plane_info(plane_info: PlaneInfo) None

Set the information required to rebuild this plane.

class keysight.ads.de.db_uu.PlaneInfo

Holds the information required to create/recreate a Plane.

class DegasOptions

Options for degassing a plane.

class VentShape

Describes the shape of the perforations used for venting a Plane.

Members:

INVALID : ‘Invalid’: This vent shape is not specified.

RECTANGLE : ‘Rectangle: The vent shape is a rectangle.

SQUARE : ‘Square: The vent shape is a square.

CIRCLE : ‘Circle: The vent shape is a circle.

OCTAGON : ‘Octagon: The vent shape is an octagon.

CIRCLE = <VentShape.CIRCLE: 2>
INVALID = <VentShape.INVALID: -1>
OCTAGON = <VentShape.OCTAGON: 3>
RECTANGLE = <VentShape.RECTANGLE: 0>
SQUARE = <VentShape.SQUARE: 1>
__init__(self: keysight.ads.de._pde.db.DegasOptions.VentShape, value: int) None
property name
property str

Return the string representation of the vent shape.

property value
class VentStartingPosition

Describes the location of the initial perforation when venting a plane.

Members:

LOWER_LEFT : ‘LowerLeft’: Start from the lower left of the bounding box.

LOWER_RIGHT : ‘LowerRight’: Start from the lower right of the bounding box.

UPPER_LEFT : ‘UpperLeft’: Start from the upper left of the bounding box.

UPPER_RIGHT : ‘UpperRight’: Start from the upper right of the bounding box.

LOWER_LEFT = <VentStartingPosition.LOWER_LEFT: 0>
LOWER_RIGHT = <VentStartingPosition.LOWER_RIGHT: 1>
UPPER_LEFT = <VentStartingPosition.UPPER_LEFT: 2>
UPPER_RIGHT = <VentStartingPosition.UPPER_RIGHT: 3>
__init__(self: keysight.ads.de._pde.db.DegasOptions.VentStartingPosition, value: int) None
property name
property str

Return the string representation of the vent starting position.

property value
__init__(plane_or_design: Design) None
__init__(plane_or_design: PlaneInfo) None
property min_edge_distance: float

The minimum clearance between a perforation and any clearance or edge.

property min_venting_area: float

The minimum area of a plane shape that will be considered for perforation.

property pitch_height: float

Specifies vertical separation between the center points of the venting holes.

property pitch_width: float

Specifies horizontal separation between the center points of the venting holes.

same_props(other: DegasOptions) bool

Determine if the essential properties are the same.

This is not the same as equality because properties that are not enabled are ignored.

property starting_offset_x: float

The horizontal spacing from the starting position to the initial perforation.

property starting_offset_y: float

The vertical spacing from the starting position to the initial perforation.

property vent_shape: VentShape

Specifies the shape of the degassing holes.

property vent_shape_height: float

Specifies the height of the vent shape.

For Square, Circle and Octagon, this is ignored.

property vent_shape_width: float

Specifies the width of the vent shape.

For Square, Circle and Octagon, only the width is used.

property vent_starting_position: VentStartingPosition

Describes the location of the initial perforation.

class RemoveIslandsMode

Describes island removal.

Members:

REMOVE_NONE : ‘RemoveNone’: Does not remove any islands.

REMOVE_ALL : ‘RemoveAll: Removes all islands.

REMOVE_BY_AREA : ‘RemoveByArea’: Removes islands whose area is less than the min_island_area.

REMOVE_ALL = <RemoveIslandsMode.REMOVE_ALL: 1>
REMOVE_BY_AREA = <RemoveIslandsMode.REMOVE_BY_AREA: 2>
REMOVE_NONE = <RemoveIslandsMode.REMOVE_NONE: 0>
__init__(self: keysight.ads.de._pde.db.PlaneInfo.RemoveIslandsMode, value: int) None
property name
property str

Return the string representation of the RemoveIslandsMode.

property value
__init__(plane_or_design: Design) None
__init__(plane_or_design: Plane) None
property clearance: float

Defines the minimum distance between a plane and an object from a different net.

This is ignored if using clearance rules (use_clearance_rules is True).

property degas_options: DegasOptions
property degassing_enabled: bool

If True, perforate the plane with rows and columns of holes (using the degas_options).

property layer_id: LayerId

Specifies the layer and purpose of the Plane’s shapes.

property min_feature_width: float

Specifies the minimum width of a feature or notch that gets preserved when smoothing.

property min_island_area: float

Specifies the minimum area of an island that gets preserved when removing islands by area.

property net_name: str

The name of the Plane’s net.

property remove_islands_mode: RemoveIslandsMode

Determines how unconnected islands within the Plane’s outline get removed.

same_props(other: PlaneInfo) bool

Determine if the essential properties are the same.

This is not the same as equality because properties that are not enabled are ignored.

property smoothing_enabled: bool

If True, the Plane’s outline gets smoothed, possibly removing small features and rounding corners.

property thermal_relief_enabled: bool

Insert thermal straps (using thermal_straps_width) to avoid overheating.

property thermal_straps_width: float

Specifies the width of thermal straps.

property use_clearance_rules: bool

If True, use the clearance rules defined in the Constraints Manager and ignore the clearance property.

property use_round_corners_when_smoothing: bool

If True, round corners created when features are removed by smoothing. Otherwise bevel the corners.

property use_rounded_clearance: bool

Use rounded corners when creating clearance around objects with sharp corners.

class keysight.ads.de.db_uu.Polygon

Bases: Shape

__init__(design: Design, layer_id: LayerId, polygon: GenPolygonWithHoles, arc_resolution: float = 5.0) None
get_centerline(allow_arcs: bool = True) GenPolyline

Return a copy of the centerline of this polygon.

property interconnect_info: InterconnectInfo

Return a reference to the cached copy of the InterconnectInfo for this Polygon.

class keysight.ads.de.db_uu.PropDisplay

Bases: TextDisplay

Display object that displays a property value.

property prop: Property
class keysight.ads.de.db_uu.Rect

Bases: Shape

__init__(design: Design, layer_id: LayerId, ll_or_box: BoxF) None
__init__(design: Design, layer_id: LayerId, ll_or_box: PointF | tuple[float, float], ur: PointF | tuple[float, float]) None
class keysight.ads.de.db_uu.Ref

Bases: PinFig

Base class for all instances and vias.

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

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

get_placement_transform() Transform
property is_bound: bool
property master: Design | None
property orient: Orientation
property origin: PointF
class keysight.ads.de.db_uu.RefIter
__init__(design: Design) None
class keysight.ads.de.db_uu.ScalarInst

Bases: Instance

class keysight.ads.de.db_uu.ScalarNet

Bases: Net

A scalar net without bus-name syntax.

__init__(design: Design, name: str | None = None) None
class keysight.ads.de.db_uu.ScalarTerm

Bases: Term

__init__(net: Net, name: str, term_type: TermType = TermType.INPUT_OUTPUT, *, number: int = 0) None
class keysight.ads.de.db_uu.SelectedObjectIter

Bases: object

__init__(design: Design) None
class keysight.ads.de.db_uu.Shape

Bases: PinFig

Base class for shapes in a design.

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

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

get_gen_polygon() GenPolygonWithHoles
get_gen_polygon_without_arcs() GenPolygonWithHoles
get_outline() Outline
property is_closed: bool
property is_filled: bool
property layer: int
property layer_id: LayerId
property legacy_border_thickness: float | LineThickness
property purpose: int
class keysight.ads.de.db_uu.ShapeIter
__init__(obj: Design)
__init__(obj: Design, layerid_or_net_option: LayerId)
__init__(obj: Net, layerid_or_net_option: ShapeIterNetOption)
property design: Design
exclude_invisible_layers() None
exclude_protected_layers() None
include_annotation() None
include_invisible_layers() None
include_protected_layers() None
property is_pin_or_net_iteration: bool
property library: Library
limit_layer(layer: int) None
limit_layerid(layer_id: LayerId) None
limit_purpose(purpose: int) None
limit_region(region: BoxF, option: LimitRegionOption) None
limit_shapes(option: ShapeOption) None
class keysight.ads.de.db_uu.ShapeIterNetOption

Bases: Enum

NET_SHAPES_ONLY = <ShapeIterNetOption.NET_SHAPES_ONLY: 0>
PIN_AND_NET_SHAPES = <ShapeIterNetOption.PIN_AND_NET_SHAPES: 1>
class keysight.ads.de.db_uu.ShapeOption

Bases: Enum

ALL_SHAPES = <ShapeOption.ALL_SHAPES: 0>
class keysight.ads.de.db_uu.StackedPCBVia

Bases: PCBBase

property rule_name: str

Name of the via rule that defines this via.

The name will be in the form lib_name:rule_name. This will be empty if the via was not defined by a rule.

class keysight.ads.de.db_uu.StdVia

Bases: Via

A standard (rectangular) OpenAccess Via.

The via is completely defined by its definition in the technology.

class keysight.ads.de.db_uu.Term

Bases: BlockObject

Terminals represent a logical connection points for a design.

The pins associated with terminals represent the physical connection points. The nets associated with terminals through the terminals to the parent design.

When a terminal connects to a multi-bit net, the terminal must have the same number of bits.

Terminals on a design are associated with InstTerms on an instance of that design. The association is normally done by name, but can be done by number. When terminals connect by number, all terminals on the design must connect by number.

__init__(net: Net, name: str, term_type: TermType = TermType.INPUT_OUTPUT, *, number: int = 0) None

__init__ is deprecated, and will be removed in the 2025 Update 2 release. Use: Term.create

static create(net: Net, name: str, term_type: TermType = TermType.INPUT_OUTPUT, *, number: int = 0) Term
create_connect_def(net_expression: str) None
property is_implicit: bool
property name: str
property net: Net
property number: int

By default, terminals connect by name and this number is 0.

If the number is greater than zero, it represents the netlisting order for this terminal.

property parameters: ParamBaseCollection
property pins: NamedItemCollectionAbc[Pin]
property ref_plane_shift_dbu: float
property ref_plane_shift_meters: float
rename_term(name: str) Term
property term_type: TermType
class keysight.ads.de.db_uu.TermIter
__init__(obj: Design | Net) None
class keysight.ads.de.db_uu.Text

Bases: TextBase

__init__(design: Design, layer_id: LayerId, text: str, origin: PointF | tuple[float, float], font_name: str, height: float, align: TextAlignment = TextAlignment.CENTER_LEFT, orient: Orientation = Orientation.R0, has_overbar: bool = False, is_visible: bool = True, is_drafting: bool = True) None
property alignment: TextAlignment
property has_overbar: bool
property is_drafting: bool
property is_visible: bool
property orientation: Orientation
property text_string: str
class keysight.ads.de.db_uu.TextAttributes
__init__() None
__init__(design_or_text: Design) None
__init__(design_or_text: Text) None
property alignment: TextAlignment
property font_name: str
property has_overbar: bool
property height_dbu: int
property is_drafting: bool
property is_visible: bool
property orientation: Orientation
class keysight.ads.de.db_uu.TextBase

Bases: Shape

Base class for text shapes in a design.

property font_name: str
property text_height: float
property text_origin: PointF
property text_string: str
property unevaluated_text: str
class keysight.ads.de.db_uu.TextDisplay

Bases: TextBase

Base class for all types of text display objects.

property alignment: TextAlignment
property format: TextDisplayFormat
property has_overbar: bool
property is_drafting: bool
property is_visible: bool
property orientation: Orientation
class keysight.ads.de.db_uu.TextOverride

Bases: TextDisplay

A text object that supports overriding text from an instance master.

class keysight.ads.de.db_uu.VectorInst

Bases: Instance

property bits: IndexedReadableCollectionAbc[Instance]
class keysight.ads.de.db_uu.VectorInstBit

Bases: Instance

class keysight.ads.de.db_uu.Via

Bases: Ref

Base class for OpenAccess Vias.

A via represents a physical connection between traces (also PathSegs and Rountes) that are on two different layers. Vias are defined by a definition in the technology.

property name: str

The name from the via definition in the technology.

class keysight.ads.de.db_uu.ViaElement
__init__() None
add_via_name(name: str) None
add_via_names(names: Sequence[str]) None
clear_vias() None
property is_empty: bool
property via_names: list[str]
class keysight.ads.de.db_uu.ViaIter
__init__(obj: Design) None
__init__(obj: Net, options: ViaIterNetOptions) None

Enumerated Types

class keysight.ads.de.db_uu.LimitRegionOption

Bases: Enum

REGION_MUST_TOUCH_ACTUAL_OBJECT = <LimitRegionOption.REGION_MUST_TOUCH_ACTUAL_OBJECT: 1>
REGION_MUST_TOUCH_OBJECT_EDGE = <LimitRegionOption.REGION_MUST_TOUCH_OBJECT_EDGE: 2>
REGION_MUST_CONTAIN_OBJECT = <LimitRegionOption.REGION_MUST_CONTAIN_OBJECT: 0>
REGION_MAY_TOUCH_ONLY_BOUNDING_BOX = <LimitRegionOption.REGION_MAY_TOUCH_ONLY_BOUNDING_BOX: 3>
class keysight.ads.de.db_uu.LineThickness

Bases: Enum

THIN = <LineThickness.THIN: 1>
MEDIUM = <LineThickness.THICK: 2>
THICK = <LineThickness.THICKER: 3>
class keysight.ads.de.db_uu.ViaIterNetOptions

Bases: Enum

NET_VIAS_ONLY = <ViaIterNetOptions.NET_VIAS_ONLY: 0>
PIN_AND_NET_VIAS = <ViaIterNetOptions.PIN_AND_NET_VIAS: 1>

Functions

keysight.ads.de.db_uu.copy_design(source: Design, destination: Design) None
keysight.ads.de.db_uu.create_layout(name: CellviewRefLike) Design

Create a layout from an open library in the active workspace.

Parameters:

name (CellviewRefLike) – The name of the design, usually of the form “LibraryName:CellName:layout”

Example

>>> design = de.db_uu.create_layout(name=("test_lib", "test_2", "layout"))
keysight.ads.de.db_uu.create_schematic(name: CellviewRefLike) Design

Create a schematic from an open library in the active workspace.

Parameters:

name (CellviewRefLike) – The name of the design, usually of the form “LibraryName:CellName:schematic”

Example

>>> design = de.db_uu.create_layout(name=("test_lib", "test_1", "schematic"))
keysight.ads.de.db_uu.create_symbol(name: CellviewRefLike) Design

Create a symbol from an open library in the active workspace.

Parameters:

name (CellviewRefLike) – The name of the design, usually of the form “LibraryName:CellName:symbol”

Example

>>> design = de.db_uu.create_symbol(name=("test_lib", "test_1", "symbol"))
keysight.ads.de.db_uu.find_instance(design: Design, inst_name: str) Instance | None
keysight.ads.de.db_uu.get_view_name_for_sub_design(instance: Instance, view: View | None = None) str
keysight.ads.de.db_uu.open_design(name: CellviewRefLike, mode: DesignMode = DesignMode.READ_ONLY) Design

Open a design from an open library in the active workspace.

Parameters:
  • name (CellviewRefLike) – The name of the design, usually of the form “LibraryName:CellName:schematic”

  • mode (DesignMode) – Specifies the mode in which the design is returned. Defaults to read-only mode.

Example

>>> design = de.db_uu.open_design(name=("LPFoptim_lib", "LPF1Hz", "schematic"))
On this page