ansys-edb-core 0.2.dev1__tar.gz → 0.2.0.dev3__tar.gz
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.
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/PKG-INFO +2 -2
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/pyproject.toml +2 -2
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/material_def.py +9 -10
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/padstack_def_data.py +2 -2
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/geometry/polygon_data.py +13 -1
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/cell_instance.py +1 -1
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/pin_group.py +2 -2
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/spice_model.py +8 -1
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/structure3d.py +2 -2
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/base.py +3 -1
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/inner/factory.py +161 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/messages.py +2 -2
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/parser.py +21 -11
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/rpc_info.py +210 -99
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/utils.py +31 -1
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layout/cell.py +7 -3
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layout/layout.py +177 -133
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layout/mcad_model.py +5 -4
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layout/voltage_regulator.py +1 -1
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layout_instance/layout_instance.py +25 -12
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/net/net.py +10 -2
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/net/net_class.py +1 -1
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/primitive/board_bend_def.py +96 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/primitive/bondwire.py +348 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/primitive/circle.py +142 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/primitive/padstack_instance.py +457 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/primitive/path.py +259 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/primitive/polygon.py +66 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/primitive/primitive.py +185 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/primitive/primitive_instance_collection.py +119 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/primitive/rectangle.py +242 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/primitive/text.py +98 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/session.py +45 -20
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/simulation_setup/hfss_pi_simulation_settings.py +360 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/simulation_setup/hfss_pi_simulation_setup.py +37 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/simulation_setup/q3d_simulation_settings.py +342 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/simulation_setup/q3d_simulation_setup.py +37 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/simulation_setup.py +2 -5
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/siwave_dcir_simulation_settings.py +1 -1
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/siwave_simulation_settings.py +1 -1
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/terminal/bundle_terminal.py +36 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/terminal/edge_terminal.py +170 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/terminal/padstack_instance_terminal.py +71 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/terminal/pin_group_terminal.py +60 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/terminal/point_terminal.py +69 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/terminal/terminal.py +331 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/terminal/terminal_instance.py +55 -0
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/terminal/terminal_instance_terminal.py +51 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/typing/__init__.py +4 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/utility/conversions.py +19 -13
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/utility/edb_error_manager.py +68 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/utility/heat_sink.py +29 -9
- ansys_edb_core-0.2.0.dev3/src/ansys/edb/core/utility/hfss_extent_info.py +164 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/utility/io_manager.py +6 -10
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/utility/layer_map.py +41 -20
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/utility/material_property_thermal_modifier_params.py +30 -24
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/utility/port_post_processing_prop.py +37 -25
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/utility/rlc.py +31 -25
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/utility/temperature_settings.py +22 -3
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/utility/transform.py +39 -23
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/utility/transform3d.py +67 -48
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/utility/value.py +40 -28
- ansys_edb_core-0.2.dev1/src/ansys/edb/core/inner/factory.py +0 -76
- ansys_edb_core-0.2.dev1/src/ansys/edb/core/primitive/primitive.py +0 -1852
- ansys_edb_core-0.2.dev1/src/ansys/edb/core/terminal/terminals.py +0 -810
- ansys_edb_core-0.2.dev1/src/ansys/edb/core/utility/hfss_extent_info.py +0 -153
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/LICENSE +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/README.rst +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/__init__.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/database.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/__init__.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/bondwire_def.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/component_def.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/component_model.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/component_pin.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/component_property.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/dataset_def.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/debye_model.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/die_property.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/dielectric_material_model.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/djordjecvic_sarkar_model.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/ic_component_property.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/io_component_property.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/material_property_thermal_modifier.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/multipole_debye_model.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/package_def.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/padstack_def.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/port_property.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/rlc_component_property.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/solder_ball_property.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/edb_defs.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/geometry/__init__.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/geometry/arc_data.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/geometry/point3d_data.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/geometry/point_data.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/geometry/r_tree.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/geometry/triangle3d_data.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/__init__.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/component_group.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/group.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/hierarchy_obj.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/inst_array.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/layout_component.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/model.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/netlist_model.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/pin_pair_model.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/sparameter_model.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/via_group.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/__init__.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/conn_obj.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/decorators.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/edb_logging.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/exceptions.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/interceptors.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/layout_obj.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/rpc_info_utils.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/inner/variable_server.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layer/__init__.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layer/layer.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layer/layer_collection.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layer/stackup_layer.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layer/via_layer.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layout/__init__.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layout_instance/__init__.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layout_instance/layout_instance_context.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layout_instance/layout_obj_instance.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layout_instance/layout_obj_instance_2d_geometry.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layout_instance/layout_obj_instance_3d_geometry.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/layout_instance/layout_obj_instance_geometry.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/net/__init__.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/net/differential_pair.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/net/extended_net.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/primitive/__init__.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/__init__.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/adaptive_solutions.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/hfss_simulation_settings.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/hfss_simulation_setup.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/mesh_operation.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/raptor_x_simulation_settings.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/raptor_x_simulation_setup.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/simulation_settings.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/siwave_dcir_simulation_setup.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/simulation_setup/siwave_simulation_setup.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/terminal/__init__.py +0 -0
- {ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/utility/__init__.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ansys-edb-core
|
|
3
|
-
Version: 0.2.
|
|
3
|
+
Version: 0.2.0.dev3
|
|
4
4
|
Summary: A python wrapper for Ansys Edb service
|
|
5
5
|
Author-email: "ANSYS, Inc." <pyansys.support@ansys.com>
|
|
6
6
|
Maintainer-email: PyAnsys developers <pyansys.maintainers@ansys.com>
|
|
@@ -15,7 +15,7 @@ Classifier: Programming Language :: Python :: 3.8
|
|
|
15
15
|
Classifier: Programming Language :: Python :: 3.9
|
|
16
16
|
Classifier: Programming Language :: Python :: 3.10
|
|
17
17
|
License-File: LICENSE
|
|
18
|
-
Requires-Dist: ansys-api-edb==0.2.
|
|
18
|
+
Requires-Dist: ansys-api-edb==0.2.dev4
|
|
19
19
|
Requires-Dist: protobuf>=3.19.3,<5
|
|
20
20
|
Requires-Dist: grpcio>=1.44.0
|
|
21
21
|
Requires-Dist: Django>=4.2.16
|
|
@@ -5,7 +5,7 @@ build-backend = "flit_core.buildapi"
|
|
|
5
5
|
[project]
|
|
6
6
|
# Check https://flit.readthedocs.io/en/latest/pyproject_toml.html for all available sections
|
|
7
7
|
name = "ansys-edb-core"
|
|
8
|
-
version = "0.2.
|
|
8
|
+
version = "0.2.0.dev3"
|
|
9
9
|
description = "A python wrapper for Ansys Edb service"
|
|
10
10
|
readme = "README.rst"
|
|
11
11
|
requires-python = ">=3.8"
|
|
@@ -25,7 +25,7 @@ classifiers = [
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
dependencies = [
|
|
28
|
-
"ansys-api-edb==0.2.
|
|
28
|
+
"ansys-api-edb==0.2.dev4",
|
|
29
29
|
"protobuf>=3.19.3,<5",
|
|
30
30
|
"grpcio>=1.44.0",
|
|
31
31
|
"Django>=4.2.16"
|
{ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/definition/material_def.py
RENAMED
|
@@ -5,6 +5,9 @@ from enum import Enum
|
|
|
5
5
|
import ansys.api.edb.v1.material_def_pb2 as pb
|
|
6
6
|
|
|
7
7
|
from ansys.edb.core.definition.dielectric_material_model import DielectricMaterialModel
|
|
8
|
+
from ansys.edb.core.definition.material_property_thermal_modifier import (
|
|
9
|
+
MaterialPropertyThermalModifier,
|
|
10
|
+
)
|
|
8
11
|
from ansys.edb.core.edb_defs import DefinitionObjType
|
|
9
12
|
from ansys.edb.core.inner import ObjBase, messages
|
|
10
13
|
from ansys.edb.core.session import MaterialDefServiceStub, StubAccessor, StubType
|
|
@@ -28,10 +31,6 @@ class MaterialProperty(Enum):
|
|
|
28
31
|
INVALID_PROPERTY = pb.INVALID_PROPERTY
|
|
29
32
|
|
|
30
33
|
|
|
31
|
-
class ThermalModifier(ObjBase):
|
|
32
|
-
"""Represents a thermal modifier model."""
|
|
33
|
-
|
|
34
|
-
|
|
35
34
|
class MaterialDef(ObjBase):
|
|
36
35
|
"""Represents a material definition."""
|
|
37
36
|
|
|
@@ -236,10 +235,10 @@ class MaterialDef(ObjBase):
|
|
|
236
235
|
|
|
237
236
|
Returns
|
|
238
237
|
-------
|
|
239
|
-
|
|
238
|
+
MaterialPropertyThermalModifier
|
|
240
239
|
Thermal modifier of the material definition.
|
|
241
240
|
"""
|
|
242
|
-
return
|
|
241
|
+
return MaterialPropertyThermalModifier(
|
|
243
242
|
self.__stub.GetThermalModifier(
|
|
244
243
|
MaterialDef._property_message(self, material_property_id)
|
|
245
244
|
)
|
|
@@ -253,7 +252,7 @@ class MaterialDef(ObjBase):
|
|
|
253
252
|
material_property_id : \
|
|
254
253
|
:class:`MaterialProperty`
|
|
255
254
|
Property ID.
|
|
256
|
-
thermal_modifier :
|
|
255
|
+
thermal_modifier : MaterialPropertyThermalModifier
|
|
257
256
|
Thermal modifier to set to the material definition.
|
|
258
257
|
"""
|
|
259
258
|
self.__stub.SetThermalModifier(
|
|
@@ -277,10 +276,10 @@ class MaterialDef(ObjBase):
|
|
|
277
276
|
|
|
278
277
|
Returns
|
|
279
278
|
-------
|
|
280
|
-
:class:`.
|
|
279
|
+
:class:`.MaterialPropertyThermalModifier`
|
|
281
280
|
Anisotropic thermal modifier of the material definition.
|
|
282
281
|
"""
|
|
283
|
-
return
|
|
282
|
+
return MaterialPropertyThermalModifier(
|
|
284
283
|
self.__stub.GetAnisotropicThermalModifier(
|
|
285
284
|
pb.MaterialDefPropertyComponentMessage(
|
|
286
285
|
materialDef=messages.edb_obj_message(self),
|
|
@@ -302,7 +301,7 @@ class MaterialDef(ObjBase):
|
|
|
302
301
|
Property ID.
|
|
303
302
|
component_id : int
|
|
304
303
|
Component ID.
|
|
305
|
-
thermal_modifier : :class:`.
|
|
304
|
+
thermal_modifier : :class:`.MaterialPropertyThermalModifier`
|
|
306
305
|
Anisotropic thermal modifier to set to the material definition.
|
|
307
306
|
"""
|
|
308
307
|
self.__stub.SetAnisotropicThermalModifier(
|
|
@@ -118,7 +118,7 @@ class PadstackDefData(ObjBase):
|
|
|
118
118
|
This property is read-only.
|
|
119
119
|
"""
|
|
120
120
|
layer_names_msg = self.__stub.GetLayerNames(self.msg).names
|
|
121
|
-
return layer_names_msg
|
|
121
|
+
return list(layer_names_msg)
|
|
122
122
|
|
|
123
123
|
@property
|
|
124
124
|
def layer_ids(self):
|
|
@@ -127,7 +127,7 @@ class PadstackDefData(ObjBase):
|
|
|
127
127
|
This property is read-only.
|
|
128
128
|
"""
|
|
129
129
|
layer_ids_msg = self.__stub.GetLayerIds(self.msg)
|
|
130
|
-
return layer_ids_msg.ids
|
|
130
|
+
return list(layer_ids_msg.ids)
|
|
131
131
|
|
|
132
132
|
def add_layers(self, names):
|
|
133
133
|
"""
|
{ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/geometry/polygon_data.py
RENAMED
|
@@ -9,6 +9,7 @@ from ansys.api.edb.v1 import edb_defs_pb2, point_data_pb2, polygon_data_pb2, pol
|
|
|
9
9
|
from ansys.edb.core import session
|
|
10
10
|
from ansys.edb.core.geometry.arc_data import ArcData
|
|
11
11
|
from ansys.edb.core.inner import messages, parser
|
|
12
|
+
from ansys.edb.core.inner.utils import client_stream_iterator
|
|
12
13
|
from ansys.edb.core.utility import conversions
|
|
13
14
|
|
|
14
15
|
|
|
@@ -40,6 +41,17 @@ class IntersectionType(Enum):
|
|
|
40
41
|
class PolygonData:
|
|
41
42
|
"""Represents a polygon data object."""
|
|
42
43
|
|
|
44
|
+
@staticmethod
|
|
45
|
+
def _polygon_data_request_iterator(polys):
|
|
46
|
+
chunk_entry_creator = lambda poly: messages.polygon_data_message(poly)
|
|
47
|
+
chunk_entries_getter = lambda chunk: chunk.polygons
|
|
48
|
+
return client_stream_iterator(
|
|
49
|
+
polys,
|
|
50
|
+
polygon_data_pb2.PolygonDataListMessage,
|
|
51
|
+
chunk_entry_creator,
|
|
52
|
+
chunk_entries_getter,
|
|
53
|
+
)
|
|
54
|
+
|
|
43
55
|
__stub: polygon_data_pb2_grpc.PolygonDataServiceStub = session.StubAccessor(
|
|
44
56
|
session.StubType.polygon_data
|
|
45
57
|
)
|
|
@@ -355,7 +367,7 @@ class PolygonData:
|
|
|
355
367
|
-------
|
|
356
368
|
tuple[.PointData, .PointData]
|
|
357
369
|
"""
|
|
358
|
-
return cls.__stub.
|
|
370
|
+
return cls.__stub.GetStreamedBBox(PolygonData._polygon_data_request_iterator(polygons))
|
|
359
371
|
|
|
360
372
|
@parser.to_circle
|
|
361
373
|
def bounding_circle(self):
|
{ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/cell_instance.py
RENAMED
|
@@ -98,7 +98,7 @@ class CellInstance(hierarchy_obj.HierarchyObj):
|
|
|
98
98
|
|
|
99
99
|
This property is read-only.
|
|
100
100
|
"""
|
|
101
|
-
from ansys.edb.core.terminal.
|
|
101
|
+
from ansys.edb.core.terminal.terminal_instance import TerminalInstance
|
|
102
102
|
|
|
103
103
|
terms = self.__stub.GetTermInsts(self.msg).items
|
|
104
104
|
return [TerminalInstance(ti) for ti in terms]
|
{ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/pin_group.py
RENAMED
|
@@ -3,9 +3,9 @@
|
|
|
3
3
|
from ansys.edb.core.edb_defs import LayoutObjType
|
|
4
4
|
from ansys.edb.core.inner import messages
|
|
5
5
|
from ansys.edb.core.inner.conn_obj import ConnObj
|
|
6
|
-
from ansys.edb.core.primitive.
|
|
6
|
+
from ansys.edb.core.primitive.padstack_instance import PadstackInstance
|
|
7
7
|
from ansys.edb.core.session import PinGroupServiceStub, StubAccessor, StubType
|
|
8
|
-
from ansys.edb.core.terminal.
|
|
8
|
+
from ansys.edb.core.terminal.pin_group_terminal import PinGroupTerminal
|
|
9
9
|
|
|
10
10
|
|
|
11
11
|
class PinGroup(ConnObj):
|
{ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/spice_model.py
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"""SPICE Model."""
|
|
2
2
|
from ansys.edb.core.hierarchy.model import Model
|
|
3
|
-
from ansys.edb.core.inner import messages
|
|
3
|
+
from ansys.edb.core.inner import messages, parser
|
|
4
4
|
from ansys.edb.core.session import SpiceModelServiceStub, StubAccessor, StubType
|
|
5
5
|
|
|
6
6
|
|
|
@@ -78,3 +78,10 @@ class SPICEModel(Model):
|
|
|
78
78
|
Terminal name.
|
|
79
79
|
"""
|
|
80
80
|
self.__stub.RemoveTerminalPinPair(messages.string_property_message(self, terminal))
|
|
81
|
+
|
|
82
|
+
@property
|
|
83
|
+
@parser.to_string_dict
|
|
84
|
+
def terminal_pin_pairs(self):
|
|
85
|
+
""":obj:`dict` of {:obj:`str` : :obj:`str`}: A dictionary showing the mapping of terminals in the layout to \
|
|
86
|
+
pins in the spice model by name."""
|
|
87
|
+
return self.__stub.GetTerminalPinPairs(self.msg)
|
{ansys_edb_core-0.2.dev1 → ansys_edb_core-0.2.0.dev3}/src/ansys/edb/core/hierarchy/structure3d.py
RENAMED
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
from enum import Enum
|
|
4
4
|
|
|
5
|
-
import ansys.api.edb.v1.
|
|
6
|
-
from ansys.api.edb.v1.
|
|
5
|
+
import ansys.api.edb.v1.structure_3d_pb2 as structure3d_pb2
|
|
6
|
+
from ansys.api.edb.v1.structure_3d_pb2_grpc import Structure3DServiceStub
|
|
7
7
|
|
|
8
8
|
from ansys.edb.core.hierarchy.group import Group
|
|
9
9
|
from ansys.edb.core.inner import messages
|
|
@@ -23,6 +23,8 @@ class ObjBase:
|
|
|
23
23
|
|
|
24
24
|
This property is read-only.
|
|
25
25
|
"""
|
|
26
|
+
if (buffer := get_buffer()) is not None:
|
|
27
|
+
buffer.flush()
|
|
26
28
|
return self.id == 0
|
|
27
29
|
|
|
28
30
|
@property
|
|
@@ -46,7 +48,7 @@ class ObjBase:
|
|
|
46
48
|
if io_mgr.is_enabled:
|
|
47
49
|
if self._is_future:
|
|
48
50
|
msg.is_future = True
|
|
49
|
-
|
|
51
|
+
io_mgr.active_request_edb_obj_msg_mgr.add_active_request_edb_obj_msg(msg)
|
|
50
52
|
return msg
|
|
51
53
|
|
|
52
54
|
@msg.setter
|
|
@@ -0,0 +1,161 @@
|
|
|
1
|
+
"""This module allows for the creating of objects while avoid circular imports."""
|
|
2
|
+
|
|
3
|
+
from ansys.edb.core.edb_defs import LayoutObjType
|
|
4
|
+
|
|
5
|
+
_type_creator_params_dict = None
|
|
6
|
+
_primitive_type_creator_params_dict = None
|
|
7
|
+
_terminal_type_creator_params_dict = None
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class _CreatorParams:
|
|
11
|
+
def __init__(self, obj_type, do_cast=False):
|
|
12
|
+
self.obj_type = obj_type
|
|
13
|
+
self.do_cast = do_cast
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
def _initialize_type_creator_params_dict():
|
|
17
|
+
global _type_creator_params_dict
|
|
18
|
+
|
|
19
|
+
from ansys.edb.core.hierarchy.cell_instance import CellInstance
|
|
20
|
+
from ansys.edb.core.hierarchy.group import Group
|
|
21
|
+
from ansys.edb.core.hierarchy.pin_group import PinGroup
|
|
22
|
+
from ansys.edb.core.inner.conn_obj import ConnObj
|
|
23
|
+
from ansys.edb.core.layout.voltage_regulator import VoltageRegulator
|
|
24
|
+
from ansys.edb.core.net.differential_pair import DifferentialPair
|
|
25
|
+
from ansys.edb.core.net.extended_net import ExtendedNet
|
|
26
|
+
from ansys.edb.core.net.net import Net
|
|
27
|
+
from ansys.edb.core.net.net_class import NetClass
|
|
28
|
+
from ansys.edb.core.primitive.padstack_instance import PadstackInstance
|
|
29
|
+
from ansys.edb.core.primitive.primitive import Primitive
|
|
30
|
+
from ansys.edb.core.terminal.terminal import Terminal
|
|
31
|
+
from ansys.edb.core.terminal.terminal_instance import TerminalInstance
|
|
32
|
+
|
|
33
|
+
_type_creator_params_dict = {
|
|
34
|
+
LayoutObjType.PRIMITIVE: _CreatorParams(Primitive, True),
|
|
35
|
+
LayoutObjType.PADSTACK_INSTANCE: _CreatorParams(PadstackInstance),
|
|
36
|
+
LayoutObjType.TERMINAL: _CreatorParams(Terminal, True),
|
|
37
|
+
LayoutObjType.TERMINAL_INSTANCE: _CreatorParams(TerminalInstance),
|
|
38
|
+
LayoutObjType.CELL_INSTANCE: _CreatorParams(CellInstance),
|
|
39
|
+
LayoutObjType.GROUP: _CreatorParams(Group, True),
|
|
40
|
+
LayoutObjType.PIN_GROUP: _CreatorParams(PinGroup),
|
|
41
|
+
LayoutObjType.VOLTAGE_REGULATOR: _CreatorParams(VoltageRegulator),
|
|
42
|
+
LayoutObjType.NET_CLASS: _CreatorParams(NetClass),
|
|
43
|
+
LayoutObjType.EXTENDED_NET: _CreatorParams(ExtendedNet),
|
|
44
|
+
LayoutObjType.DIFFERENTIAL_PAIR: _CreatorParams(DifferentialPair),
|
|
45
|
+
LayoutObjType.NET: _CreatorParams(Net),
|
|
46
|
+
LayoutObjType.INVALID_LAYOUT_OBJ: _CreatorParams(ConnObj),
|
|
47
|
+
}
|
|
48
|
+
return _type_creator_params_dict
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
def _initialize_primitive_type_creator_params_dict():
|
|
52
|
+
global _primitive_type_creator_params_dict
|
|
53
|
+
|
|
54
|
+
from ansys.edb.core.primitive.board_bend_def import BoardBendDef
|
|
55
|
+
from ansys.edb.core.primitive.bondwire import Bondwire
|
|
56
|
+
from ansys.edb.core.primitive.circle import Circle
|
|
57
|
+
from ansys.edb.core.primitive.path import Path
|
|
58
|
+
from ansys.edb.core.primitive.polygon import Polygon
|
|
59
|
+
from ansys.edb.core.primitive.primitive import PrimitiveType
|
|
60
|
+
from ansys.edb.core.primitive.primitive_instance_collection import PrimitiveInstanceCollection
|
|
61
|
+
from ansys.edb.core.primitive.rectangle import Rectangle
|
|
62
|
+
from ansys.edb.core.primitive.text import Text
|
|
63
|
+
|
|
64
|
+
_primitive_type_creator_params_dict = {
|
|
65
|
+
PrimitiveType.BOARD_BEND: _CreatorParams(BoardBendDef),
|
|
66
|
+
PrimitiveType.BONDWIRE: _CreatorParams(Bondwire),
|
|
67
|
+
PrimitiveType.CIRCLE: _CreatorParams(Circle),
|
|
68
|
+
PrimitiveType.PATH: _CreatorParams(Path),
|
|
69
|
+
PrimitiveType.POLYGON: _CreatorParams(Polygon),
|
|
70
|
+
PrimitiveType.RECTANGLE: _CreatorParams(Rectangle),
|
|
71
|
+
PrimitiveType.TEXT: _CreatorParams(Text),
|
|
72
|
+
PrimitiveType.PRIM_INST_COLLECTION: _CreatorParams(PrimitiveInstanceCollection),
|
|
73
|
+
}
|
|
74
|
+
return _primitive_type_creator_params_dict
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
def _initialize_terminal_type_creator_params_dict():
|
|
78
|
+
global _terminal_type_creator_params_dict
|
|
79
|
+
|
|
80
|
+
from ansys.edb.core.terminal.bundle_terminal import BundleTerminal
|
|
81
|
+
from ansys.edb.core.terminal.edge_terminal import EdgeTerminal
|
|
82
|
+
from ansys.edb.core.terminal.padstack_instance_terminal import PadstackInstanceTerminal
|
|
83
|
+
from ansys.edb.core.terminal.pin_group_terminal import PinGroupTerminal
|
|
84
|
+
from ansys.edb.core.terminal.point_terminal import PointTerminal
|
|
85
|
+
from ansys.edb.core.terminal.terminal import TerminalType
|
|
86
|
+
from ansys.edb.core.terminal.terminal_instance_terminal import TerminalInstanceTerminal
|
|
87
|
+
|
|
88
|
+
_terminal_type_creator_params_dict = {
|
|
89
|
+
TerminalType.BUNDLE: _CreatorParams(BundleTerminal),
|
|
90
|
+
TerminalType.EDGE: _CreatorParams(EdgeTerminal),
|
|
91
|
+
TerminalType.PADSTACK_INST: _CreatorParams(PadstackInstanceTerminal),
|
|
92
|
+
TerminalType.PIN_GROUP: _CreatorParams(PinGroupTerminal),
|
|
93
|
+
TerminalType.POINT: _CreatorParams(PointTerminal),
|
|
94
|
+
TerminalType.TERM_INST: _CreatorParams(TerminalInstanceTerminal),
|
|
95
|
+
}
|
|
96
|
+
return _terminal_type_creator_params_dict
|
|
97
|
+
|
|
98
|
+
|
|
99
|
+
def _initialize_and_get_creator_dict(initializer, creator_dict):
|
|
100
|
+
return initializer() if creator_dict is None else creator_dict
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
def _get_type_creator_dict():
|
|
104
|
+
return _initialize_and_get_creator_dict(
|
|
105
|
+
_initialize_type_creator_params_dict, _type_creator_params_dict
|
|
106
|
+
)
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
def _get_primitive_type_creator_dict():
|
|
110
|
+
return _initialize_and_get_creator_dict(
|
|
111
|
+
_initialize_primitive_type_creator_params_dict, _primitive_type_creator_params_dict
|
|
112
|
+
)
|
|
113
|
+
|
|
114
|
+
|
|
115
|
+
def _get_terminal_type_creator_dict():
|
|
116
|
+
return _initialize_and_get_creator_dict(
|
|
117
|
+
_initialize_terminal_type_creator_params_dict, _terminal_type_creator_params_dict
|
|
118
|
+
)
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
def create_obj(msg, obj_type, do_cast):
|
|
122
|
+
"""Create an object from the provided message of the provided type."""
|
|
123
|
+
obj = obj_type(msg)
|
|
124
|
+
if do_cast:
|
|
125
|
+
obj = obj.cast()
|
|
126
|
+
return obj
|
|
127
|
+
|
|
128
|
+
|
|
129
|
+
def create_obj_from_creator_dict(creator_dict, msg, obj_type):
|
|
130
|
+
"""Create an object from the provided message of the type corresponding to the provided object type."""
|
|
131
|
+
params = creator_dict[obj_type]
|
|
132
|
+
return create_obj(msg, params.obj_type, params.do_cast)
|
|
133
|
+
|
|
134
|
+
|
|
135
|
+
def create_lyt_obj(msg, lyt_obj_type):
|
|
136
|
+
"""Create a layout object from the provided message of the type corresponding to the provided layout object type."""
|
|
137
|
+
return create_obj_from_creator_dict(_get_type_creator_dict(), msg, lyt_obj_type)
|
|
138
|
+
|
|
139
|
+
|
|
140
|
+
def create_primitive(msg, prim_type):
|
|
141
|
+
"""Create a primitive from the provided message of the type corresponding to the provided primitive type."""
|
|
142
|
+
return create_obj_from_creator_dict(_get_primitive_type_creator_dict(), msg, prim_type)
|
|
143
|
+
|
|
144
|
+
|
|
145
|
+
def create_terminal(msg, term_type):
|
|
146
|
+
"""Create a terminal from the provided message of the type corresponding to the provided terminal type."""
|
|
147
|
+
return create_obj_from_creator_dict(_get_terminal_type_creator_dict(), msg, term_type)
|
|
148
|
+
|
|
149
|
+
|
|
150
|
+
def create_conn_obj(msg):
|
|
151
|
+
"""Create a connection object of its derived type based on its layout object type.
|
|
152
|
+
|
|
153
|
+
Parameters
|
|
154
|
+
----------
|
|
155
|
+
msg : ansys.api.edb.v1.edb_messages_pb2.EDBObjMessage
|
|
156
|
+
|
|
157
|
+
Returns
|
|
158
|
+
-------
|
|
159
|
+
ansys.edb.core.inner.ConnObj
|
|
160
|
+
"""
|
|
161
|
+
return create_lyt_obj(msg, create_lyt_obj(msg, LayoutObjType.INVALID_LAYOUT_OBJ).obj_type)
|
|
@@ -120,10 +120,10 @@ from ansys.api.edb.v1.refs_pb2 import (
|
|
|
120
120
|
NetRefMessage,
|
|
121
121
|
)
|
|
122
122
|
from ansys.api.edb.v1.rlc_pb2 import RlcMessage
|
|
123
|
+
from ansys.api.edb.v1.s_parameter_model_pb2 import SParameterModelMessage
|
|
123
124
|
from ansys.api.edb.v1.simulation_setup_pb2 import MatrixConvergenceEntryMessage
|
|
124
|
-
from ansys.api.edb.v1.sparameter_model_pb2 import SParameterModelMessage
|
|
125
125
|
from ansys.api.edb.v1.spice_model_pb2 import SpiceModelMessage, SpiceModelNewTerminalPinMessage
|
|
126
|
-
from ansys.api.edb.v1.
|
|
126
|
+
from ansys.api.edb.v1.structure_3d_pb2 import ClosureMessage, SetClosureMessage
|
|
127
127
|
from ansys.api.edb.v1.term_inst_pb2 import TermInstCreationMessage
|
|
128
128
|
from ansys.api.edb.v1.term_inst_term_pb2 import (
|
|
129
129
|
TermInstTermCreationMessage,
|
|
@@ -17,7 +17,7 @@ from ansys.edb.core.simulation_setup.mesh_operation import (
|
|
|
17
17
|
|
|
18
18
|
def to_point_data(fn):
|
|
19
19
|
"""Decorate a function that returns a message to return it as a ``PointData`` object."""
|
|
20
|
-
return _wraps(fn,
|
|
20
|
+
return _wraps(fn, msg_to_point_data)
|
|
21
21
|
|
|
22
22
|
|
|
23
23
|
def to_point_data_list(fn):
|
|
@@ -42,7 +42,7 @@ def to_3_point3d_data(fn):
|
|
|
42
42
|
|
|
43
43
|
def to_polygon_data(fn):
|
|
44
44
|
"""Decorate a function that returns a message to return it as a ``PolygonData`` object."""
|
|
45
|
-
return _wraps(fn,
|
|
45
|
+
return _wraps(fn, msg_to_polygon_data)
|
|
46
46
|
|
|
47
47
|
|
|
48
48
|
def to_polygon_data_list(fn):
|
|
@@ -95,6 +95,11 @@ def to_mesh_op(fn):
|
|
|
95
95
|
return _wraps(fn, _to_mesh_op)
|
|
96
96
|
|
|
97
97
|
|
|
98
|
+
def to_string_dict(fn):
|
|
99
|
+
"""Decorate a function that returns a message to return it as a ``dict[str, str]``."""
|
|
100
|
+
return _wraps(fn, _to_string_dict)
|
|
101
|
+
|
|
102
|
+
|
|
98
103
|
def _wraps(fn, wrapper_fn):
|
|
99
104
|
if callable(fn):
|
|
100
105
|
|
|
@@ -107,7 +112,7 @@ def _wraps(fn, wrapper_fn):
|
|
|
107
112
|
return wrapper_fn(fn)
|
|
108
113
|
|
|
109
114
|
|
|
110
|
-
def
|
|
115
|
+
def msg_to_point_data(message):
|
|
111
116
|
"""Convert a ``PointMessage`` object to a ``PointData`` object.
|
|
112
117
|
|
|
113
118
|
Parameters
|
|
@@ -135,7 +140,7 @@ def _to_point_data_pair(message):
|
|
|
135
140
|
-------
|
|
136
141
|
tuple[:class:`.PointData`, :class:`.PointData`]
|
|
137
142
|
"""
|
|
138
|
-
return
|
|
143
|
+
return msg_to_point_data(message.point_0), msg_to_point_data(message.point_1)
|
|
139
144
|
|
|
140
145
|
|
|
141
146
|
def _to_point_data_list(message):
|
|
@@ -149,7 +154,7 @@ def _to_point_data_list(message):
|
|
|
149
154
|
-------
|
|
150
155
|
list[:class:`.PointData`]
|
|
151
156
|
"""
|
|
152
|
-
return [
|
|
157
|
+
return [msg_to_point_data(m) for m in message]
|
|
153
158
|
|
|
154
159
|
|
|
155
160
|
def _to_3_point3d_data(message):
|
|
@@ -183,7 +188,7 @@ def _to_point3d_data(message):
|
|
|
183
188
|
return Point3DData(Value(message.x), Value(message.y), Value(message.z))
|
|
184
189
|
|
|
185
190
|
|
|
186
|
-
def
|
|
191
|
+
def msg_to_polygon_data(message):
|
|
187
192
|
"""Convert an arbitrary message to a ``PolygonData`` object if possible.
|
|
188
193
|
|
|
189
194
|
Parameters
|
|
@@ -218,11 +223,11 @@ def _to_polygon_data_list(message):
|
|
|
218
223
|
list[:class:`.PolygonData`]
|
|
219
224
|
"""
|
|
220
225
|
if hasattr(message, "polygons"):
|
|
221
|
-
return [
|
|
226
|
+
return [msg_to_polygon_data(m) for m in message.polygons]
|
|
222
227
|
elif hasattr(message, "points"):
|
|
223
|
-
return [
|
|
228
|
+
return [msg_to_polygon_data(m) for m in message.points]
|
|
224
229
|
else:
|
|
225
|
-
return [
|
|
230
|
+
return [msg_to_polygon_data(m) for m in message]
|
|
226
231
|
|
|
227
232
|
|
|
228
233
|
def _to_box(message):
|
|
@@ -237,7 +242,7 @@ def _to_box(message):
|
|
|
237
242
|
tuple[:class:`.PointData`, :class:`.PointData`]
|
|
238
243
|
"""
|
|
239
244
|
if hasattr(message, "lower_left") and hasattr(message, "upper_right"):
|
|
240
|
-
return
|
|
245
|
+
return msg_to_point_data(message.lower_left), msg_to_point_data(message.upper_right)
|
|
241
246
|
|
|
242
247
|
|
|
243
248
|
def _to_circle(message):
|
|
@@ -254,7 +259,7 @@ def _to_circle(message):
|
|
|
254
259
|
from ansys.edb.core.utility.value import Value
|
|
255
260
|
|
|
256
261
|
if hasattr(message, "center") and hasattr(message, "radius"):
|
|
257
|
-
return
|
|
262
|
+
return msg_to_point_data(message.center), Value(message.radius)
|
|
258
263
|
|
|
259
264
|
|
|
260
265
|
def _to_rlc(message):
|
|
@@ -498,3 +503,8 @@ def _to_mesh_op(message):
|
|
|
498
503
|
for nli in message.net_layer_info:
|
|
499
504
|
mesh_op.net_layer_info.append((nli.net, nli.layer, nli.is_sheet))
|
|
500
505
|
return mesh_op
|
|
506
|
+
|
|
507
|
+
|
|
508
|
+
def _to_string_dict(message):
|
|
509
|
+
"""Convert a message to a dictionary of strings."""
|
|
510
|
+
return {key: value for (key, value) in message.string_map}
|