Metadata-Version: 2.1
Name: pooltool-billiards
Version: 0.4.1
Summary: A sandbox billiards game that emphasizes realistic physics.
Home-page: https://pooltool.readthedocs.io/en/latest/
License: Apache-2.0
Keywords: simulation,physics,pool,billiards,panda3d,snooker,eight-ball
Author: Evan Kiefl
Author-email: kiefl.evan@gmail.com
Maintainer: Evan Kiefl
Maintainer-email: kiefl.evan@gmail.com
Requires-Python: >=3.9,<3.13
Classifier: License :: OSI Approved :: Apache Software License
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
Classifier: Topic :: Games/Entertainment :: Simulation
Classifier: Topic :: Scientific/Engineering :: Physics
Classifier: Topic :: Scientific/Engineering :: Visualization
Requires-Dist: Pillow (>=6.2.0)
Requires-Dist: attrs (>=21.3.0)
Requires-Dist: cattrs (>=22.1.0)
Requires-Dist: click (>=8.0.0)
Requires-Dist: h5py (>=3.10)
Requires-Dist: msgpack (>=1.0.0)
Requires-Dist: msgpack-numpy (>=0.4.8)
Requires-Dist: numba (>=0.59.0)
Requires-Dist: numpy (>=1.26.0)
Requires-Dist: panda3d (==1.11.0.dev3444) ; sys_platform == "linux"
Requires-Dist: panda3d (==1.11.0.dev3444) ; sys_platform == "win32"
Requires-Dist: panda3d (>=1.10.13,<1.11) ; sys_platform == "darwin"
Requires-Dist: panda3d-gltf (>=1.2.0)
Requires-Dist: panda3d-simplepbr (>=0.12.0)
Requires-Dist: pyyaml (>=5.2)
Requires-Dist: scipy (>=1.12.0)
Project-URL: Documentation, https://pooltool.readthedocs.io/en/latest/
Project-URL: Repository, https://github.com/ekiefl/pooltool
Description-Content-Type: text/markdown

<img src="pooltool/logo/logo.png" width="600" />

[![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)
[![GitHub license](https://img.shields.io/github/license/ekiefl/pooltool)](https://github.com/ekiefl/pooltool/blob/master/LICENSE.txt)
[![Documentation Status](https://readthedocs.org/projects/pooltool/badge/?version=latest)](https://pooltool.readthedocs.io/en/latest/?badge=latest)
![GitHub Actions Workflow Status](https://img.shields.io/github/actions/workflow/status/ekiefl/pooltool/test.yml)

[![GitHub stars](https://img.shields.io/github/stars/ekiefl/pooltool)](https://github.com/ekiefl/pooltool/stargazers)
[![GitHub forks](https://img.shields.io/github/forks/ekiefl/pooltool)](https://github.com/ekiefl/pooltool/network)
![GitHub commit activity](https://img.shields.io/github/commit-activity/m/ekiefl/pooltool)

![PyPI - Version](https://img.shields.io/pypi/v/pooltool-billiards)
![PyPI - Python Version](https://img.shields.io/pypi/pyversions/pooltool-billiards)
[![codecov](https://codecov.io/gh/ekiefl/pooltool/graph/badge.svg)](https://codecov.io/gh/ekiefl/pooltool)

[![Discord](https://img.shields.io/badge/Discord-Join%20Server-7289da?style=for-the-badge&logo=discord&logoColor=white)](https://discord.gg/8Y8qUgzZhz)

# Description

*Pooltool* is a general purpose billiards simulator crafted specifically for science and engineering.

Its core design principles focus on speed, flexibility, and the ease of visualization and analysis. With an interactive 3D interface, a robust API, and extensive documentation, pooltool aims to be a systemic tool in billiards-related research. Continuously evolving through active maintenance and bolstered by a growing community, this vision for pooltool emphasizes not just its current capabilities, but also its potential for growth and adaptation within billiards simulation.

<img src="https://ekiefl.github.io/images/pooltool/pooltool-graphics/gallery_1.png" width="350" /><img src="https://ekiefl.github.io/images/pooltool/pooltool-graphics/gallery_2.png" width="350" /><img src="https://ekiefl.github.io/images/pooltool/pooltool-graphics/gallery_3.png" width="350" /><img src="https://ekiefl.github.io/images/pooltool/pooltool-graphics/gallery_5.png" width="350" /><img src="https://ekiefl.github.io/images/pooltool/pooltool-graphics/gallery_6.png" width="350" /><img src="https://ekiefl.github.io/images/pooltool/pooltool-graphics/gallery_7.png" width="350" />

# Installation

[Installation instructions](https://pooltool.readthedocs.io/en/latest/getting_started/install.html) are hosted on ReadtheDocs.

# Documentation

<a href="https://pooltool.readthedocs.io">
  <img src="https://github.com/ekiefl/pooltool/assets/8688665/744fcd33-2e6a-4b8d-a727-634bb8295124" width="250" alt="rtd">
</a>

All learning resources are found on *Read the Docs*.

Quick links:

1. [Homepage](https://pooltool.readthedocs.io/en/latest/index.html)
1. [Installation](https://pooltool.readthedocs.io/en/latest/getting_started/install.html)
1. [API Reference](https://pooltool.readthedocs.io/en/latest/autoapi/pooltool/index.html)

# Join the community

[![Discord](https://img.shields.io/badge/Discord-Join%20Server-7289da?style=for-the-badge&logo=discord&logoColor=white)](https://discord.gg/8Y8qUgzZhz)

If you want to ask questions, get help, or contribute to the codebase, please join the Discord and introduce yourself.

If the Discord link is expired, please make an issue in this repo.

# Contributing

See [CONTRIBUTING.md](CONTRIBUTING.md).

# Blog

I have blogged about many aspects of this project. Read the detailed account [here](https://ekiefl.github.io/projects/pooltool/).

# Citation

If you use Pooltool in your research/project/product, please cite it.

[![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.13119651.svg)](https://doi.org/10.5281/zenodo.13119651)

For your convenience, here are some common citation file formats:

- BibTeX: `wget https://zenodo.org/records/13119651/export/bibtex -O pooltool.bib`
- Citation File Format: `wget https://zenodo.org/records/13119651/export/cff -O pooltool.cff`
- DataCite XML: `wget https://zenodo.org/records/13119651/export/datacite-xml -O pooltool.xml`

