Generalized Pythagoras Tree
Created by: teards
Full implementation of the Generalized Pythagoras Tree, implemented within the visualization framework. This mean it can be called simply using draw(Node, OpenGL)
. The rendering is done recursively and most of the code was implementing and figuring out the correct formulas. Hopefully the comments in the code help explain some of the steps.
The pull request for some reason shows that the documentaton.md has changes, but I did not change anything within this file. I suspect that it is an artifact of solving the merge conflicts, however when comparing the file locally to the one currently in the develop branch there are no differences to be found. If possible somebody else should double check this.
If you have any questions please let me know.
To-do:
- #61 (closed) Implement settings
-
#62 (closed) Optimize code, currently there are a lot of
Math.sin
andMath.cos
calls. There are also some other simple optimizations which I do not believe cost a lot of computational time. If possible I would prefer to tackle some of these at the same time.
Known bugs:
- #60 (closed) Changing the weightHeight value currently results in a broken tree. This is probably not too difficult to fix, however I'd prefer to fix it when implementing the settings since it probably will have some overlap with that regardless.
Screenshots: (A,B,C): ((A,D),(C,B)): newick_example_phyloviz.nwk: