forked from jdpipe/tracer
-
Notifications
You must be signed in to change notification settings - Fork 8
Statistical ray-tracing in Python/SciPy
License
casselineau/Tracer
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Tracer - a Pythonic general ray-tracing package. About ----- Tracer is a ray-tracing engine and suite of tools focused on radiative heat transfer and optical simulations. The motivation for writing tracer: * Current solutions lack programmability and extensibility * Even if you pay megabucks * De-facto standard tools of the trade are non-free, so bugfixing etc. depends on someone else, * Usability in the solution closest to our budget is poor, and no Linux port is available. Tracer is written in Python, using NumPy and SciPy for the math side of things. Status ------ The code is advanced enough to produce research. It is currently a programming library. NO GUI yet. DISCLAIMER: The documentation and installation is outdated, but he project is active! Doubts, need advice?: [email protected] Current capablilities: - Flat, parabolic, spherical, conical and quadric surfaces - Specular and diffuse reflections with surface slope error - BDRF - Transparency and attenuation - A bunch of results analysis tools - Pillbox and Buie sunshape implementations - Radiosity sytem solver for thermal emissions - Basic parallel processing - Kd-Tree acceleration structure - Spectral simulations Open-source python magic happens: if you want to do something, you can do it. Installation ------------ LINUX: Tested under Ubuntu 22 (running as WSL) 1) Prepare Linux: sudo apt update && sudo apt upgrade 2) Setup python environment 2.1) sudo apt install python3-venv 2.2) Create virtual environment: python3 -m venv .venv 2.3) Activate virtual environment: source ./.venv/bin/activate 3) (Optional) Install visualisation-dependencies (not required if running headless) 3.1) Install build dependencies: sudo apt install build-essential cmake 3.2) Install coin3d dependencies: sudo apt install libboost-all-dev xorg-dev libglu1-mesa-dev 3.3) Install coin3d 3.3.1) git clone --recurse-submodules https://github.com/coin3d/coin coin 3.3.2) sudo cmake -Hcoin -Bcoin_build -DCMAKE_INSTALL_PREFIX=/usr/local -DCMAKE_BUILD_TYPE=Release -DCOIN_BUILD_DOCUMENTATION=OFF 3.3.3) sudo cmake --build coin_build --target all --config Release -- -j4 3.3.4) sudo cmake --build coin_build --target install --config Release -- -j4 3.4) Install pivy: sudo apt install python3-pivy 3.5) Allow access to global pivy package: 3.5.1) nano ./.venv/pyvenv.cfg 3.5.2) Change: 'include-system-site-packages = false' to 'include-system-site-packages = true' 4) Clone Tracer repository git clone https://github.com/casselineau/Tracer 5) Install python requirements from Tracer 5.1) Headless: pip install -r requirements_headless.txt 5.2) With visualisation: pip install -r requirements.txt WINDOWS: To run on MS Windows: - Follow steps on this link to run a Linux distribution on windows: https://docs.microsoft.com/en-us/windows/wsl/install-win10 - Download Tracer packages from here - Download an X Server for windows in order to render the images: https://sourceforge.net/projects/xming/ - Run the X Server Client - Run Tracer ------------ Doubts, need advice?: [email protected]
About
Statistical ray-tracing in Python/SciPy
Resources
License
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- Python 96.7%
- HTML 2.7%
- Other 0.6%