pyedb 0.30.0__py3-none-any.whl → 0.31.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of pyedb might be problematic. Click here for more details.

pyedb/__init__.py CHANGED
@@ -70,7 +70,7 @@ deprecation_warning()
70
70
  #
71
71
 
72
72
  pyedb_path = os.path.dirname(__file__)
73
- __version__ = "0.30.0"
73
+ __version__ = "0.31.0"
74
74
  version = __version__
75
75
 
76
76
  #
@@ -47,12 +47,11 @@ class CfgPadstacks:
47
47
  instances_layout = self._pedb.padstacks.instances_by_name
48
48
  for inst in self.instances:
49
49
  inst_layout = instances_layout[inst.name]
50
- if inst.definition:
51
- # inst_layout.padstack_definition = inst.definition
52
- # Not supported by EDB API
53
- pass
54
- if inst.backdrill_parameters:
55
- inst_layout.backdrill_parameters = inst.backdrill_parameters
50
+ data = dict()
51
+ data["backdrill_parameters"] = inst.backdrill_parameters
52
+ data["hole_override_enabled"] = inst.hole_override_enabled
53
+ data["hole_override_diameter"] = inst.hole_override_diameter
54
+ inst_layout.properties = data
56
55
 
57
56
  def get_data_from_db(self):
58
57
  self.definitions = []
@@ -83,6 +82,8 @@ class CfgPadstacks:
83
82
  id=temp["id"],
84
83
  position=temp["position"],
85
84
  rotation=temp["rotation"],
85
+ hole_override_enabled=temp["hole_override_enabled"],
86
+ hole_override_diameter=temp["hole_override_diameter"],
86
87
  )
87
88
  )
88
89
  instances = []
@@ -114,3 +115,5 @@ class Instance(CfgBase):
114
115
  self.id = kwargs.get("id", None)
115
116
  self.position = kwargs.get("position", [])
116
117
  self.rotation = kwargs.get("rotation", None)
118
+ self.hole_override_enabled = kwargs.get("hole_override_enabled", None)
119
+ self.hole_override_diameter = kwargs.get("hole_override_diameter", None)
pyedb/dotnet/edb.py CHANGED
@@ -3611,15 +3611,15 @@ class Edb(Database):
3611
3611
  """
3612
3612
  setups = {}
3613
3613
  for i in list(self.active_cell.SimulationSetups):
3614
- if i.GetType() == self.edb_api.utility.utility.SimulationSetupType.kHFSS:
3614
+ if i.GetType().ToString().endswith("kHFSS"):
3615
3615
  setups[i.GetName()] = HfssSimulationSetup(self, i)
3616
- elif i.GetType() == self.edb_api.utility.utility.SimulationSetupType.kSIWave:
3616
+ elif i.GetType().ToString().endswith("kSIWave"):
3617
3617
  setups[i.GetName()] = SiwaveSimulationSetup(self, i)
3618
- elif i.GetType() == self.edb_api.utility.utility.SimulationSetupType.kSIWaveDCIR:
3618
+ elif i.GetType().ToString().endswith("kSIWaveDCIR"):
3619
3619
  setups[i.GetName()] = SiwaveDCSimulationSetup(self, i)
3620
- elif i.GetType() == self.edb_api.utility.utility.SimulationSetupType.kRaptorX:
3620
+ elif i.GetType().ToString().endswith("kRaptorX"):
3621
3621
  setups[i.GetName()] = RaptorXSimulationSetup(self, i)
3622
- elif i.GetType() == self.edb_api.utility.utility.SimulationSetupType.kHFSSPI:
3622
+ elif i.GetType().ToString().endswith("kHFSSPI"):
3623
3623
  setups[i.GetName()] = HFSSPISimulationSetup(self, i)
3624
3624
  return setups
3625
3625
 
@@ -2335,4 +2335,21 @@ class EDBPadstackInstance(Primitive):
2335
2335
  data["position"] = [position.X.ToString(), position.Y.ToString()]
2336
2336
  data["rotation"] = [rotation.ToString()]
2337
2337
  data["id"] = self.id
2338
+ hole_override_enabled, hole_override_diam = self._edb_object.GetHoleOverrideValue()
2339
+ data["hole_override_enabled"] = hole_override_enabled
2340
+ data["hole_override_diameter"] = hole_override_diam.ToString()
2338
2341
  return data
2342
+
2343
+ @properties.setter
2344
+ def properties(self, params):
2345
+ name = params.get("name", None)
2346
+ if name:
2347
+ self.aedt_name = name
2348
+ backdrill_parameters = params.get("backdrill_parameters", None)
2349
+ if backdrill_parameters:
2350
+ self.backdrill_parameters = backdrill_parameters
2351
+ h_o_enabled = params.get("hole_override_enabled", None)
2352
+ h_o_enabled = h_o_enabled if h_o_enabled else self.properties["hole_override_enabled"]
2353
+ h_o_diameter = params.get("hole_override_diameter")
2354
+ h_o_diameter = h_o_diameter if h_o_diameter else self.properties["hole_override_diameter"]
2355
+ self._edb_object.SetHoleOverride(h_o_enabled, self._pedb.edb_value(h_o_diameter))
@@ -713,6 +713,7 @@ class EdbNets(object):
713
713
  plot_components_on_top=False,
714
714
  plot_components_on_bottom=False,
715
715
  show=True,
716
+ title=None,
716
717
  ):
717
718
  """Plot a Net to Matplotlib 2D Chart.
