Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/anewusername/fatamorgana
https://github.com/anewusername/fatamorgana
Last synced: 23 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/anewusername/fatamorgana
- Owner: anewusername
- License: agpl-3.0
- Created: 2024-03-30T23:49:10.000Z (8 months ago)
- Default Branch: master
- Last Pushed: 2024-07-30T01:22:23.000Z (4 months ago)
- Last Synced: 2024-10-14T16:21:00.256Z (about 1 month ago)
- Language: Python
- Size: 210 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
# fatamorgana
**fatamorgana** is a Python package for reading and writing OASIS format layout files.
**Homepage:** https://mpxd.net/code/jan/fatamorgana
* [PyPI](https://pypi.org/project/fatamorgana)
* [Github mirror](https://github.com/anewusername/fatamorgana)**Capabilities:**
* This package is a work-in-progress and is largely untested -- it works for
the tasks I usually use it for, but I can't guarantee I've even
tried the features you happen to use! Use at your own risk!
* Interfaces and datastructures are subject to change!
* That said the following work for me:
- polygons
- layer info
- cell names
- compressed blocks
- basic property I/O## Installation
**Dependencies:**
* python >=3.11
* (optional) numpyInstall with pip from PyPi (preferred):
```bash
pip3 install fatamorgana
```Install directly from git repository:
```bash
pip3 install git+https://mpxd.net/code/jan/fatamorgana.git@release
```## Documentation
Most functions and classes are documented inline.To read the inline help,
```python3
import fatamorgana
help(fatamorgana.OasisLayout)
```
The documentation is currently very sparse and I expect to improve it whenever possible!## Examples
Read an OASIS file and write it back out:
```python3
import fatamorganawith open('test.oas', 'rb') as f:
layout = fatamorgana.OasisLayout.read(f)with open('test_write.oas', 'wb') as f:
layout.write(f)
```