Layout#

class pyedb.dotnet.database.cell.layout.Layout(pedb, edb_object)#

Bases: pyedb.dotnet.database.utilities.obj_base.ObjBase

Manages EDB functionalities for a base object.

Overview#

expanded_extent

Get an expanded polygon for the Nets collection.

convert_primitives_to_vias

Convert a list of primitives into vias or pins.

find_object_by_id

Find a layout object by Database ID.

find_net_by_name

Find a net object by name

find_component_by_name

Find a component object by name. Component name is the reference designator in layout.

find_primitive

Find a primitive objects by layer name.

find_padstack_instances

Finds padstack instances matching the specified criteria.

cell

Cell: Owning cell for this layout.

layer_collection

LayerCollection : Layer collection of this layout.

zone_primitives

list of Primitive : List of all the primitives in zones.

fixed_zone_primitive

Primitive : Fixed zones primitive.

terminals

Get terminals belonging to active layout.

cell_instances

list of CellInstance : List of the cell instances in this layout.

layout_instance

LayoutInstance : Layout instance of this layout.

nets

Nets.

primitives

List of primitives.Read-Only.

primitives_by_aedt_name

Primitives.

bondwires

Bondwires.

groups

pin_groups

net_classes

extended_nets

differential_pairs

padstack_instances

Get all padstack instances in a list.

voltage_regulators

port_reference_terminals_connected

bool: Determine if port reference terminals are connected, applies to lumped ports and circuit ports.

Import detail#

from pyedb.dotnet.database.cell.layout import Layout

Property detail#

property Layout.cell#

Cell: Owning cell for this layout.

Read-Only.

property Layout.layer_collection#

LayerCollection : Layer collection of this layout.

property Layout.zone_primitives#

list of Primitive : List of all the primitives in zones.

Read-Only.

property Layout.fixed_zone_primitive#

Primitive : Fixed zones primitive.

property Layout.terminals#

Get terminals belonging to active layout.

Returns:
Terminal dictionaryDict[str, pyedb.dotnet.database.edb_data.terminals.Terminal]
property Layout.cell_instances#

list of CellInstance : List of the cell instances in this layout.

Read-Only.

property Layout.layout_instance#

LayoutInstance : Layout instance of this layout.

Read-Only.

property Layout.nets#

Nets.

Returns:
property Layout.primitives#

List of primitives.Read-Only.

Returns:
list of dotnet.database.dotnet.primitive.PrimitiveDotNet cast objects.
property Layout.primitives_by_aedt_name: dict#

Primitives.

property Layout.bondwires#

Bondwires.

Returns:
list

List of bondwires.

property Layout.groups#
property Layout.pin_groups#
property Layout.net_classes#
property Layout.extended_nets#
property Layout.differential_pairs#
property Layout.padstack_instances#

Get all padstack instances in a list.

property Layout.voltage_regulators#
property Layout.port_reference_terminals_connected#

bool: Determine if port reference terminals are connected, applies to lumped ports and circuit ports.

True if they are connected, False otherwise. Read-Only.

Method detail#

Layout.expanded_extent(nets, extent, expansion_factor, expansion_unitless, use_round_corner, num_increments)#

Get an expanded polygon for the Nets collection.

Parameters:
netslist[Net]

A list of nets.

extentExtentType

Geometry extent type for expansion.

expansion_factorfloat

Expansion factor for the polygon union. No expansion occurs if the expansion_factor is less than or equal to 0.

expansion_unitlessbool

When unitless, the distance by which the extent expands is the factor multiplied by the longer dimension (X or Y distance) of the expanded object/net.

use_round_cornerbool

Whether to use round or sharp corners. For round corners, this returns a bounding box if its area is within 10% of the rounded expansion’s area.

num_incrementsint

Number of iterations desired to reach the full expansion.

Returns:
PolygonData

Notes

Method returns the expansion of the contour, so any voids within expanded objects are ignored.

Layout.convert_primitives_to_vias(primitives, is_pins=False)#

Convert a list of primitives into vias or pins.

Parameters:
primitiveslist[Primitive]

List of primitives to convert.

is_pinsbool, optional

True for pins, false for vias (default).

Layout.find_object_by_id(value: int)#

Find a layout object by Database ID.

Parameters:
valueint

ID of the object.

Layout.find_net_by_name(value: str)#

Find a net object by name

Parameters:
valuestr

Name of the net.

Returns:
Layout.find_component_by_name(value: str)#

Find a component object by name. Component name is the reference designator in layout.

Parameters:
valuestr

Name of the component.

Returns
——-
Layout.find_primitive(layer_name: str | list = None, name: str | list = None, net_name: str | list = None) list#

Find a primitive objects by layer name.

Parameters:
layer_namestr, list, optional

Name of the layer.

namestr, list, optional

Name of the primitive

net_namestr, list, optional

Name of the primitive

Returns
——-
list
Layout.find_padstack_instances(aedt_name: str | List[str] = None, component_name: str | List[str] = None, component_pin_name: str | List[str] = None, net_name: str | List[str] = None, instance_id: int | List[int] = None) List#

Finds padstack instances matching the specified criteria.

This method filters the available padstack instances based on specified attributes such as aedt_name, component_name, component_pin_name, net_name, or instance_id. Criteria can be passed as individual values or as a list of values. If no padstack instances match the criteria, an error is raised.

Parameters:
aedt_nameUnion[str, List[str]], optional

Name(s) of the AEDT padstack instance(s) to filter.

component_nameUnion[str, List[str]], optional

Name(s) of the component(s) to filter padstack instances by.

component_pin_nameUnion[str, List[str]], optional

Name(s) of the component pin(s) to filter padstack instances by.

net_nameUnion[str, List[str]], optional

Name(s) of the net(s) to filter padstack instances by.

instance_idUnion[int, List[int]], optional

ID(s) of the padstack instance(s) to filter.

Returns:
List

A list of padstack instances matching the specified criteria.