Skip to main content

A Python interface for POV-Ray (Persistence of Vision Raytracer)

Project description

fdray - Python Ray Tracing Interface for POV-Ray

PyPI Version Python Version Build Status Coverage Status

fdray is a Python library that provides a clean interface to POV-Ray, making it easy to create and render 3D scenes programmatically.

Features

  • Simple Scene Description: Express 3D scenes in clean, readable Python code
  • Pythonic API: Natural integration with Python's ecosystem
  • POV-Ray Integration: Seamless integration with a high-quality rendering engine
  • Jupyter Support: Interactive scene development in Jupyter notebooks

Installation

pip install fdray

Requires POV-Ray to be installed:

  • Linux: sudo apt-get install povray
  • macOS: brew install povray
  • Windows: Download from POV-Ray website

Quick Start

from fdray import Scene, Camera, Sphere, LightSource

# Create a simple scene
scene = Scene(
    Camera(30, 30),
    LightSource(0, "white"),
    Sphere((0, 0, 0), 1),
)

# Render the scene
image = scene.render(width=800, height=600)
image.save("sphere.png")

Documentation

For detailed documentation and examples, visit our documentation site.

Examples

Basic Shapes

scene = Scene(
    Camera(30, 30),
    LightSource(0, "white"),
    Sphere((0, 0, 0), 1),
    Box((-1, -1, -1), (1, 1, 1)),
    Cylinder((0, 0, 0), (0, 2, 0), 0.5),
)

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Acknowledgments

  • POV-Ray team for their excellent ray tracing engine
  • The Python community for inspiration and support

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fdray-0.1.3.tar.gz (2.0 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

fdray-0.1.3-py3-none-any.whl (24.5 kB view details)

Uploaded Python 3

File details

Details for the file fdray-0.1.3.tar.gz.

File metadata

  • Download URL: fdray-0.1.3.tar.gz
  • Upload date:
  • Size: 2.0 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.6.10

File hashes

Hashes for fdray-0.1.3.tar.gz
Algorithm Hash digest
SHA256 2486a3ab87f2053df0371533eeae15f56b7c32d3a17bf8a23cd41ac300de8d32
MD5 40bbdf93ac08d7a8976fed113326a4b8
BLAKE2b-256 8538984b90604bd6cccc87220f4b0773729b685a9c796cfa68f29a1386722cc5

See more details on using hashes here.

File details

Details for the file fdray-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: fdray-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 24.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: uv/0.6.10

File hashes

Hashes for fdray-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 cd2fe831b6ef18e11cf34b5a7a2b6c030226d36c6f85e9bc7f6f331d7b857081
MD5 768a93e490e8afe9d6184eda7a185050
BLAKE2b-256 4ff6003808a3130270f36c1650ed29b1d09059999591b288beadf26f63125c0c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page