class parameter { String help_text = "Hilfe text"; String short_text = "Kurzer text"; int modus = 1; float value_1 = 2; float value_2 = 2; float value_3 = 0.1; float value_4 = 5; float value; final static int CONSTANT = 1; final static int INREASE = 2; final static int ALTERNATION = 3; final static int SINUS = 4; final static int MOUSEX = 5; final static int MOUSEY = 6; //## neuen konstanten parameter erstellen ##///////////////// parameter( String short_text, String help_text, int modus, float value_1) { this.help_text = help_text; this.short_text = short_text; this.modus = modus; this.value = value_1; this.value_1 = value_1; } //## neuen parameter erstellen, alle einstellungsmöglichkeiten gegeben##///////////////// parameter(String short_text, String help_text, int modus, float value_1, float value_2, float value_3, float value_4) { this.help_text = help_text; this.short_text = short_text; this.modus = modus; this.value = value_1; this.value_1 = value_1; this.value_2 = value_2; this.value_3 = value_3; this.value_4 = value_4; } //## parameter neu berechnen##///////////////// void calculate() { switch (modus) { case CONSTANT: // value_1 ausgeben value = value_1; break; case INREASE: // value_1 dazuaddieren value = value + value_1; break; case ALTERNATION: // value_1:startpunkt value_2:endpunkt value3:schritte if (value_4 != 0.0001) { value = value + value_3; if (value > value_2) value_4 = 0.0001; } else { value = value - value_3; if (value < value_1) value_4 = 0; } //value = value_1; break; case SINUS: // value_1: geschwindigkeit value_2:faktor vor sinus value_3:offset value_4: counter value_4 = value_4 + value_1; value = value_2 * sin(value_4 + value_3); break; case MOUSEX: // value_1: faktor value = (value_1 * mouseX) - value_2; break; case MOUSEY: // value_1: faktor value = (value_1 * mouseY) - value_2; break; } } //## parameter neu berechnen und gleich ausgeben##///////////////// float calculate_and_return() { calculate(); return value; } String modus_name() { switch (modus) { case CONSTANT: // value_1 ausgeben default: return ("constant"); case INREASE: // value_1 dazuaddieren return ("increase"); case ALTERNATION: // value_1:startpunkt value_2:endpunkt value3:schritte return ("alternation"); case SINUS: // value_1: geschwindigkeit value_2:faktor vor sinus value_3:offset value_4: counter return ("sinus"); case MOUSEX: // value_1: faktor return ("mousex"); case MOUSEY: // value_1: faktor return ("mousey"); } } String value_name(int i) { switch (modus) { case CONSTANT: // value_1 ausgeben default: if (i == 1) return("constant"); else return("nu"); case INREASE: // value_1 dazuaddieren if (i == 1) return("value to add"); else return("nu"); case ALTERNATION: // value_1:startpunkt value_2:endpunkt value3:schritte if (i == 1) return("startingpoint"); if (i == 2) return("endpoint"); if (i == 3) return("stepvalue"); else return ("nu"); case SINUS: // value_1: geschwindigkeit value_2:faktor vor sinus value_3:offset value_4: counter if (i == 1) return("speed"); if (i == 2) return("factor"); if (i == 3) return("offset"); else return ("nu"); case MOUSEX: // value_1: faktor if (i == 1) return("factor"); if (i == 2) return("offset"); else return("nu"); case MOUSEY: // value_1: faktor if (i == 1) return("factor"); if (i == 2) return("offset"); else return("nu"); } } Float value_value(int i) { switch (i) { case 1: // value_1 ausgeben default: return(value_1); case 2: // value_1 dazuaddieren return(value_2); case 3: // value_1:startpunkt value_2:endpunkt value3:schritte return(value_3); case 4: // value_1: geschwindigkeit value_2:faktor vor sinus value_3:offset value_4: counter return(value_4); } } void new_value(int i, float tnewvalue) { //println("new value" + i + " " + tnewvalue); switch (i) { case 1: // value_1 ausgeben value_1 = tnewvalue; break; case 2: // value_1 dazuaddieren value_2 = tnewvalue; break; case 3: // value_1:startpunkt value_2:endpunkt value3:schritte value_3 = tnewvalue; break; case 4: // value_1: geschwindigkeit value_2:faktor vor sinus value_3:offset value_4: counter value_4 = tnewvalue; break; } } }