Metadata-Version: 2.1
Name: pygeosimplify
Version: 0.0.5
Summary: Python package for automatic, cell-based inference of clash-free simplified detector geometry.
Home-page: https://github.com/jbeirer/pygeosimplify
Author: Joshua Falco Beirer
Author-email: jbeirer@cern.ch
Requires-Python: >=3.9,<3.13
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Requires-Dist: distinctipy (>=1.2.3,<2.0.0)
Requires-Dist: matplotlib (>=3.8.1,<4.0.0)
Requires-Dist: numpy (>=1.26.1,<2.0.0)
Requires-Dist: pandas (>=2.1.2,<3.0.0)
Requires-Dist: pyg4ometry (>=1.1.1,<2.0.0)
Requires-Dist: scipy (>=1.11.3,<2.0.0)
Requires-Dist: tqdm (>=4.66.1,<5.0.0)
Requires-Dist: uproot (>=5.1.2,<6.0.0)
Project-URL: Documentation, https://jbeirer.github.io/pygeosimplify/
Project-URL: Repository, https://github.com/jbeirer/pygeosimplify
Description-Content-Type: text/markdown

<img src=https://github.com/jbeirer/pygeosimplify/raw/main/docs/logo.svg alt="Logo" width="250">


[![Release](https://img.shields.io/github/v/release/jbeirer/pygeosimplify)](https://img.shields.io/github/v/release/jbeirer/pygeosimplify)
[![Build status](https://img.shields.io/github/actions/workflow/status/jbeirer/pygeosimplify/main.yml?branch=main)](https://github.com/jbeirer/pygeosimplify/actions/workflows/main.yml?query=branch%3Amain)
[![codecov](https://codecov.io/gh/jbeirer/pygeosimplify/graph/badge.svg?token=ZCJV384TXF)](https://codecov.io/gh/jbeirer/pygeosimplify)
[![Commit activity](https://img.shields.io/github/commit-activity/m/jbeirer/pygeosimplify)](https://img.shields.io/github/commit-activity/m/jbeirer/pygeosimplify)
[![License](https://img.shields.io/github/license/jbeirer/pygeosimplify)](https://img.shields.io/github/license/jbeirer/pygeosimplify)


Welcome to pyGeoSimplify!

## Download pyGeoSimplify
```python
pip install pygeosimplify
```

## Quick Start

```python
import pygeosimplify as pgs
from pygeosimplify.simplify.layer import GeoLayer
from pygeosimplify.simplify.detector import SimplifiedDetector

# Set names of branches that specify coordinate system of cells
pgs.set_coordinate_branch("XYZ", "isCartesian")

# Load geometry
geo = pgs.load_geometry("DetectorCells.root", tree_name='treeName')

# Create simplified detector
detector = SimplifiedDetector()

# Add dector layers to detector
layer = GeoLayer(geo, layer_idx)
detector.add_layer(layer)

# Process detector
detector.process()

# Save simplified detector to gdml file
detector.save_to_gdml(cyl_type='processed', output_path='processed.gdml')
```

## LICENSE

pyGeoSimplify is free of use and open-source. All versions are
published under the [MIT License](https://github.com/jbeirer/pygeosimplify/blob/main/LICENSE).

