コード例 #1
0
ファイル: ofxMtPhoto.cpp プロジェクト: Diex/MT_USB
void ofxMtPhoto::tuioRemoved(ofxTuioCursor &tuioCursor){
	ofVec2f loc = ofVec2f(tuioCursor.getX()*ofGetWidth(),tuioCursor.getY()*ofGetHeight());
	
	for (int i = 0; i < cursorsOnBorder.size(); i++ )
		if (cursorsOnBorder[i].idN == tuioCursor.getSessionId())
			cursorsOnBorder.erase(cursorsOnBorder.begin()+i);
}
コード例 #2
0
ファイル: testApp.cpp プロジェクト: meganeHunter/myApps
void testApp::tuioAdded(ofxTuioCursor& tuioCursor)
{
    log  = " new cursor: ";
	log += ofToString(tuioCursor.getFingerId());
	log += " X: " + ofToString(tuioCursor.getX());
	log += " Y: " + ofToString(tuioCursor.getY());
}
コード例 #3
0
ファイル: testApp.cpp プロジェクト: meganeHunter/myApps
void testApp::tuioUpdated(ofxTuioCursor& tuioCursor)
{
    log =  " cursor updated: ";
	log += ofToString(tuioCursor.getFingerId());
	log += " X: " + ofToString(tuioCursor.getX());
	log += " Y: " + ofToString(tuioCursor.getY());
}
コード例 #4
0
void FractalTreeApp::tuioUpdated(ofxTuioCursor &tuioCursor){
                ofPoint addedCursor(tuioCursor.getX()*ofGetWidth(), tuioCursor.getY()*ofGetHeight());
            addedCursor = toLocalAxisSystem(addedCursor);
            IC = addedCursor;


}
コード例 #5
0
ファイル: ofApp.cpp プロジェクト: Echolaitoc/PukTest
void ofApp::tuioAdded(ofxTuioCursor &tuioCursor)
{
    tuioPoints.push_back(tuioContainer());
    tuioPoints.back().sid = tuioCursor.getSessionId();
    tuioPoints.back().location.set(tuioCursor.getX(), tuioCursor.getY());
    tuioPoints.back().setLastLocation();
}
コード例 #6
0
ファイル: ofApp.cpp プロジェクト: TheConstitute/Raybreak
//--------------------------------------------------------------
void ofApp::tuioUpdated(ofxTuioCursor &cursor){
    Finger& f = finger[cursor.getFingerId()];
    
    ofPoint loc = ofPoint(cursor.getX()*ofGetWidth(),cursor.getY()*ofGetHeight());
    
    // save the active value because it will be overwritten after the update
    bool wasActive = f.isActive();

    f.update(loc);
    
    // make a new ray if the speed is high enough, the finger was active and if the finger hasn't triggered anything lately
    if(f.getDirection().length() > triggerSpeed && wasActive && f.getTimeSinceLastTriggered() > triggerTimeout){
        f.triggered();
        ParticleRay r = ParticleRay(f.getPosition(), f.getDirection().scale(particleSpeed));
        
        // check if we need to create a new ray or if an old one can be reused
        // this could very well be coded more efficiently...
        int i = 0;
        for(i = 0; i< rays.size(); i++){
            if(rays[i].isDead()){
                break;
            }
        }
        if(i < rays.size()){
            rays[i] = r;
        } else{
            rays.push_back(r);
        }
    }
    
//    ledFrame.stopPulsing();
    ledFrame.updateLastPointsTime();
}
コード例 #7
0
ファイル: menu_interaccion.cpp プロジェクト: serman/muncyt
ofPoint menu::transf_PosTUIO(ofxTuioCursor & tuioCursor) {

    int mx = W_WIDTH*tuioCursor.getX() + (ofGetScreenWidth()-W_WIDTH)/2.0;
    int my = W_HEIGHT*tuioCursor.getY();
//	ofPoint loc = ofPoint(mx,my);

	return ofPoint(mx,my);
}
コード例 #8
0
ファイル: testApp.cpp プロジェクト: mactkg/ideatable
void testApp::tuioUpdated(ofxTuioCursor & tuioCursor) {
    //TODO add linemake function and update object
#ifdef DEBUG
    log="Cursor Updated: "+ofToString(tuioCursor.getFingerId())+
        " X: "+ofToString(tuioCursor.getX())+
        " Y: "+ofToString(tuioCursor.getY());
    ofLog()<<log;
#endif
}
コード例 #9
0
ファイル: testApp.cpp プロジェクト: mactkg/ideatable
//call when finger is moved
void testApp::tuioAdded(ofxTuioCursor & tuioCursor) {
    //TODO add function that runs when finger added
#ifdef DEBUG
    log="New Cursor: "+ofToString(tuioCursor.getFingerId())+
        " X: "+ofToString(tuioCursor.getX())+
        " Y: "+ofToString(tuioCursor.getY());
    ofLog()<<log;
#endif
}
コード例 #10
0
void FractalTreeApp::tuioAdded(ofxTuioCursor &tuioCursor){
	//TODO: Check Menu Items
            ofPoint addedCursor(tuioCursor.getX()*ofGetWidth(), tuioCursor.getY()*ofGetHeight());
            addedCursor = toLocalAxisSystem(addedCursor);




}
コード例 #11
0
ファイル: ofApp.cpp プロジェクト: Echolaitoc/PukTest
void ofApp::tuioUpdated(ofxTuioCursor &tuioCursor)
{
    //    ofPoint loc = ofPoint(tuioCursor.getX()*ofGetWidth(),tuioCursor.getY()*ofGetHeight());
    int cursorIndex = getTuioPointIndex(tuioCursor.getSessionId());
    if (cursorIndex < 0)
    {
        return;
    }
    tuioPoints.at(cursorIndex).setLastLocation();
    tuioPoints.at(cursorIndex).location.set(tuioCursor.getX(), tuioCursor.getY());
}
コード例 #12
0
ファイル: menu_interaccion.cpp プロジェクト: serman/muncyt
void menu::tuioUpdated(ofxTuioCursor &tuioCursor){
	//    int mx = W_WIDTH*tuioCursor.getX();
	////    int mx = W_WIDTH*(tuioCursor.getX()+0.5);
	//    int my = W_HEIGHT*tuioCursor.getY();
	//	ofPoint loc = ofPoint(mx,my);
	
	ofPoint loc = transf_PosTUIO(tuioCursor);
//	cout << "Point n" << tuioCursor.getSessionId() << " updated at " << loc << endl;
    
    hands.notifySlide(loc.x, loc.y, tuioCursor.getSessionId(),tuioCursor.getMotionAccel());
 //   touchElements.notifySlide(loc.x, loc.y,tuioCursor.getSessionId(),tuioCursor.getMotionAccel());
}
コード例 #13
0
ファイル: testApp.cpp プロジェクト: mactkg/ideatable
//call when finger is removed from Ideatable
void testApp::tuioRemoved(ofxTuioCursor & tuioCursor) {
    //remove line which is related to the finger
    for(line_itr=lines.begin(); line_itr!=lines.end(); line_itr++) {
        if((*line_itr).getCursorID()==tuioCursor.getFingerId())
            lines.erase(line_itr);
    }
    prevStatus.erase(tuioCursor.getFingerId());
#ifdef DEBUG
    log="Cursor Removed: "+ofToString(tuioCursor.getFingerId())+
        " X: "+ofToString(tuioCursor.getX())+
        " Y: "+ofToString(tuioCursor.getY());
    ofLog()<<log;
#endif
}
コード例 #14
0
void ofxLayout::tuioUpdated(ofxTuioCursor &tuioCursor)
{
    if(tuioCursor.getFingerId() == 0){
        if (touchReady){
            ofPoint loc = ofPoint(tuioCursor.getX()*ofGetWidth(),tuioCursor.getY()*ofGetHeight());
            mouseDraggedPt = ofPoint(loc)*mouseTransformation;
            ofxLayoutElement* mouseDraggedElement = hittest(mouseDraggedPt);
            mouseDraggedElement->fingerDragged(loc);
            string evtStr = "mouseDragged";
            ofNotifyEvent(mouseDraggedEvt, evtStr, mouseDraggedElement);
            ofNotifyEvent(tuioCursorUpdatedEvt, tuioCursor, mouseDraggedElement);
        }
    }
}
コード例 #15
0
ファイル: electromagnetica.cpp プロジェクト: serman/muncyt
void electromagnetica::tuioRemoved(ofxTuioCursor &tuioCursor){
	ofPoint loc = ofPoint(tuioCursor.getX()*W_WIDTH,tuioCursor.getY()*W_HEIGHT);
    //cout << "Point n" << tuioCursor.getSessionId() << " remove at " << loc << endl;
    /*
     if(id_slider1==tuioCursor.getSessionId()) id_slider1=NULL;
     if(id_jumpingRect==tuioCursor.getSessionId()) id_jumpingRect=NULL;
     if(id_moverect==tuioCursor.getSessionId()) id_moverect=NULL;*/
    
    
    hands.removeObjectByTuioID(tuioCursor.getSessionId() );
    wavesm.touchUp(tuioCursor.getSessionId());
    cheapComm::getInstance()->sendAudio0("/audio/electromagnetism/hand_off_event");
    
}
コード例 #16
0
ファイル: TestApp.cpp プロジェクト: Limulo/prototipo3
// FINGER ADDED ////////////////////////////////////////////////////////
void testApp::cursorAdded(ofxTuioCursor & tuioCursor)
{
	int finger_id = tuioCursor.getFingerId();
	pos.x = wQuadro * tuioCursor.getX();
	pos.y = hQuadro * tuioCursor.getY();
	
	dito = new Finger(finger_id);
	dito_list.push_back(dito);
	dito_list.back()->setup(&pos, blue);
	dito_list.back()->added();
	
	
	
	
}
コード例 #17
0
ファイル: testApp.cpp プロジェクト: serman/muncyt_tests
void testApp::tuioRemoved(ofxTuioCursor &tuioCursor){
        ofLog()<< "tuioRemoved" << endl;
	ofPoint loc = ofPoint(tuioCursor.getX()*W_WIDTH,tuioCursor.getY()*W_HEIGHT);
    //cout << "Point n" << tuioCursor.getSessionId() << " remove at " << loc << endl;
   /*
    if(id_slider1==tuioCursor.getSessionId()) id_slider1=NULL;
    if(id_jumpingRect==tuioCursor.getSessionId()) id_jumpingRect=NULL;
    if(id_moverect==tuioCursor.getSessionId()) id_moverect=NULL;*/

    
    touchElements.removeObjectByTuioID(tuioCursor.getSessionId() );
    
    touchElements.notifyTouchUp( tuioCursor.getSessionId() );

}
コード例 #18
0
ファイル: testApp.cpp プロジェクト: serman/muncyt_tests
void testApp::tuioAdded(ofxTuioCursor &tuioCursor){
    ofLog()<< "tuioAdded" << endl;
	ofPoint loc = ofPoint(tuioCursor.getX()*W_WIDTH,tuioCursor.getY()*W_HEIGHT);
	cout << "Point n" << tuioCursor.getSessionId() << " add at " << tuioCursor.getX() << " " << tuioCursor.getY()<< endl;

    
   // o1.touch(loc.x, loc.y,tuioCursor.getSessionId());
   // h1.touch(loc.x, loc.y,tuioCursor.getSessionId());

    handShadow *h1 = new handShadow();
    h1->setup();
    touchElements.addObject(*h1);
    
    touchElements.notifyTouch(loc.x, loc.y,tuioCursor.getSessionId());
}
コード例 #19
0
void ofxLayout::tuioRemoved(ofxTuioCursor &tuioCursor)
{
    if(tuioCursor.getFingerId() == 0)
    {
        ofPoint loc = ofPoint(tuioCursor.getX()*ofGetWidth(),tuioCursor.getY()*ofGetHeight());
        mouseDraggedPt.set(ofPoint());
        mouseReleasedPt = loc*mouseTransformation;
        ofxLayoutElement* mouseReleasedElement = hittest(mouseReleasedPt);
        mouseReleasedElement->fingerReleased(loc);
        string evtStr = "mouseReleased";
        ofNotifyEvent(mouseReleasedEvt, evtStr, mouseReleasedElement);
        ofNotifyEvent(tuioCursorRemovedEvt, tuioCursor, mouseReleasedElement);
        
        touchReadyCheck();
    }
}
コード例 #20
0
ファイル: gFrameApp.cpp プロジェクト: der-rob/gFrame
//--------------------------------------------------------------
void gFrameApp::tuioRemoved(ofxTuioCursor & cursor)
{
    if(input_tuio)
    {
        finger_positions[cursor.getFingerId()] = ofVec2f(0, 0);
    }
}
コード例 #21
0
ファイル: TestApp.cpp プロジェクト: Limulo/prototipo3
// FINGER REMOVED //////////////////////////////////////////////////////
void testApp::cursorRemoved(ofxTuioCursor & tuioCursor)
{
	int finger_id = tuioCursor.getFingerId();
	pos.x = wQuadro * tuioCursor.getX();
	pos.y = hQuadro * tuioCursor.getY();
	
	list<Finger*>::iterator it;
	for (it=dito_list.begin(); it !=dito_list.end(); ++it) 
	{
		if ( (*it)->get_finger_id() == finger_id) 
		{
			(*it)->removed();
			break;
		}
	}
	dito_list.erase(it);
}
コード例 #22
0
ファイル: menu_interaccion.cpp プロジェクト: serman/muncyt
void menu::tuioAdded(ofxTuioCursor &tuioCursor){
//    int mx = W_WIDTH*tuioCursor.getX();
////    int mx = W_WIDTH*(tuioCursor.getX()+0.5);
//    int my = W_HEIGHT*tuioCursor.getY();
//	ofPoint loc = ofPoint(mx,my);

	ofPoint loc = transf_PosTUIO(tuioCursor);

	
	cout << "Point n" << tuioCursor.getSessionId() << " add at " << loc << endl;
    
    handShadow *h1 = new handShadow();
    h1->setup();
    hands.addObject(*h1);
    hands.notifyTouch(loc.x, loc.y,tuioCursor.getSessionId());
   // touchElements.notifyTouch(loc.x, loc.y,tuioCursor.getSessionId());
}
コード例 #23
0
ファイル: ofApp.cpp プロジェクト: Echolaitoc/PukTest
void ofApp::tuioRemoved(ofxTuioCursor &tuioCursor)
{
    int cursorIndex = getTuioPointIndex(tuioCursor.getSessionId());
    if (cursorIndex >= 0)
    {
        tuioPoints.erase(tuioPoints.begin() + cursorIndex);
    }
}
コード例 #24
0
ファイル: gFrameApp.cpp プロジェクト: der-rob/gFrame
//--------------------------------------------------------------
void gFrameApp::tuioUpdated(ofxTuioCursor &cursor)
{
    if(input_tuio)
    {
        GPoint the_point;
        float x,y;
        x = cursor.getX();
        y = cursor.getY();
        
        the_point.setLocation(ofVec2f(x, y));
        the_point.setId(cursor.getFingerId());
        the_point.setStrokeId(cursor.getSessionId());
        the_point.setColor(localBrushColor);
        the_point.setType(TUIO);
        the_point.setStyle(current_style);
        stroke_list.add(the_point);
        
        finger_positions[cursor.getFingerId()] = ofVec2f(x, y);
        //flowfield
        simple_flow.inputUpdate(x, y, cursor.getFingerId());
        simple_flow_2.inputUpdate(x, y, cursor.getFingerId());
        
        ledFrame.stopPulsing();
        ledFrame.updateLastPointsTime();
    }
}
コード例 #25
0
ファイル: menu_interaccion.cpp プロジェクト: serman/muncyt
void menu::tuioRemoved(ofxTuioCursor &tuioCursor){
	//    int mx = W_WIDTH*tuioCursor.getX();
	////    int mx = W_WIDTH*(tuioCursor.getX()+0.5);
	//    int my = W_HEIGHT*tuioCursor.getY();
	//	ofPoint loc = ofPoint(mx,my);
	
	ofPoint loc = transf_PosTUIO(tuioCursor);
    cout << "Point n" << tuioCursor.getSessionId() << " remove at " << loc << endl;
    /*
     if(id_slider1==tuioCursor.getSessionId()) id_slider1=NULL;
     if(id_jumpingRect==tuioCursor.getSessionId()) id_jumpingRect=NULL;
     if(id_moverect==tuioCursor.getSessionId()) id_moverect=NULL;
	 */
    
	//    
    hands.removeObjectByTuioID(tuioCursor.getSessionId() );
   // touchElements.notifyTouchUp( tuioCursor.getSessionId() );
    
}
コード例 #26
0
ファイル: testApp.cpp プロジェクト: serman/muncyt_tests
void testApp::tuioUpdated(ofxTuioCursor &tuioCursor){
        ofLog()<< "tuioUpdated" << endl;
    int mx = W_WIDTH*tuioCursor.getX();
    int my =    W_HEIGHT*tuioCursor.getY();
	ofPoint loc = ofPoint(tuioCursor.getX()*W_WIDTH,tuioCursor.getY()*W_HEIGHT);
	//cout << "Point n" << tuioCursor.getSessionId() << " updated at " << loc << endl;
    

    //o1.slide(loc.x, loc.y,tuioCursor.getSessionId(),tuioCursor.getMotionAccel());
   // h1.slide(loc.x, loc.y,tuioCursor.getSessionId(),tuioCursor.getMotionAccel());
    touchElements.notifySlide(loc.x, loc.y,tuioCursor.getSessionId(),tuioCursor.getMotionAccel());
    puntoX=tuioCursor.getX();
    puntoY=tuioCursor.getY();
    cout << tuioCursor.getX() << endl;
       
}
コード例 #27
0
ファイル: electromagnetica.cpp プロジェクト: serman/muncyt
void electromagnetica::tuioAdded(ofxTuioCursor &tuioCursor){
	ofPoint loc = ofPoint(tuioCursor.getX()*W_WIDTH,tuioCursor.getY()*W_HEIGHT);
	//cout << "Point n" << tuioCursor.getSessionId() << " add at " << loc << endl;
    
    
    // o1.touch(loc.x, loc.y,tuioCursor.getSessionId());
    // h1.touch(loc.x, loc.y,tuioCursor.getSessionId());
    
    noiseShadow *h1 = new noiseShadow();
    h1->setup();
    //h1->setColor(colours[(int)( tuioCursor.getSessionId() % colours.size()-1) ]);
   // h1->setColor(ofColor::black);
    hands.addObject(*h1);
    hands.notifyTouch(loc.x, loc.y,tuioCursor.getSessionId());
    //mwave.addPoint(loc.x,loc.y,tuioCursor.getSessionId());
    wavesm.touch(loc.x, loc.y,tuioCursor.getSessionId());
      //  updateMagneticField(100,loc.x,loc.y);

    cheapComm::getInstance()->sendAudio0("/audio/electromagnetism/hand_on_event");
}
コード例 #28
0
ファイル: ofxMtPhoto.cpp プロジェクト: Diex/MT_USB
void ofxMtPhoto::tuioAdded(ofxTuioCursor &tuioCursor){
	ofVec2f loc = ofVec2f(tuioCursor.getX()*ofGetWidth(),tuioCursor.getY()*ofGetHeight());
	
	if (isOver(loc)){
		tCursor c;
		c.idN = tuioCursor.getSessionId();
		c.loc = loc;
		
		// PRIMER dedo sobre la imagen
		if (cursorsOnBorder.size() == 0){	
			cursorsOnBorder.push_back(c);
			
		} // SEGUNDO dedo sobre la imagen
		else if (cursorsOnBorder.size() == 1){
			cursorsOnBorder.push_back(c);
			
			oldLoc[0] = cursorsOnBorder[0].loc;
			oldLoc[1] = cursorsOnBorder[1].loc;
		}
		
	}
}
コード例 #29
0
ファイル: electromagnetica.cpp プロジェクト: serman/muncyt
void electromagnetica::tuioUpdated(ofxTuioCursor &tuioCursor){
    int mx = W_WIDTH*tuioCursor.getX();
    int my = W_HEIGHT*tuioCursor.getY();

    hands.notifySlide(mx, my,tuioCursor.getSessionId(),tuioCursor.getMotionAccel());
    wavesm.slide(mx,  my,tuioCursor.getSessionId(),tuioCursor.getMotionAccel());
  //  updateMagneticField(100,mx,my);
    
}
コード例 #30
0
ファイル: TestApp.cpp プロジェクト: Limulo/prototipo3
// FINGER UPDATED //////////////////////////////////////////////////////
void testApp::cursorUpdated(ofxTuioCursor & tuioCursor)
{
	int finger_id = tuioCursor.getFingerId();
	pos.x = wFbo * tuioCursor.getX();
	pos.y = hFbo * tuioCursor.getY();
	int x_speed = tuioCursor.getXSpeed();
	int y_speed = tuioCursor.getYSpeed();
	int motion_speed = tuioCursor.getMotionSpeed();
	int motion_accel = tuioCursor.getMotionAccel();
	
	for (list<Finger*>::iterator it=dito_list.begin(); it !=dito_list.end(); ++it) 
	{
		if ( (*it)->get_finger_id() == finger_id) 
		{
			(*it)->update_interrupt(&pos);	
			break;
		}
	}
}