laygo2.object.physical module#
laygo2.object.physical module provides classes for physical objects used in IC layout design. The supported physical objects include:
PhysicalObject - Base class for all physical layout objects.
IterablePhysicalObject - Base class for physical objects that can be iterated (eg. arrayed instances).
PhysicalObjectGroup - Defines a group of physical objects (currently not implemented).
Rect - Represents a rectangular shape.
Path - Defines a path.
Pin - Defines a pin.
Text - Defines a text label.
Instance - Represents an instance of a design element.
VirtualInstance - Represents a virtual instance composed of multiple physical objects, acting as a single instance.
Examples of the physical objects supported by this module are shown in the followng figure.
Check the following links for further details.
- PhysicalObject class
PhysicalObjectPhysicalObject.__init__()PhysicalObject._get_xy()PhysicalObject._set_xy()PhysicalObject._update_pointers()PhysicalObject.summarize()PhysicalObject._xyPhysicalObject.bboxPhysicalObject.bottomPhysicalObject.bottom_leftPhysicalObject.bottom_rightPhysicalObject.centerPhysicalObject.leftPhysicalObject.masterPhysicalObject.namePhysicalObject.paramsPhysicalObject.pointersPhysicalObject.rightPhysicalObject.topPhysicalObject.top_leftPhysicalObject.top_rightPhysicalObject.xy
- IterablePhysicalObject class
IterablePhysicalObjectIterablePhysicalObject.__init__()IterablePhysicalObject._get_xy()IterablePhysicalObject._set_xy()IterablePhysicalObject._update_elements()IterablePhysicalObject._update_pointers()IterablePhysicalObject.ndenumerate()IterablePhysicalObject.summarize()IterablePhysicalObject._xyIterablePhysicalObject.bboxIterablePhysicalObject.bottomIterablePhysicalObject.bottom_leftIterablePhysicalObject.bottom_rightIterablePhysicalObject.centerIterablePhysicalObject.elementsIterablePhysicalObject.leftIterablePhysicalObject.masterIterablePhysicalObject.nameIterablePhysicalObject.paramsIterablePhysicalObject.pointersIterablePhysicalObject.rightIterablePhysicalObject.shapeIterablePhysicalObject.topIterablePhysicalObject.top_leftIterablePhysicalObject.top_rightIterablePhysicalObject.xy
- PhysicalObjectGroup class
PhysicalObjectGroupPhysicalObjectGroup.__init__()PhysicalObjectGroup._get_xy()PhysicalObjectGroup._set_xy()PhysicalObjectGroup._update_elements()PhysicalObjectGroup._update_pointers()PhysicalObjectGroup.ndenumerate()PhysicalObjectGroup.summarize()PhysicalObjectGroup._xyPhysicalObjectGroup.bboxPhysicalObjectGroup.bottomPhysicalObjectGroup.bottom_leftPhysicalObjectGroup.bottom_rightPhysicalObjectGroup.centerPhysicalObjectGroup.elementsPhysicalObjectGroup.leftPhysicalObjectGroup.masterPhysicalObjectGroup.namePhysicalObjectGroup.paramsPhysicalObjectGroup.pointersPhysicalObjectGroup.rightPhysicalObjectGroup.shapePhysicalObjectGroup.topPhysicalObjectGroup.top_leftPhysicalObjectGroup.top_rightPhysicalObjectGroup.xy
- Rect class
RectRect.__init__()Rect._get_xy()Rect._set_xy()Rect._update_pointers()Rect.align()Rect.summarize()Rect._xyRect.bboxRect.bottomRect.bottom_leftRect.bottom_rightRect.centerRect.colorRect.heightRect.height_vecRect.hextensionRect.layerRect.leftRect.masterRect.nameRect.netnameRect.paramsRect.pointersRect.rightRect.sizeRect.topRect.top_leftRect.top_rightRect.vextensionRect.widthRect.width_vecRect.xy
- Path class
PathPath.__init__()Path._get_xy()Path._set_xy()Path._update_pointers()Path.summarize()Path._xyPath.bboxPath.bottomPath.bottom_leftPath.bottom_rightPath.centerPath.extensionPath.layerPath.leftPath.masterPath.namePath.netnamePath.paramsPath.pointersPath.rightPath.topPath.top_leftPath.top_rightPath.widthPath.xy
- Pin class
PinPin.__init__()Pin._get_xy()Pin._set_xy()Pin._update_elements()Pin._update_pointers()Pin.export_to_dict()Pin.ndenumerate()Pin.summarize()Pin._xyPin.bboxPin.bottomPin.bottom_leftPin.bottom_rightPin.centerPin.elementsPin.heightPin.height_vecPin.layerPin.leftPin.masterPin.namePin.netnamePin.paramsPin.pointersPin.rightPin.shapePin.sizePin.topPin.top_leftPin.top_rightPin.widthPin.width_vecPin.xy
- Text class
TextText.__init__()Text._get_xy()Text._set_xy()Text._update_pointers()Text.summarize()Text._xyText.bboxText.bottomText.bottom_leftText.bottom_rightText.centerText.layerText.leftText.masterText.nameText.paramsText.pointersText.rightText.textText.topText.top_leftText.top_rightText.xy
- Instance class
InstanceInstance.__init__()Instance._get_xy()Instance._set_xy()Instance._update_elements()Instance._update_pins()Instance._update_pointers()Instance.get_p()Instance.get_pitch()Instance.get_spacing()Instance.ndenumerate()Instance.set_p()Instance.set_pitch()Instance.set_spacing()Instance.summarize()Instance.update_netname()Instance._pitchInstance._xyInstance.bboxInstance.bottomInstance.bottom_leftInstance.bottom_rightInstance.cellnameInstance.centerInstance.elementsInstance.heightInstance.height_vecInstance.leftInstance.libnameInstance.masterInstance.nameInstance.pInstance.paramsInstance.pinsInstance.pitchInstance.pointersInstance.rightInstance.shapeInstance.sizeInstance.spacingInstance.topInstance.top_leftInstance.top_rightInstance.transformInstance.unit_sizeInstance.viewnameInstance.widthInstance.width_vecInstance.xyInstance.xy0Instance.xy1
- VirtualInstance class
VirtualInstanceVirtualInstance.__init__()VirtualInstance._get_xy()VirtualInstance._set_xy()VirtualInstance._update_elements()VirtualInstance._update_pins()VirtualInstance._update_pointers()VirtualInstance.get_element_position()VirtualInstance.get_p()VirtualInstance.get_pitch()VirtualInstance.get_spacing()VirtualInstance.ndenumerate()VirtualInstance.set_p()VirtualInstance.set_pitch()VirtualInstance.set_spacing()VirtualInstance.summarize()VirtualInstance.update_netname()VirtualInstance._pitchVirtualInstance._xyVirtualInstance.bboxVirtualInstance.bottomVirtualInstance.bottom_leftVirtualInstance.bottom_rightVirtualInstance.cellnameVirtualInstance.centerVirtualInstance.elementsVirtualInstance.heightVirtualInstance.height_vecVirtualInstance.leftVirtualInstance.libnameVirtualInstance.masterVirtualInstance.nameVirtualInstance.native_elementsVirtualInstance.pVirtualInstance.paramsVirtualInstance.pinsVirtualInstance.pitchVirtualInstance.pointersVirtualInstance.rightVirtualInstance.shapeVirtualInstance.sizeVirtualInstance.spacingVirtualInstance.topVirtualInstance.top_leftVirtualInstance.top_rightVirtualInstance.transformVirtualInstance.unit_sizeVirtualInstance.viewnameVirtualInstance.widthVirtualInstance.width_vecVirtualInstance.xyVirtualInstance.xy0VirtualInstance.xy1