You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

112 lines
3.9 KiB
ReStructuredText

5 years ago
.. automodule:: gdsii.elements
:synopsis: module containing classes for GDSII elements.
Possible instance attributes:
:attr:`elflags`
Element flags (:class:`int`, optional).
Bit 15 specifies template data.
Bit 14 specifies external data.
:attr:`plex`
Plex number (:class:`int`, optional).
:attr:`layer`
Element layer (:class:`int`)
:attr:`data_type`
Element data type (:class:`int`)
:attr:`path_type`
Type of path endpoints (:class:`int`, optional).
The values have the following meaning:
* 0 -- square ends, flush with endpoints
* 1 -- round ends, centered on endpoints
* 2 -- square ends, centered on endpoints
* 4 -- custom square ends
:attr:`width`
Width of the path (:class:`int`, optional). If the value is negative,
then the width is absolute and not affected by magnification factor.
:attr:`bgn_extn`, :attr:`end_extn`
Start end end extensions for :attr:`path_type` 4 (:class:`int`, optional).
:attr:`xy`
List of points (:class:`list` of tuples ``(x, y)``).
:attr:`struct_name`
Name of the referenced structure (:class:`bytes`).
:attr:`strans`
Transformation flags (:class:`int`, optional). Bits have the following meaning:
* 0 -- reclection about X axis
* 13 -- absolute magnification
* 14 -- absolute angle
:attr:`mag`
Magnification factor (:class:`float`, optional).
:attr:`angle`
Rotation factor in degrees (:class:`float`, optional). Rotation is counterclockwise.
:attr:`cols`
Number of columns (:class:`int`).
:attr:`rows`
Number of rows (:class:`int`).
:attr:`text_type`
Text type (:class:`int`).
:attr:`presentation`
Bit array that specifies how the text is presented (:class:`int`, optional).
Meaning of bits:
* Bits 10 and 11 specify font number (0-3).
* Bits 12 and 13 specify vertical justification (0 -- top, 1 -- middle, 2 -- bottom).
* Bits 14 and 15 specify horizontal justification (0 -- left, 1 -- center, 2 -- rigth).
:attr:`string`
String for :const:`TEXT` element (:class:`bytes`).
:attr:`node_type`
Node type (:class:`int`).
:attr:`box_type`
Box type (:class:`int`).
:attr:`properties`
Element properties, represented as a list of tupes (`propattr`, `propvalue`).
`propattr` is an :class:`int`, `propvalue` is :class:`bytes`.
This attribute is optional.
.. autoclass:: ARef
Required attributes: :attr:`struct_name`, :attr:`cols`, :attr:`rows`, :attr:`xy`.
Optional attributes: :attr:`elflags`, :attr:`plex`, :attr:`strans`, :attr:`mag`,
:attr:`angle`, :attr:`properties`.
.. autoclass:: Boundary
Required attributes: :attr:`layer`, :attr:`data_type`, :attr:`xy`.
Optional attributes: :attr:`elflags`, :attr:`plex`, :attr:`properties`.
.. autoclass:: Box
Required attributes: :attr:`layer`, :attr:`box_type`, :attr:`xy`.
Optional attributes: :attr:`elflags`, :attr:`plex`, :attr:`properties`.
.. autoclass:: Node
Required attributes: :attr:`layer`, :attr:`node_type`, :attr:`xy`
Optional attributes: :attr:`elflags`, :attr:`plex`, :attr:`properties`
.. autoclass:: Path
Required attributes: :attr:`layer`, :attr:`data_type`, :attr:`xy`
Optional attributes: :attr:`elflags`, :attr:`plex`, :attr:`path_type`,
:attr:`width`, :attr:`bgn_extn`, :attr:`end_extn`, :attr:`properties`
.. autoclass:: SRef
Required attributes: :attr:`struct_name`, :attr:`xy`
Optional attributes: :attr:`elflags`, :attr:`strans`, :attr:`mag`,
:attr:`angle`, :attr:`properties`
.. autoclass:: Text
Required attributes: :attr:`layer`, :attr:`text_type`, :attr:`xy`, :attr:`string`
Optional attributes: :attr:`elflags`, :attr:`plex`, :attr:`presentation`,
:attr:`path_type`, :attr:`width`, :attr:`strans`, :attr:`mag`, :attr:`angle`, :attr:`properties`