:class:`HatchGround` ==================== .. py:class:: pyedb.libraries.rf_libraries.base_functions.HatchGround(edb_cell: Optional[pyedb.Edb] = None, pitch: Union[str, float] = 0.01707, width: Union[str, float] = 0.005, fill_target: Union[str, float] = 50.0, ground_width: Union[str, float] = 0.1, ground_length: Union[str, float] = 0.1, layer_gnd: str = 'GND', angle: float = 0.0) Create a rectangular demo board whose ground layer is filled with an orthogonal hatched copper pattern. Any requested copper fill ratio between 10 % and 90 % can be realised. The hatch is generated by drawing orthogonal copper stripes and then punching square voids to achieve the desired fill percentage. :Parameters: **edb_cell** : :obj:`Edb`, :obj:`optional` EDB layout database in which the geometry will be created. If omitted, the object is created in a detached state and must be attached to an EDB instance via the ``_edb`` attribute before calling :meth:`create`. **pitch** : :class:`python:float` or :class:`python:str`, :obj:`default` 17.07e-3 Centre-to-centre distance between adjacent hatch bars [m]. **width** : :class:`python:float` or :class:`python:str`, :obj:`default` 5.0e-3 Width of each copper bar [m]. **fill_target** : :class:`python:float` or :class:`python:str`, :obj:`default` 50.0 Desired copper area in percent (10 … 90). **ground_width** : :class:`python:float` or :class:`python:str`, :obj:`default` 100.0e-3 Width (x-span) of the rectangular board [m]. **ground_length** : :class:`python:float` or :class:`python:str`, :obj:`default` 100.0e-3 Length (y-span) of the rectangular board [m]. **layer_gnd** : :class:`python:str`, :obj:`default` "GND" Name of the layer that receives the hatch pattern. **angle** : :class:`python:float`, :obj:`default` 0.0 Rotation angle of the hatch pattern in degrees. A positive value rotates the pattern counter-clockwise around the board centre. .. rubric:: Examples >>> hatch = HatchGround(pitch=0.5e-3, width=0.2e-3, fill_target=70, ground_width=5e-3, ground_length=5e-3) >>> edb = Edb("demo.aedb") >>> hatch._edb = edb >>> hatch.create() >>> round(hatch.copper_fill_ratio, 1) 70.0 :Attributes: **copper_fill_ratio** : :class:`python:float` Read-only property returning the **actual** copper fill ratio (in percent) after the hatch has been generated. .. !! processed by numpydoc !! .. py:currentmodule:: HatchGround Overview -------- .. tab-set:: .. tab-item:: Methods .. list-table:: :header-rows: 0 :widths: auto * - :py:attr:`~create` - Generate the stack-up, board outline and hatch pattern. .. tab-item:: Properties .. list-table:: :header-rows: 0 :widths: auto * - :py:attr:`~copper_fill_ratio` - Return the **actual** copper fill ratio in percent. .. tab-item:: Attributes .. list-table:: :header-rows: 0 :widths: auto * - :py:attr:`~pitch` - * - :py:attr:`~width` - * - :py:attr:`~fill_target` - * - :py:attr:`~ground_width` - * - :py:attr:`~ground_length` - * - :py:attr:`~layer_gnd` - * - :py:attr:`~angle` - Import detail ------------- .. code-block:: python from pyedb.libraries.rf_libraries.base_functions import HatchGround Property detail --------------- .. py:property:: copper_fill_ratio :type: float Return the **actual** copper fill ratio in percent. :Returns: :class:`python:float` Percentage of the board area that is copper after the hatch has been generated. .. !! processed by numpydoc !! Attribute detail ---------------- .. py:attribute:: pitch .. py:attribute:: width .. py:attribute:: fill_target .. py:attribute:: ground_width .. py:attribute:: ground_length .. py:attribute:: layer_gnd :value: 'GND' .. py:attribute:: angle :value: 0.0 Method detail ------------- .. py:method:: create() -> bool Generate the stack-up, board outline and hatch pattern. :Returns: :ref:`bool ` True when geometry has been created successfully. .. !! processed by numpydoc !!