718
719
 
@@ -763,13 +764,17 @@ class EdbNets(object):
763
764
  fig_size_y = board_size_y * fig_size_x / board_size_x
764
765
  size = (fig_size_x, fig_size_y)
765
766
 
767
+ plot_title = title
768
+ if plot_title is None:
769
+ plot_title = self._pedb.active_cell.GetName()
770
+
766
771
  return plot_matplotlib(
767
772
  plot_data=object_lists,
768
773
  size=size,
769
774
  show_legend=show_legend,
770
775
  xlabel="X (m)",
771
776
  ylabel="Y (m)",
772
- title=self._pedb.active_cell.GetName(),
777
+ title=plot_title,
773
778
  save_plot=save_plot,
774
779
  axis_equal=True,
775
780
  show=show,
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: pyedb
3
- Version: 0.30.0
3
+ Version: 0.31.0
4
4
  Summary: Higher-Level Pythonic Ansys Electronics Data Base
5
5
  Author-email: "ANSYS, Inc." <pyansys.core@ansys.com>
6
6
  Maintainer-email: PyEDB developers <simon.vandenbrouck@ansys.com>
@@ -26,7 +26,7 @@ Requires-Dist: Rtree >= 1.2.0
26
26
  Requires-Dist: toml == 0.10.2
27
27
  Requires-Dist: scikit-rf
28
28
  Requires-Dist: ansys-sphinx-theme>=0.10.0,<1.1 ; extra == "doc"
29
- Requires-Dist: imageio>=2.30.0,<2.36 ; extra == "doc"
29
+ Requires-Dist: imageio>=2.30.0,<2.37 ; extra == "doc"
30
30
  Requires-Dist: ipython>=8.13.0,<8.29 ; extra == "doc"
31
31
  Requires-Dist: jupyterlab>=4.0.0,<4.3 ; extra == "doc"
32
32
  Requires-Dist: jupytext>=1.16.0,<1.17 ; extra == "doc"
@@ -34,7 +34,7 @@ Requires-Dist: matplotlib>=3.5.0,<3.10 ; extra == "doc"
34
34
  Requires-Dist: nbsphinx>=0.9.0,<0.10 ; extra == "doc"
35
35
  Requires-Dist: nbconvert < 7.17 ; extra == "doc"
36
36
  Requires-Dist: numpydoc>=1.5.0,<1.9 ; extra == "doc"
37
- Requires-Dist: pypandoc>=1.10.0,<1.14 ; extra == "doc"
37
+ Requires-Dist: pypandoc>=1.10.0,<1.15 ; extra == "doc"
38
38
  Requires-Dist: recommonmark ; extra == "doc"
39
39
  Requires-Dist: Sphinx>=7.1.0,<8.1 ; extra == "doc"
40
40
  Requires-Dist: sphinx-autobuild==2021.3.14 ; extra == "doc" and ( python_version == '3.8')
@@ -1,4 +1,4 @@
1
- pyedb/__init__.py,sha256=i3nK0Ify0Hxn6Qa-eIDag4HU7ru7gjzKnxiqqamC3KM,2592
1
+ pyedb/__init__.py,sha256=DpBNAuuQlg5m9iAbcc0FqP_bcF40hpWtCXsRwN-cLfE,2592
2
2
  pyedb/edb_logger.py,sha256=7KXPvAMCKzlzJ5zioiNO5A3zkqbpCHhWHB4aXKfgu5Y,14959
3
3
  pyedb/exceptions.py,sha256=n94xluzUks6BA24vd_L6HkrvoP_H_l6__hQmqzdCyPo,111
4
4
  pyedb/siwave.py,sha256=Mgg5ZGzOUOtNdlePHcnrgN3rletQ7jrqRi3WfxF58uU,17727
@@ -13,7 +13,7 @@ pyedb/configuration/cfg_general.py,sha256=DJAKTW8Sqojfqzc3jO3MU1-J8MrmVi37jUIkTD
13
13
  pyedb/configuration/cfg_nets.py,sha256=18NezeNh0ZOwk2ehz3zWJF_xYR7IYCqGlpDfDt7Ilho,2349
14
14
  pyedb/configuration/cfg_operations.py,sha256=mk0uY9kWEZ6hLciZz6l9ESBC-yHr08GgWBEX2iLutPE,4674
15
15
  pyedb/configuration/cfg_package_definition.py,sha256=f_RRT9R-3H5kHBlc4QSpjq9uQgYbaKQ78XXXrc_r3kg,5296
16
- pyedb/configuration/cfg_padstacks.py,sha256=GNastAjgvqf90IxNZTbsMI_x9fQx5_FLbIsNqZ2ChNI,4766
16
+ pyedb/configuration/cfg_padstacks.py,sha256=v64An3lCkh7FBwzUaBQcHD2_h8ctlBckAc8xB3z5-j0,5068
17
17
  pyedb/configuration/cfg_pin_groups.py,sha256=b0H6NaPKJ5zlcXL9W2Q8_HbiLB8-OxaqjsM4wlqP2ic,3768
18
18
  pyedb/configuration/cfg_ports_sources.py,sha256=8D4QcHlrCdMI0URv3NzSRf0ke8BiF1dpREiimwb9Hbk,16430
19
19
  pyedb/configuration/cfg_s_parameter_models.py,sha256=iwLT581u7v26QtsLOaxrtpvAxrnk1VWqNiRYKOmK3y0,5300
@@ -23,7 +23,7 @@ pyedb/configuration/cfg_stackup.py,sha256=ZKUcTh4UAFLJgES2W-5J7uXkUdz_q0URg28lUZ
23
23
  pyedb/configuration/configuration.py,sha256=ndNU2C9Kgp7t2InZt0IcrBXooxjwFChpc7ylajhbTNc,14622
24
24
  pyedb/dotnet/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
25
25
  pyedb/dotnet/clr_module.py,sha256=Mo13Of3DVSA5HR-5xZEXOiHApIKy52CUxtJ2gPkEu1A,3406
26
- pyedb/dotnet/edb.py,sha256=He8yGP0ykTRCmiHZMDGQvT5Eeg-m0t9-HLbRquBLu2Y,184294
26
+ pyedb/dotnet/edb.py,sha256=6b2EaZMMVoLuwF1ZAADlFj6gSXBcYz2CppdICEmj3K8,184149
27
27
  pyedb/dotnet/application/Variables.py,sha256=awNhyiLASBYrNjWIyW8IJowgqt7FfFPKF9UElRWyjZg,77750
28
28
  pyedb/dotnet/application/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
29
29
  pyedb/dotnet/edb_core/__init__.py,sha256=nIRLJ8VZLcMAp12zmGsnZ5x2BEEl7q_Kj_KAOXxVjpQ,52
@@ -35,7 +35,7 @@ pyedb/dotnet/edb_core/layout_validation.py,sha256=ONhxkMFi9k5Or_F4l4pdOzyj1-ZVKE
35
35
  pyedb/dotnet/edb_core/materials.py,sha256=zzYWIJ5dvOIO2H2vREpRnwGDx0hEa5QhCsg_EJkydww,43222
36
36
  pyedb/dotnet/edb_core/modeler.py,sha256=87amEA3xHszL52ae8i-7fAJzWL4Ntqp72omocNO5XAw,55442
37
37
  pyedb/dotnet/edb_core/net_class.py,sha256=4U6Cc1Gn7ZJ_ub9uKmtrsoz5wD1XS42afci3Y3ewRp0,11354
38
- pyedb/dotnet/edb_core/nets.py,sha256=kD8Pa4JCon6ZOS2H3B9B32m24qNBZQDA69_m2zKlVa4,41464
38
+ pyedb/dotnet/edb_core/nets.py,sha256=N8kFX_bbVnHrmPcwCNbabV7xME_XBr5Ft50DYz_vGIc,41579
39
39
  pyedb/dotnet/edb_core/padstack.py,sha256=19cRYqTHVjjvblYVoZgMetRBXDjtP5-URUv6eA0mvfY,63566
40
40
  pyedb/dotnet/edb_core/siwave.py,sha256=4duoAsFCuPMNLxtMTEEVJCUaHKNkdbLDmtTXiD93VrM,64311
41
41
  pyedb/dotnet/edb_core/stackup.py,sha256=b56leXg7X7dEVPP2DUD9n8LZIakWcjIsjiqqkIWsyZU,120035
@@ -79,7 +79,7 @@ pyedb/dotnet/edb_core/edb_data/edbvalue.py,sha256=Vj_11HXsQUNavizKp5FicORm6cjhXR
79
79
  pyedb/dotnet/edb_core/edb_data/hfss_extent_info.py,sha256=wIKH4it1uYkEae4OimS3YE6QoSf8rAAIhxdTwtR9cqU,13040
80
80
  pyedb/dotnet/edb_core/edb_data/layer_data.py,sha256=Yg3y80d4dn47vtFaNUr2Mt8LRIKvu9TMGxQiu9CIc_s,29586
81
81
  pyedb/dotnet/edb_core/edb_data/nets_data.py,sha256=B3SirURVYrmFZPjQLGEYUfTSDZOzzCSB1l7CPQFdWr4,9942
82
- pyedb/dotnet/edb_core/edb_data/padstacks_data.py,sha256=QACrVhAiVbu8GASxrynqmVrDHZCEpm5wvgSg5EO3t5Q,87918
82
+ pyedb/dotnet/edb_core/edb_data/padstacks_data.py,sha256=zimAnMlKQ_TOOEYpK1uKm73IJ3tGD0fVK_QiwaShe5Q,88866
83
83
  pyedb/dotnet/edb_core/edb_data/ports.py,sha256=wr2RQi8VExuNIVmnp7c4VpTIhODgthmJmHr01zO4ueo,8873
84
84
  pyedb/dotnet/edb_core/edb_data/primitives_data.py,sha256=zDgVbOcvgc7fbpLnCcCHURV9_ePYT4R129kAhSJRy9A,15467
85
85
  pyedb/dotnet/edb_core/edb_data/raptor_x_simulation_setup_data.py,sha256=P37-OIsc8TuTC_s3CXRmvZcJqxAftHA7SATfEyoAnMM,20953
@@ -185,7 +185,7 @@ pyedb/misc/siw_feature_config/xtalk_scan/scan_config.py,sha256=YmYI6WTQulL5Uf8Wx
185
185
  pyedb/misc/siw_feature_config/xtalk_scan/td_xtalk_config.py,sha256=KHa-UqcXuabiVfT2CV-UvWl5Q2qGYHF2Ye9azcAlnXc,3966
186
186
  pyedb/modeler/geometry_operators.py,sha256=g_Sy7a6R23sP6RtboJn1rl8uTuo8oeLmMF21rNkzwjk,74198
187
187
  pyedb/siwave_core/icepak.py,sha256=WnZ-t8mik7LDY06V8hZFV-TxRZJQWK7bu_8Ichx-oBs,5206
188
- pyedb-0.30.0.dist-info/LICENSE,sha256=qQWivZ12ETN5l3QxvTARY-QI5eoRRlyHdwLlAj0Bg5I,1089
189
- pyedb-0.30.0.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
190
- pyedb-0.30.0.dist-info/METADATA,sha256=-lDcxg_ntc5YBawrtVWPdjn7L3k6jWTlI9U-jMGlUzc,8389
191
- pyedb-0.30.0.dist-info/RECORD,,
188
+ pyedb-0.31.0.dist-info/LICENSE,sha256=qQWivZ12ETN5l3QxvTARY-QI5eoRRlyHdwLlAj0Bg5I,1089
189
+ pyedb-0.31.0.dist-info/WHEEL,sha256=EZbGkh7Ie4PoZfRQ8I0ZuP9VklN_TvcZ6DSE5Uar4z4,81
190
+ pyedb-0.31.0.dist-info/METADATA,sha256=-tg_0GOKyeg5L2pcJDxsQG0--DNFg5y7kj2Arow4w2o,8389
191
+ pyedb-0.31.0.dist-info/RECORD,,
File without changes