.. DO NOT EDIT. .. THIS FILE WAS AUTOMATICALLY GENERATED BY SPHINX-GALLERY. .. TO MAKE CHANGES, EDIT THE SOURCE PYTHON FILE: .. "examples\01-HFSS3DLayout\EDB_in_3DLayout.py" .. LINE NUMBERS ARE GIVEN BELOW. .. only:: html .. note:: :class: sphx-glr-download-link-note :ref:`Go to the end ` to download the full example code. .. rst-class:: sphx-glr-example-title .. _sphx_glr_examples_01-HFSS3DLayout_EDB_in_3DLayout.py: HFSS 3D Layout: PCB and EDB in 3D layout ---------------------------------------- This example shows how you can use HFSS 3D Layout combined with EDB to interact with a 3D layout. .. GENERATED FROM PYTHON SOURCE LINES 7-19 .. code-block:: Python import os import tempfile import pyaedt tmpfold = tempfile.gettempdir() temp_folder = os.path.join(tmpfold, pyaedt.generate_unique_name("Example")) if not os.path.exists(temp_folder): os.makedirs(temp_folder) print(temp_folder) .. rst-class:: sphx-glr-script-out .. code-block:: none D:\Temp\Example_VYWT2R .. GENERATED FROM PYTHON SOURCE LINES 20-23 Copy example into temporary folder ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Copy an example into the temporary folder. .. GENERATED FROM PYTHON SOURCE LINES 23-28 .. code-block:: Python targetfile = pyaedt.downloads.download_aedb() print(targetfile) aedt_file = targetfile[:-12] + "aedt" .. rst-class:: sphx-glr-script-out .. code-block:: none D:\Temp\PyAEDTExamples\edb/Galileo.aedb\edb.def .. GENERATED FROM PYTHON SOURCE LINES 29-33 Set non-graphical mode ~~~~~~~~~~~~~~~~~~~~~~ Set non-graphical mode. You can set ``non_graphical`` either to ``True`` or ``False``. .. GENERATED FROM PYTHON SOURCE LINES 33-37 .. code-block:: Python non_graphical = False NewThread = True .. GENERATED FROM PYTHON SOURCE LINES 38-41 Set AEDT version ~~~~~~~~~~~~~~~~ Set AEDT version. .. GENERATED FROM PYTHON SOURCE LINES 41-44 .. code-block:: Python aedt_version = "2024.1" .. GENERATED FROM PYTHON SOURCE LINES 45-49 Initialize AEDT and launch HFSS 3D Layout ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Initialize AEDT and launch HFSS 3D Layout. The ``h3d`` object contains the :class:`pyaedt.Edb` class query methods. .. GENERATED FROM PYTHON SOURCE LINES 49-56 .. code-block:: Python d = pyaedt.launch_desktop(aedt_version, non_graphical, NewThread) if os.path.exists(aedt_file): os.remove(aedt_file) h3d = pyaedt.Hfss3dLayout(targetfile) h3d.save_project(os.path.join(temp_folder, "edb_demo.aedt")) .. rst-class:: sphx-glr-script-out .. code-block:: none True .. GENERATED FROM PYTHON SOURCE LINES 57-60 Print boundaries ~~~~~~~~~~~~~~~~ Print boundaries from the ``setups`` object. .. GENERATED FROM PYTHON SOURCE LINES 60-63 .. code-block:: Python h3d.boundaries .. rst-class:: sphx-glr-script-out .. code-block:: none [] .. GENERATED FROM PYTHON SOURCE LINES 64-67 Hide all nets ~~~~~~~~~~~~~ Hide all nets. .. GENERATED FROM PYTHON SOURCE LINES 67-70 .. code-block:: Python h3d.modeler.change_net_visibility(visible=False) .. rst-class:: sphx-glr-script-out .. code-block:: none True .. GENERATED FROM PYTHON SOURCE LINES 71-74 Show only two nets ~~~~~~~~~~~~~~~~~~ Show only two specified nets. .. GENERATED FROM PYTHON SOURCE LINES 74-79 .. code-block:: Python h3d.modeler.change_net_visibility(["A0_GPIO", "A0_MUX"], visible=True) edb = h3d.modeler.edb edb.nets.plot(["A0_GPIO", "A0_MUX"]) .. image-sg:: /examples/01-HFSS3DLayout/images/sphx_glr_EDB_in_3DLayout_001.png :alt: Galileo_um :srcset: /examples/01-HFSS3DLayout/images/sphx_glr_EDB_in_3DLayout_001.png :class: sphx-glr-single-img .. GENERATED FROM PYTHON SOURCE LINES 80-83 Show all layers ~~~~~~~~~~~~~~~ Show all layers. .. GENERATED FROM PYTHON SOURCE LINES 83-87 .. code-block:: Python for layer in h3d.modeler.layers.all_signal_layers: layer.is_visible = True .. GENERATED FROM PYTHON SOURCE LINES 88-91 Change layer color ~~~~~~~~~~~~~~~~~~ Change the layer color. .. GENERATED FROM PYTHON SOURCE LINES 91-96 .. code-block:: Python layer = h3d.modeler.layers.layers[h3d.modeler.layers.layer_id("TOP")] layer.set_layer_color(0, 255, 0) h3d.modeler.fit_all() .. GENERATED FROM PYTHON SOURCE LINES 97-102 Disable component visibility ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Disable component visibility for ``"TOP"`` and ``"BOTTOM"``. The :func:`pyaedt.modules.LayerStackup.Layer.update_stackup_layer` method applies modifications to the layout. .. GENERATED FROM PYTHON SOURCE LINES 102-109 .. code-block:: Python top = h3d.modeler.layers.layers[h3d.modeler.layers.layer_id("TOP")] top.is_visible_component = False bot = h3d.modeler.layers.layers[h3d.modeler.layers.layer_id("BOTTOM")] bot.is_visible_component = False .. GENERATED FROM PYTHON SOURCE LINES 110-113 Fit all ~~~~~~~ Fit all so that you can visualize all. .. GENERATED FROM PYTHON SOURCE LINES 113-116 .. code-block:: Python h3d.modeler.fit_all() .. GENERATED FROM PYTHON SOURCE LINES 117-122 Close AEDT ~~~~~~~~~~ After the simulation completes, you can close AEDT or release it using the :func:`pyaedt.Desktop.release_desktop` method. All methods provide for saving the project before closing. .. GENERATED FROM PYTHON SOURCE LINES 122-125 .. code-block:: Python h3d.close_project() d.release_desktop() .. rst-class:: sphx-glr-script-out .. code-block:: none True .. rst-class:: sphx-glr-timing **Total running time of the script:** (0 minutes 54.494 seconds) .. _sphx_glr_download_examples_01-HFSS3DLayout_EDB_in_3DLayout.py: .. only:: html .. container:: sphx-glr-footer sphx-glr-footer-example .. container:: sphx-glr-download sphx-glr-download-jupyter :download:`Download Jupyter notebook: EDB_in_3DLayout.ipynb ` .. container:: sphx-glr-download sphx-glr-download-python :download:`Download Python source code: EDB_in_3DLayout.py ` .. only:: html .. rst-class:: sphx-glr-signature `Gallery generated by Sphinx-Gallery `_