ansys / ansys/pyedb-core

Bug located in Cell.cutout

Open
#749 0 comments 0 reactions 0 assignees View on GitHub
bug
Dominant language
Python
Stars
7
Forks
4
PR merge metrics
No merged PRs in 30d

Description

### 🔍 Before submitting the issue

- [x] I have searched among the existing issues
- [x] I am using a Python virtual environment

### 🐞 Description of the bug

When creating a cutout of a design with geometry in the no-name net, this geometry gets excluded from the cutout, even when it is included in the keep nets and clipped nets arguments. There are no errors or exceptions thrown, but the output contains no NO_NET geometry.

### 📝 Steps to reproduce

with session(ansysem_path):
edb = Database.open(edb_output_base, True)
top_cell = edb.top_circuit_cells[0]
top_layout = top_cell.layout
all_nets = top_layout.nets
all_nets.append(Net.find_by_name(top_layout, Net.no_net_name))

ll_x = Value("-500um")
ll_y = Value("-500um")
ur_x = Value("500um")
ur_y = Value("500um")
ll_pt = PointData(ll_x, ll_y)
ur_pt = PointData(ur_x, ur_y)
clip_poly = PolygonData(lower_left=ll_pt, upper_right=ur_pt)

cutout_cell = top_cell.cutout(all_nets, all_nets, rectangle.polygon_data, False, True)
cutout_layout = cutout_cell.layout
prim_count = len(cutout_cell.layout.primitives)
print(f"Cutout created with {prim_count} primitives")
edb.save_as(edb_cutout_base)
edb.close()

### 💻 Which operating system are you using?

Windows

### 📀 Which ANSYS version are you using?

26.1

### 🐍 Which Python version are you using?

3.10

### 📦 Installed packages

```shell
accessible-pygments==0.0.5
alabaster==1.0.0
annotated-types==0.7.0
ansys-api-edb==0.3.0
ansys-edb-core==0.3.1
ansys-pythonnet==3.1.0rc6
ansys-sphinx-theme==1.6.4
ansys-tools-common==0.5.0
attrs==26.1.0
babel==2.18.0
beautifulsoup4==4.14.3
black==26.1.0
cabarchive==0.2.5
certifi==2026.4.22
cffi==2.0.0
cfgv==3.5.0
charset-normalizer==3.4.7
click==8.3.3
clr_loader==0.2.10
colorama==0.4.6
cx_Freeze==8.5.3
defusedxml==0.7.1
distlib==0.4.0
docopt==0.6.2
docutils==0.21.2
exceptiongroup==1.3.1
execnet==2.1.2
filelock==3.29.0
flake8==7.3.0
flake8-unused-arguments==0.0.14
flit==3.12.0
flit_core==3.12.0
freeze-core==0.6.1
gdstk==0.9.62
grpcio==1.80.0
ICSetupToolkit @ file:///D:/source/icstk_b1
identify==2.6.19
idna==3.13
imagesize==2.0.0
importlib_metadata==9.0.0
iniconfig==2.3.0
isort==7.0.0
Jinja2==3.1.6
joblib==1.5.3
jsonschema==4.26.0
jsonschema-specifications==2025.9.1
lief==0.17.1
MarkupSafe==3.0.3
mccabe==0.7.0
mypy_extensions==1.1.0
nodeenv==1.10.0
numpy==2.2.6
packaging==26.2
pathspec==1.1.1
pdf2image==1.17.0
pillow==12.2.0
platformdirs==4.9.6
pluggy==1.6.0
portalocker==3.2.0
pre_commit==4.5.1
protobuf==6.33.6
psutil==7.2.2
pyaedt==0.26.3
pycodestyle==2.14.0
pycparser==3.0
pydantic==2.13.3
pydantic_core==2.46.3
pydata-sphinx-theme==0.16.1
pyedb==0.74.0
pyflakes==3.4.0
Pygments==2.20.0
PySide6==6.9.3
pyside6-qml-stubgen==0.1.0a10
PySide6_Addons==6.9.3
PySide6_Essentials==6.9.3
pytest==9.0.3
pytest-qt==4.5.0
pytest-xdist==3.8.0
python-discovery==1.2.2
pytokens==0.4.1
pywin32==311
PyYAML==6.0.3
referencing==0.37.0
requests==2.33.1
rpds-py==0.30.0
rtree==1.4.1
scikit-learn==1.7.2
scipy==1.15.3
scooby==0.11.2
shiboken6==6.9.3
snowballstemmer==3.0.1
soupsieve==2.8.3
Sphinx==8.1.3
sphinx-copybutton==0.5.2
sphinxcontrib-applehelp==2.0.0
sphinxcontrib-devhelp==2.0.0
sphinxcontrib-htmlhelp==2.1.0
sphinxcontrib-jsmath==1.0.1
sphinxcontrib-qthelp==2.0.0
sphinxcontrib-serializinghtml==2.0.0
striprtf==0.0.32
threadpoolctl==3.6.0
toml==0.10.2
tomli==2.4.1
tomli_w==1.2.0
towncrier==25.8.0
typing-inspection==0.4.2
typing_extensions==4.15.0
urllib3==2.6.3
virtualenv==21.3.0
xmltodict==1.0.4
zipp==3.23.1
```

Contributor guide

Open the contributing guide

Research direction

Start at the Cell.cutout entry point and run the provided Python reproduction with the no-name net included in the keep and clipped nets arguments. Trace how that net is handled during cutout; done means the resulting cutout contains the NO_NET geometry and the reproduction completes without errors.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
databases
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.