https://github.com/iohannrabeson/lindenmayer
https://github.com/iohannrabeson/lindenmayer
Last synced: 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/iohannrabeson/lindenmayer
- Owner: IohannRabeson
- Created: 2018-04-16T00:07:16.000Z (about 7 years ago)
- Default Branch: master
- Last Pushed: 2019-09-08T01:55:08.000Z (over 5 years ago)
- Last Synced: 2025-02-10T15:50:36.404Z (4 months ago)
- Language: C++
- Size: 5.61 MB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# [Lindenmayer](https://iohannrabeson.github.io/Lindenmayer/index.html) [](https://travis-ci.com/IohannRabeson/Lindenmayer)
Provide a tool with a dedicated language to describe and visualize Lindenmayer systems.
## Git and submodule
We use git submodules. Keep in mind to update submodules after
checkout and clone using `--recursive`.```
git clone --recursive [email protected]:IohannRabeson/Lindenmayer.git
```## Dependencies
- Qt 5 (>= 5.10)
- Java (>= 8)Somes libraries are embedded:
- [ANTLR](https://github.com/IohannRabeson/antlr4)
- [Google Test](https://github.com/google/googletest)
- Qool
Several libraries are embedded as submodules so don't forget to clone using the flag `--recursive`.
If you didn't use it, shame on you and type `git submodule init && git submodule update`.## Build
Require Qt 5 installed on your system.
Also a C++ compiler with sparse support for C++17 is required.
Qt directory should be added to `CMAKE_PREFIX_PATH`.```bash
cmake -G -DCMAKE_PREFIX_PATH="$(brew --prefix qt)"
```Tested generators:
- GNU Make
- Ninja
- Xcode
- MSVC 2015
### Windows with MSVC
On Windows don't forget to select a x64 generator, default or x86 will not works.
Also you will have some missing Qt DLL, so you have to update your `PATH` in Visual Studio:
Right click on the project "Lindenmayer" > Properties > Debugging > Environment then add a new entry like that:
`PATH=$(PATH);\bin`.### The extra build step to generate the L-Code parser
Because I'm using ANTLR, I added an extra build step where Antlr generates C++ code from a grammar defined by
the file core/private/language/LSystem.g4.### Documentation
https://iohannrabeson.github.io/Lindenmayer## CLion configurations
- Lindenmayer: The application
- Unit tests: The core unit tests
- Lindenmayer Auto Tests: starts Lindenmayer and try to generate each example in the directory passed as `--auto-test` parameter value.