rt300@22: #pragma once rt300@22: rt300@22: #include "ofMain.h" rt300@22: #include rt300@22: rt300@22: rt300@22: rt300@22: template rt300@22: vector makeVector(T a1, T a2,T a3,T a4,T a5,T a6, T a7, T a8){ rt300@22: rt300@22: vector vec; rt300@22: vec.push_back(a1); rt300@22: vec.push_back(a2); rt300@22: vec.push_back(a3); rt300@22: vec.push_back(a4); rt300@22: vec.push_back(a5); rt300@22: vec.push_back(a6); rt300@22: vec.push_back(a7); rt300@22: vec.push_back(a8); rt300@22: return vec; rt300@22: } rt300@22: rt300@22: rt300@22: //------------------------------------------------------------- rt300@22: //------------------------------------------------------------- rt300@22: template rt300@22: class randomiseCCVal : public unary_function{ rt300@22: public: rt300@22: T operator()(T a){ rt300@22: return ofRandom(0,127); rt300@22: rt300@22: }; rt300@22: }; rt300@22: template rt300@22: class randomiseCCValIf : public binary_function{ rt300@22: public: rt300@22: T operator()(T a, bool doit ){ rt300@22: if (doit) rt300@22: return ofRandom(0,127); rt300@22: return a; rt300@22: rt300@22: }; rt300@22: }; rt300@22: template rt300@22: class printThing : public unary_function{ rt300@22: public: rt300@22: void operator()(T a){ rt300@22: cout << a << endl; rt300@22: rt300@22: }; rt300@22: }; rt300@22: rt300@22: template rt300@22: class difference : public binary_function{ rt300@22: public: rt300@22: T operator()(T a, T b ){ rt300@22: return abs(a - b); rt300@22: }; rt300@22: }; rt300@22: template rt300@22: class squared : public unary_function{ rt300@22: public: rt300@22: T operator()(T a ){ rt300@22: return a*a; rt300@22: }; rt300@22: }; rt300@34: rt300@34: float euclideanDistance(vector v1, vector v2);