From fb68eed64f548d090eb550047fd0d898e4e033fc Mon Sep 17 00:00:00 2001 From: Tim Redfern Date: Sun, 8 Jul 2018 12:22:06 +0100 Subject: add altered AChaoslib --- gui/libs/ofxAChaosLib/src/AChaosHenon.h | 52 +++++++++++++++++++++++++++++++++ 1 file changed, 52 insertions(+) create mode 100644 gui/libs/ofxAChaosLib/src/AChaosHenon.h (limited to 'gui/libs/ofxAChaosLib/src/AChaosHenon.h') diff --git a/gui/libs/ofxAChaosLib/src/AChaosHenon.h b/gui/libs/ofxAChaosLib/src/AChaosHenon.h new file mode 100644 index 0000000..cd42d8d --- /dev/null +++ b/gui/libs/ofxAChaosLib/src/AChaosHenon.h @@ -0,0 +1,52 @@ +/* + 32/64 bits A-Chaos Lib in openFrameworks + (c) s373.net/x 2004, 2012, 2015 + http://s373.net/code/A-Chaos-Lib/A-Chaos.html + programmed by Andre Sier, revised 2015 + License: MIT +*/ +#pragma once +#include "AChaosBase.h" + +class AChaosHenon : public AChaosBase { +public: + + REAL a, b, nx, ny; + + vector param_labels={"a","b","",""}; + + AChaosHenon(){} + ~AChaosHenon(){} + + virtual void setup(REAL * params = NULL){ + AChaosBase::init(params, 4,2); + if(params==NULL){ + //init + a = 1.4f; + b = 0.3f; + nx = 1.0f; + ny = 1.0f; + + REAL p[4] = {a,b,nx,ny}; + set(p); + } else { + set(params); + } + } + + void reset(){ + a = iv[0]; + b = iv[1]; + nx = iv[2]; + ny = iv[3]; + } + + void calc(){ + // henon + nx = (ny + 1) - (a * (nx*nx)); + ny = b * nx; + + ov[0] = nx; + ov[1] = ny; + } +}; \ No newline at end of file -- cgit v1.2.3