/// \brief Processeur de message OSC /// /// Le processeur s'attend à ce que la command soit : /// 'position [i][i]?', 'position [f][f]?' ou 'taille [if]' /// /// \param command const string& La commande OSC /// \param m const ofxOscMessage& La(es) valeur(s) associée(s) à la commande /// \return void /// /// void Danseur::processOscCommand(const string& command, const ofxOscMessage& m) { if(isMatch(command, "position")) { if(validateOscSignature("([i][i]?)", m)) /**< Position absolue en pixel sur l'écran */ { if(m.getNumArgs() == 1) { ofVec2f::set(getArgAsIntUnchecked(m, 0)); /**< Défini la position avec X=Y */ } else { ofVec2f::set(getArgAsIntUnchecked(m, 0), getArgAsIntUnchecked(m, 1)); /**< Défini la position par les attributs OSC */ } } else if(validateOscSignature("([if][if]?)", m)) /**< Position proportionnelle à la taille de l'écran */ { if(m.getNumArgs() == 1) { ofVec2f::set(getArgAsFloatUnchecked(m, 0)); /**< Défini la position avec X=Y */ } else { ofVec2f::set(getArgAsFloatUnchecked(m, 0) * ofGetWidth(), getArgAsFloatUnchecked(m, 1) * ofGetHeight()); /**< Défini la position par les attributs OSC */ } } } else if(isMatch(command, "dessinable")) { if(validateOscSignature("([TFif])", m)) { Dessinable(getArgAsBoolUnchecked(m, 0)); } } else if(isMatch(command, "animable")) { if(validateOscSignature("([TFif])", m)) { Animable(getArgAsBoolUnchecked(m, 0)); } } else if(isMatch(command, "apparait")) { if(validateOscSignature("([TFif][if]?[if]?)", m)) { if(getArgAsBoolUnchecked(m, 0)) { if(m.getNumArgs() >= 2) { if(m.getNumArgs() == 3) { _alpha.setDuration(getArgAsFloatUnchecked(m, 2)); } apparait(getArgAsFloatUnchecked(m, 1)); } else { apparait(); } } else { if(m.getNumArgs() == 2) { _alpha.setDuration(getArgAsFloatUnchecked(m, 1)); } disparait(); } } } else if(isMatch(command, "disparait")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { disparait(); } } } else if(isMatch(command, "alpha")) { if(validateOscSignature("([if])", m)) { Alpha(getArgAsFloatUnchecked(m, 0)); } } else if(isMatch(command, "duration")) { if(validateOscSignature("([if])", m)) { _alpha.setDuration(getArgAsFloatUnchecked(m, 0)); } } else if(isMatch(command, "offset")) { if(validateOscSignature("([if])", m)) { offset(getArgAsIntUnchecked(m, 0)); } } else if(isMatch(command, "grand")) { if(validateOscSignature("([TFif])", m)) { bHugeText = getArgAsBoolUnchecked(m, 0); } } else if(isMatch(command, "afficherTemps")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { toBeDrawn |= DANSEUR_TIME; } else { toBeDrawn &= ~DANSEUR_TIME; } } } else if(isMatch(command, "afficherXPos")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { toBeDrawn |= DANSEUR_XPOS; } else { toBeDrawn &= ~DANSEUR_XPOS; } } } else if(isMatch(command, "afficherYPos")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { toBeDrawn |= DANSEUR_YPOS; } else { toBeDrawn &= ~DANSEUR_YPOS; } } } else if(isMatch(command, "afficherAngle")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { toBeDrawn |= DANSEUR_ANGLE; } else { toBeDrawn &= ~DANSEUR_ANGLE; } } } else if(isMatch(command, "afficherConstante")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { toBeDrawn |= DANSEUR_CONSTANTE; } else { toBeDrawn &= ~DANSEUR_CONSTANTE; } } } else if(isMatch(command, "afficherAll")) { if(validateOscSignature("([TFif])", m)) { if(getArgAsBoolUnchecked(m, 0)) { toBeDrawn = DANSEUR_ALL; } else { toBeDrawn = DANSEUR_TIME; } } } else if(isMatch(command, "stopCounter")) { if(validateOscSignature("([TFif])", m)) { bStopCounter = getArgAsBoolUnchecked(m, 0); } } else if(isMatch(command, "vitesseRotation")) { if(validateOscSignature("([if])", m)) { _coteAngle.setDuration(getArgAsFloatUnchecked(m, 0)); } } }
Fenetre::Fenetre(const char *titre, int large, int haut, int x, int y, int r, int v, int b) { // construction complète avec titre, taille, position et couleur de fond existe=FALSE; apparait(titre, large, haut, x, y, r, v, b); }