Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve conformal polygon generation for clipping #183

Open
svandenb-dev opened this issue Nov 2, 2022 · 0 comments
Open

Improve conformal polygon generation for clipping #183

svandenb-dev opened this issue Nov 2, 2022 · 0 comments
Labels
enhancement New feature or request

Comments

@svandenb-dev
Copy link
Collaborator

Hi,
as explained during a meeting, generating a conformal polygon based on net selection with EDB is very slow. Can go up to 30mn on very large board. During discussion if I understand correctly, this might come from the LayoutInstance manager which keeps refreshing primitives along the process. The idea would be to introduce a tag to speed this up and avoid refreshing during this process since geometries are not modified.

with launch_session(r"C:\Program Files\AnsysEM\v231\Win64", 50051):
edb = Database.open(r"C:\Data\E_Group\clean_edb_examples\Galileo_edb.aedb", False)
layout = edb.circuit_cells[0].layout
edb_components = [
cmp for cmp in edb.circuit_cells[0].layout.groups if cmp.name in ["U2A5", "U1B5"]
]
signal_nets = ["M_DQ<0>", "M_DQ<1>", "M_DQ<2>", "M_DQ<3>", "M_DQ<4>", "M_DQ<5>", "M_DQ<6>", "M_DQ<7>"]
reference_net = ["GND"]
included_nets = [net for net in layout.nets if net.name in signal_nets]
clipped_net = [net for net in layout.nets if net.name in reference_net]
expanded_extent = layout.expanded_extent(
nets=included_nets,
extent=ExtentType.CONFORMING,
expansion_factor=0.01,
expansion_unitless=False,
use_round_corner=True,
num_increments=1,
)

@bwnedrud bwnedrud added the enhancement New feature or request label Mar 15, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants