Python reader for OASIS format
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
Jan Petykiewicz 968392a4a3 bump version number to v0.13
Main changes are numpy 2.0 compatibility and improved type annotations
2024-07-29 18:21:52 -07:00
fatamorgana bump version number to v0.13 2024-07-29 18:21:52 -07:00
.flake8 cleanup based on flake8 output 2024-07-29 18:19:17 -07:00
.gitignore Add tests 2021-07-30 23:24:45 -07:00
LICENSE.md initial commit 2017-09-18 03:01:48 -07:00
pyproject.toml bump minimum versions and allow numpy 2.0 2024-07-29 18:19:17 -07:00
README.md bump minimum versions and allow numpy 2.0 2024-07-29 18:19:17 -07:00

fatamorgana

fatamorgana is a Python package for reading and writing OASIS format layout files.

Homepage: https://mpxd.net/code/jan/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) numpy

Install with pip from PyPi (preferred):

pip3 install fatamorgana

Install directly from git repository:

pip3 install git+https://mpxd.net/code/jan/fatamorgana.git@release

Documentation

Most functions and classes are documented inline.

To read the inline help,

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:

    import fatamorgana

    with open('test.oas', 'rb') as f:
        layout = fatamorgana.OasisLayout.read(f)

    with open('test_write.oas', 'wb') as f:
        layout.write(f)