Metadata-Version: 2.4
Name: agave_pyclient
Version: 1.9.0rc1
Summary: A Python client for the Agave 3d volume renderer
Home-page: https://github.com/allen-cell-animated/agave
Author: Daniel Toloudis
Author-email: danielt@alleninstitute.org
License: Allen Institute Software License
Keywords: agave_pyclient
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: GPU
Classifier: Intended Audience :: Education
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Healthcare Industry
Classifier: Intended Audience :: Science/Research
Classifier: License :: Free for non-commercial use
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Programming Language :: Python :: 3.13
Classifier: Topic :: Multimedia :: Graphics :: 3D Rendering
Classifier: Topic :: Scientific/Engineering :: Visualization
Classifier: Topic :: Scientific/Engineering :: Medical Science Apps.
Classifier: Topic :: Scientific/Engineering :: Image Processing
Requires-Python: >=3.7
Description-Content-Type: text/markdown
License-File: LICENSE
Requires-Dist: numpy
Requires-Dist: ws4py==0.5.1
Requires-Dist: Pillow==10.3.0
Provides-Extra: setup
Requires-Dist: pytest-runner>=5.2; extra == "setup"
Provides-Extra: test
Requires-Dist: black>=19.10b0; extra == "test"
Requires-Dist: flake8>=3.8.3; extra == "test"
Requires-Dist: flake8-debugger>=3.2.1; extra == "test"
Requires-Dist: pytest>=5.4.3; extra == "test"
Requires-Dist: pytest-cov>=2.9.0; extra == "test"
Requires-Dist: pytest-raises>=0.11; extra == "test"
Provides-Extra: dev
Requires-Dist: pytest-runner>=5.2; extra == "dev"
Requires-Dist: black>=19.10b0; extra == "dev"
Requires-Dist: flake8>=3.8.3; extra == "dev"
Requires-Dist: flake8-debugger>=3.2.1; extra == "dev"
Requires-Dist: pytest>=5.4.3; extra == "dev"
Requires-Dist: pytest-cov>=2.9.0; extra == "dev"
Requires-Dist: pytest-raises>=0.11; extra == "dev"
Requires-Dist: bump2version>=1.0.1; extra == "dev"
Requires-Dist: coverage>=5.1; extra == "dev"
Requires-Dist: ipython>=7.15.0; extra == "dev"
Requires-Dist: m2r2>=0.2.7; extra == "dev"
Requires-Dist: pytest-runner>=5.2; extra == "dev"
Requires-Dist: Sphinx>=3.4.3; extra == "dev"
Requires-Dist: sphinx_rtd_theme>=0.5.1; extra == "dev"
Requires-Dist: tox>=3.15.2; extra == "dev"
Requires-Dist: twine>=3.1.1; extra == "dev"
Requires-Dist: wheel>=0.34.2; extra == "dev"
Provides-Extra: all
Requires-Dist: numpy; extra == "all"
Requires-Dist: ws4py==0.5.1; extra == "all"
Requires-Dist: Pillow==10.3.0; extra == "all"
Requires-Dist: pytest-runner>=5.2; extra == "all"
Requires-Dist: black>=19.10b0; extra == "all"
Requires-Dist: flake8>=3.8.3; extra == "all"
Requires-Dist: flake8-debugger>=3.2.1; extra == "all"
Requires-Dist: pytest>=5.4.3; extra == "all"
Requires-Dist: pytest-cov>=2.9.0; extra == "all"
Requires-Dist: pytest-raises>=0.11; extra == "all"
Requires-Dist: bump2version>=1.0.1; extra == "all"
Requires-Dist: coverage>=5.1; extra == "all"
Requires-Dist: ipython>=7.15.0; extra == "all"
Requires-Dist: m2r2>=0.2.7; extra == "all"
Requires-Dist: pytest-runner>=5.2; extra == "all"
Requires-Dist: Sphinx>=3.4.3; extra == "all"
Requires-Dist: sphinx_rtd_theme>=0.5.1; extra == "all"
Requires-Dist: tox>=3.15.2; extra == "all"
Requires-Dist: twine>=3.1.1; extra == "all"
Requires-Dist: wheel>=0.34.2; extra == "all"
Dynamic: author
Dynamic: author-email
Dynamic: classifier
Dynamic: description
Dynamic: description-content-type
Dynamic: home-page
Dynamic: keywords
Dynamic: license
Dynamic: license-file
Dynamic: provides-extra
Dynamic: requires-dist
Dynamic: requires-python
Dynamic: summary

# agave_pyclient

A Python client for the AGAVE 3d volume renderer

---

## Features

- Connects to AGAVE server and sends draw commands. Receives and saves rendered images.

## Quick Start

You must have AGAVE installed. On command line, run:

```
agave --server &
```

For Linux headless operation, you need to tell the Qt library to use the offscreen platform plugin:

```
agave -platform offscreen --server &
```

```python
from agave_pyclient import AgaveRenderer

# 1. connect to the AGAVE server
r = agave_pyclient.AgaveRenderer()
# 2. tell it what data to load
r.load_data("my_favorite.ome.tiff")
# 3. set some render settings (abbreviated list here)
r.set_resolution(681, 612)
r.background_color(0, 0, 0)
r.render_iterations(128)
r.set_primary_ray_step_size(4)
r.set_secondary_ray_step_size(4)
r.set_voxel_scale(0.270833, 0.270833, 0.53)
r.exposure(0.75)
r.density(28.7678)
# 4. give the output a name
r.session("output.png")
# 5. wait for render and then save output
r.redraw()
```

## Installation

**Stable Release:** `pip install agave_pyclient`<br>

## Documentation

For full package documentation please visit [allen-cell-animated.github.io/agave](https://allen-cell-animated.github.io/agave).

## Development

See [CONTRIBUTING.md](CONTRIBUTING.md) for information related to developing the code.

## The Four Commands You Need To Know

1. `pip install -e .[dev]`

   This will install your package in editable mode with all the required development
   dependencies (i.e. `tox`).

2. `make build`

   This will run `tox` which will run all your tests in both Python 3.7
   and Python 3.8 as well as linting your code.

3. `make clean`

   This will clean up various Python and build generated files so that you can ensure
   that you are working in a clean environment.

4. `make docs`

   This will generate and launch a web browser to view the most up-to-date
   documentation for your Python package.

**Allen Institute Software License**
