Metadata-Version: 2.4
Name: cxregions
Version: 0.1.4
Summary: A Python interface to the ComplexRegions.jl Julia package
Project-URL: Homepage, https://github.com/complexvariables/cxregions
Author-email: Toby Driscoll <driscoll@udel.edu>
License-Expression: MIT
License-File: LICENSE
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Requires-Python: >=3.11
Requires-Dist: juliacall<0.10,>=0.9.30
Requires-Dist: numpy<3,>=2.1
Description-Content-Type: text/markdown

# cxregions

This package is a Python interface to the [ComplexRegions.jl](https://github.com/complexvariables/ComplexRegions.jl) Julia package, providing tools for working with complex regions defined by paths and curves. It allows users to create, manipulate, and analyze geometric shapes such as circular polygons and general polygons using Julia's computational capabilities from within Python.

## Installation

To install the `cxregions` package, you can use pip:

```bash
pip install cxregions
```

The first time you import `cxregions`, it will set up a Julia environment and install the necessary Julia packages. This may take a few minutes.

## Usage

Here is a simple example of how to use the `cxregions` package:

```python
from cxregions import Polygon, Line, Arc

# Create curves
line1 = Line(0+0j, 2+2j)
print(line1.point(0.5))  # Should print 1+1j
arc1 = Arc(-1j, 1j, -1)
p = Polygon([4, 4 + 3j, 3j, -2j, 6 - 2j, 6])
print(p.winding(5 - 1j)) # Should print 1
```

Full documentation and examples can be found in the [ComplexRegions.jl documentation](https://complexvariables.github.io/ComplexRegions.jl/stable/). Most of the Julia methods shown there are members of the corresponding Python classes.