Skip to content

Commit b2b5a30

Browse files
virtualritz17cupsofcoffeeAngelOnFira
authored
N22: libfive (#666)
Co-authored-by: Joe Clay <[email protected]> Co-authored-by: Forest Anderson <[email protected]>
1 parent a7cf975 commit b2b5a30

File tree

2 files changed

+26
-0
lines changed

2 files changed

+26
-0
lines changed

content/news/022/index.md

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -669,6 +669,32 @@ code and how you can help!
669669
[graphite-twitter]: https://twitter.com/GraphiteEditor
670670
[graphite-live-demo]: https://editor.graphite.design/
671671

672+
### [Libfive][libfive]
673+
674+
![CSG difference operation with a sphere and three cylinders](libfive.png)
675+
676+
`libfive` by [@virtualritz] is a safe, oxidized wrapper around
677+
[Matt Keeter][@mkeeter]'s [`libfive`][libfive-orig] – a "library and set of
678+
tools for solid modeling especially suited for parametric and procedural
679+
design".
680+
681+
`libfive` is based on [functional representation][f-rep] (f-rep). F-reps can be
682+
evaluated as 3D meshes with aribitrary precision.
683+
684+
One could e.g. use this for a compact definition of a game's levels and mesh
685+
them adaptively, on the fly, during loading. With a density suitable for the
686+
machine/GPU running the game.
687+
688+
F-reps can also be sliced into polylines/vectors or bitmaps – e.g. for deriving
689+
[level sets][level-set] or for SLA/DLP 3D printing.
690+
691+
[libfive]: https://github.com/virtualritz/libfive-rs/tree/master/libfive/
692+
[libfive-orig]: https://libfive.com/
693+
[@virtualritz]: https://github.com/virtualritz/
694+
[@mkeeter]: https://github.com/mkeeter/
695+
[f-rep]: https://en.wikipedia.org/wiki/Function_representation
696+
[level-set]: https://en.wikipedia.org/wiki/Level_set
697+
672698
## Popular Workgroup Issues in Github
673699

674700
<!-- Up to 10 links to interesting issues -->

content/news/022/libfive.png

308 KB
Loading

0 commit comments

Comments
 (0)