Skip to content

Garandor/pfcrender

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PFCRender v1.0.1

Linux/Mac Windows
master Linux Build Status Windows Build status
develop Linux Build Status Windows Build Status

Coverage Status

Commandline interface (Curve generation via CLI only atm)

[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

Building on Linux/Apple

Building on Windows (e.g. VS 2015 64bit Toolchain)

  • 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

Documentation

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

Dependencies