The pure-guile viewer for LibFive, recovered source code from upstream that went down
Go to file
2022-11-03 20:47:08 +01:00
examples Initial commit of the recovered source code 2022-11-03 20:47:08 +01:00
inspekt3d Initial commit of the recovered source code 2022-11-03 20:47:08 +01:00
bootstrap Initial commit of the recovered source code 2022-11-03 20:47:08 +01:00
compile-env.in Initial commit of the recovered source code 2022-11-03 20:47:08 +01:00
configure.ac Initial commit of the recovered source code 2022-11-03 20:47:08 +01:00
CONTRIBUTORS Initial commit of the recovered source code 2022-11-03 20:47:08 +01:00
COPYING Initial commit of the recovered source code 2022-11-03 20:47:08 +01:00
git_clean_all Initial commit of the recovered source code 2022-11-03 20:47:08 +01:00
INSTALL Initial commit of the recovered source code 2022-11-03 20:47:08 +01:00
Makefile.am Initial commit of the recovered source code 2022-11-03 20:47:08 +01:00
README.md Initial commit of the recovered source code 2022-11-03 20:47:08 +01:00
turtle.png Initial commit of the recovered source code 2022-11-03 20:47:08 +01:00

Inspekt3d

Lightweight 3D viewer for Libfive written in Guile Scheme

The Inspekt3d viewer can be used interactively with a REPL (for example Geiser in Emacs).

Usage

Code to display a sphere:

(use-modules (inspekt3d viewer)
             (libfive shapes) (libfive kernel) (libfive vec)
             (libfive transforms) (libfive csg))

(make-viewer)
;;;        shape        bounds                        resolution
(set-shape (sphere 0.5) '((-1 . 1) (-1 . 1) (-1 . 1)) 10)

The make-viewer function creates a (singleton, for now) display window for the libfive shape in its own thread. The set-shape shape bounds resolution function can be used multiple times from the REPL to change the shape to be viewed.

This is a more complicated model:

Turtle Model

Turtle Model Source