Linux/Mac | Windows | |
---|---|---|
master | ||
develop |
[bindir]/src/pfcrender lsys --it 5 --rules "F_+F_+F_+F_ F F+F+F-F-F + + - - _ _"
Actions are listed as positional arguments and executed in order. Names correspond to the plugins that get executed. Currently available:
- lsys : Generate a model string from an iterated Lindenmayer system. Uses stringsubst from the fxtlib
- stdout : Dump model string to console
- svg : Export model to a SVG file (experimental)
- pdf : Export model to a PDF file (experimental)
Plugins can have switches (syntax --optname optvalue) for configuration. Execute pfcrender -h for info on what is available. All switches are cached and re-read on the next execution so they have to be provided only on changes, except for the following
Special commandline switches, which are NEVER cached:
- --batch : Runs all supplied positional arguments and exits, without entering GUI mode
- --clear : Clears all cached options
- git clone --recursive https://github.com/garandor/pfcrender
- cd pfcrender/bin
- cmake ..
- make && ctest -V
- ./pfcrender options
- git clone --recursive https://github.com/garandor/pfcrender
- cd pfcrender/bin
- cmake .. -G<GENERATOR, e.g. "Visual Studio 14 2015 Win64"> -DCMAKE_PREFIX_PATH=<PATH_TO_TOOLCHAIN_SPECIFIC_QT_INSTALLATION, e.g. E:\Qt\Qt5.10.0\5.10.0\msvc2015_64>
- msbuild /p:configuration=Release ALL_BUILD.vcxproj
- cd Release
- pfcrender.exe options
Rationale and a writeup about this project can be found in my Bachelor's Thesis
The documentation for this project is hosted on GitHub Pages and re-generated by doxygen on every master branch commit build on Travis CI
- Qt5.8 or newer, as QSGRenderNode functionality is used
- QNanoPainter Currently used in the form of a private patched fork
- The fxtlib's stringsubst module is used for import of curves from L-Systems