- Caching the generated database to the device, allowing much faster startup afterwards.
- v4.4.1: Improve memory efficiency, and use greatly speed up statistics runtime.
- v4.4.2: Further improve memory efficiency.
- Fixed a bug in the original ReferenceFinder that could result in overlooked solutions for points on the boundary of the sheet.
- Introducing the scoring system that replaces references that were already found with better equivalences found later. This will make the initialization slightly slower, but will generate much better folding sequences that honors the priority settings.
- Allowing customizing the priorities of the 7 axioms.
- If a line is later only used to make one intersection, we render it as a pinch instead of a whole line.
- v4.1.1: Fix bug in label rendering.
- v4.1.2: Reduce the likelihood of drawing very small arrows.
- v4.1.3: Fix several minor bugs.
- v4.1.4: Refactoring and improve initialization performance.
- v4.1.5: Making sure that original references are place at the beginning of the sequence.
Version 4.0.3 made some significant initialization performance improvements (about 40% faster) by means of the following:
- Using
std::unordered_map
instead ofstd::map
. - Used only one map (instead of per rank) to check for duplications, and then use vectors for the per rank map and the buffer.
- Fixed a bug that results in v4.0.1 overlooking some solutions related to axiom O5 (See also PR#1).
- Cleaned up unused code.
- Fully migrated to use
JsonObject
andJsonArray
classes to generate output.
- The starting point of ReferenceFinder for web.
- For the most part, it is the same as Lang's original source code (with some refactoring).
I only did some minor modifications to make it interop with JavaScript.Most notably, I have a new
JsonStreamDgmr
class replacing the originalVerbalStreamDgmr
.