Example #1
0
//--------------------------------------------------------------
void testApp::keyPressed(int key){
    
    
//    switch (key){
//			
//		case ' ':
//			// reposition everything: 
//			for (int i = 0; i < particles.size(); i++){
//				particles[i].setInitialCondition(ofRandom(0,ofGetWidth()),ofRandom(0,ofGetHeight()),0,0);
//			}
//			break;
//	}

	
	if( key=='r'){
		pdfRendering = !pdfRendering;	
		if( pdfRendering ){
			ofSetFrameRate(12);  // so it doesn't generate tons of pages
			ofBeginSaveScreenAsPDF("recording-"+ofGetTimestampString()+".pdf", true);
		}else{
			ofSetFrameRate(60);
			ofEndSaveScreenAsPDF();		
		}
	}
    
    
//    if( !pdfRendering && key == 's' ){
//		oneShot = true;
//	}

	
}
Example #2
0
//--------------------------------------------------------------
void testApp::draw(){
	
//	float counter = 1 + ofGetElapsedTimeMillis() * 0.0001;
//	ofScale(counter, counter, counter);

	if (savePDF == true){
        //ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf", false);
		ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf", false, true);
    }
	
	cam.begin();
	
	//ofRotateX(-20);
	//ofRotateY(90);
	//ofRotateZ(ofRadToDeg(0.5));
	

	
	ofBackground(255);
	
	ofSetColor(0,130,130, 200);
	//VF.draw();
	
	for (int i = 0; i < particles.size(); i++){
		if (!particles[i].magic)
			particles[i].draw();
	}
	
	cam.end();
	
	if (savePDF){
		ofEndSaveScreenAsPDF();
        savePDF = false;
	}
}
Example #3
0
//--------------------------------------------------------------
void testApp::draw(){
	if(cmd == "run")
	{		
		//do
		//	m_par.Simulate(&canvas);
		//while(!m_par.canstop());
		time_t now, then;
		double seconds;
		//time(&now);

		for(int i =0; i<500; i++)
		{
			m_par.Simulate(&canvas);	
		}
		
		//time(&then);
		//seconds = difftime(now, then);
		//cout<<"elapse time during 5000 iterations: "<<seconds<<endl;

		if(m_par.canstop())
			pdfmaker = true;

		if(!m_par.GetSaved1stGroup() && m_par.Get1stGroupStopSign())
		{
			pdfmaker = true;
			m_par.SetSaved1stGroup();
		}
		// show catmull curves and save as pdf
		if(pdfmaker)
		{
			ofBeginSaveScreenAsPDF("testpdf-"+ofGetTimestampString()+".pdf");
			cout<<"Saving..."<<endl;
		}
		m_par.drawcatmull();
		if(pdfmaker)
		{
			ofEndSaveScreenAsPDF();
			cout<<"Saved PDF."<<endl;
			pdfmaker =false;
			if(m_par.canstop())
				exitApp();
		}

		//canvas.reloadTexture();
		//ofSetColor(255);
		//canvas.draw(0,0);
		//if(nowSaveImage)
		//{
		//	nowSaveImage = false;
		//	SaveImage();
		//}
	}
	else if(cmd == "edge")
	{
		edgeImage.reloadTexture();
		ofSetColor(150);
		edgeImage.draw(0,0);
		showEGmap = true;
	}
}
Example #4
0
//--------------------------------------------------------------
void ofApp::draw(){

    ofBackground(255);    
    
    if(isSavingPDF){
        ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf", false);
    }else{
        ofSetColor(0);
        ofDrawBitmapString("Press RETURN to save pdf file.", 10, ofGetHeight() - 10);
    }

    for (int i = 0; i < allTopics.size(); i++) {
        switch (chartType) {
            case 0:
                allTopics[i].draw(i, drawLabels, "bar");
                break;
                
            case 1:
                allTopics[i].draw(i, drawLabels, "area");
                break;
                
            default:
                allTopics[i].draw(i, drawLabels, "polar");
                break;
        }
    }
    
    if(isSavingPDF){
        ofEndSaveScreenAsPDF();
        isSavingPDF = false;
    }
}
Example #5
0
//--------------------------------------------------------------
void ofApp::draw(){
    ofEnableAlphaBlending();
    ofBackground(74,158,216);
    ofTranslate(ofGetWidth()/2, ofGetHeight()/2);
    float size1 = 30;
    float size2 = 15;
    float pos = 190;
    float posY = 330;
    
    for (int t=0; t<size1; t+=size1){
    for (int h=0; h<size1; h+=size1) {
        for(float g=0; g<20; g+= 0.3){
            
            ofSetLineWidth(1);
            ofNoFill();
            ofSetCircleResolution(3+g);
            ofRotateY(g*5);
            ofDrawCircle(t*3, h*3, g*10+size1);
            
            ofSetLineWidth(size2);
            ofDrawCircle(t*3+pos*2, h*3, size2);
            ofDrawCircle(t*3-pos, h*3-posY+g*10, size2);
            ofDrawCircle(t*3-pos, h*3+posY-g*10, size2);
            
            //ofRotate(g*2);
    }
    }
    }
    
    if(loop){
        ofEndSaveScreenAsPDF();
        loop = false;
    }
}
Example #6
0
//--------------------------------------------------------------
void testApp::draw(){
    
    
    ofPushMatrix();
    ofTranslate(235, 149);
    
    if (saveScreen){
        ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf");
    }
    

    for (int i = 0; i < triangles.size(); i++) {
        ofSetColor(colors.at(i % colors.size()));
        ofTriangle(points.at(triangles.at(i).x), points.at(triangles.at(i).y), points.at(triangles.at(i).z));
    }
    
    // I picked this color out specifically. It doesn't change like the others
    ofColor accent;
    accent.setHsb(37.54, 255*.60, 255*.75);
    ofSetColor(accent);
    ofTriangle(points.at(6), points.at(8), points.at(2));
    
    if (saveScreen){
        ofEndSaveScreenAsPDF();
        saveScreen = false;
    }
    
    ofPopMatrix();
    
}
Example #7
0
//--------------------------------------------------------------
void testApp::keyPressed  (int key){ 
	
	if (key == ' '){
		VF.clear();
	} else if (key == 'a'){
		drawingStyle ++;
		drawingStyle %= 4;
	} else if (key == 'f'){
		bFade = !bFade;
	} else if (key == 'r'){
        VF.randomizeField(4.0);
    }
    
    if( key=='1'){
        pdfRendering = !pdfRendering;
        if( pdfRendering ){
            ofSetFrameRate(12);  // so it doesn't generate tons of pages
            ofBeginSaveScreenAsPDF("recording-"+ofGetTimestampString()+".pdf", true);
        }else{
            ofSetFrameRate(60);
            ofEndSaveScreenAsPDF();
        }
    }
    
    
    if( !pdfRendering && key == '2' ){
        oneShot = true;
    }

    
}
//--------------------------------------------------------------
void ofApp::draw(){

	if (savePDF){

		ofBeginSaveScreenAsPDF("recording-"+ofGetTimestampString()+".pdf", true);
	}

	float hue = ofMap(mouseX,0,ofGetWidth(),0,255);
	c.setHue(hue);
	ofSetColor(c);
	ofSetRectMode(OF_RECTMODE_CORNER);
	//ofNoFill();

	//ofBackground(mouseY/2,100,100);
	ofRect( 0, 0, ofGetWidth(), ofGetHeight() );

	float antiHue = 255.0 - hue;
	b.setHue(antiHue);
	ofFill();
	ofSetRectMode(OF_RECTMODE_CENTER);
	ofSetColor(b);
	ofRect(ofGetWidth() / 2, ofGetHeight() / 2, ofGetHeight() - mouseY, ofGetHeight() - mouseY );
	
	if (savePDF){
		savePDF = false;
		ofEndSaveScreenAsPDF();
	}

}
Example #9
0
void testApp::draw(){
    int w = getW();
    int h = getH();

    if(bCap){
        ofBeginSaveScreenAsPDF(pdfCapturePath, false, false, ofRectangle(0,0,w,h));
    }
    ofBackground(0);
    if(gprm.bBlack){
        return;
    }

//    cam.begin();
//    ofRotate(180, 1, 0, 0);
//    ofTranslate(-w/2, -h/2);

    if(bCap){
        //ofBeginSaveScreenAsPDF(pdfCapturePath, false, false, ofRectangle(0,0,w,h));
        gps->drawForPdf();
        ofEndSaveScreenAsPDF();
        bCap = false;
    }else{        
        gps->draw();
    }
            
//    cam.end();
    
    if(gprm.bTestPicture){
        ofSetRectMode(OF_RECTMODE_CENTER);
        ofSetColor(255, 255, 255, 150);
        float asp = wc.getWidth()/wc.getHeight();
        wc.draw(w/2, h/2, h*asp, h);
        ofSetRectMode(OF_RECTMODE_CORNER);
    }
}
Example #10
0
//--------------------------------------------------------------
void ofApp::draw(){
    ofDrawEllipse(ofGetWidth()/2, ofGetHeight()/2, 100, 100);
    
    if(loop){
        ofEndSaveScreenAsPDF();
        loop = false;
    }
}
//--------------------------------------------------------------
void testApp::draw(){
	
    
    if (bSavePdf == true){
        ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf", false);
        
    }
    
	ofEnableAlphaBlending();
	ofSetColor(0,130,130, 200);
	//VF.draw();
	
	ofSetColor(0,0,0,100);
	
	for (int i = 0; i < particles.size(); i++){
		particles[i].draw();
	}
	VF.addClockwiseCircle(ofGetWidth()/2,ofGetHeight()/2, 300, 0.2f);
	
    float diffTime = ofGetElapsedTimef() - lastTime;
    if (diffTime > duration){
		
		if (clockwise) {
			if (innerclockwise) {
				VF.addClockwiseCircle(ofGetWidth()/2,ofGetHeight()/2, 500, 0.2f);
				innerclockwise=!innerclockwise;
			}
			else {
				VF.addCounterClockwiseCircle(ofGetWidth()/2,ofGetHeight()/2, 500, 0.2f);	
				innerclockwise=!innerclockwise;
			}

			
			clockwise=!clockwise;
		}
		else {
			

			VF.addInwardCircle(ofGetWidth()/2,ofGetHeight()/2, 800, 0.2f);
		
			clockwise=!clockwise;
		}
		
        lastTime = ofGetElapsedTimef();

        
    }
	

    
    if( bSavePdf ){
		ofEndSaveScreenAsPDF();
        bSavePdf = false;
	}	
    
}
void testApp::exportPDF( )
{
    ofFileDialogResult result = ofSystemSaveDialog("quote", "Save your font layers" ) ;


    //ofBackground( 0 , 0, 0 ) ;
    for ( int i = 0 ; i < agents.size() ; i++ )
    {
        string _fileName = result.getPath() +"_"+ ofToString( i ) + ".pdf" ;
        ofBeginSaveScreenAsPDF( _fileName ) ;
        ofSetColor( 255 , 255 , 255 , 0 ) ;
        ofRect( 0 , 0, ofGetWidth() , ofGetHeight() ) ;
        //ofTranslate( quote.charTranslateOffset.x , quote.charTranslateOffset.y ) ;
     //   int wordIndex = quote.getQuotePathAt( i )->curLine ;
     //   ofTranslate( quote.wordBlocks[ wordIndex ]->translate.x , quote.wordBlocks[ wordIndex ]->translate.y , 0 ) ;
        //ofSetColor( 0 , 0 , 0 ) ;
        //ofRect( 0 , 0, ofGetWidth() , ofGetHeight() ) ;
        agents[i]->draw( false ) ;
        agents[i]->drawEntirePath( ) ;
        ofEndSaveScreenAsPDF() ;
    }


    string combinedName = result.getPath() +"_combined.pdf" ;
    ofBeginSaveScreenAsPDF( combinedName ) ;
    ofSetColor( 255 , 255 , 255 , 0 ) ;
    ofRect( 0 , 0, ofGetWidth() , ofGetHeight() ) ;


    //ofTranslate( quote.charTranslateOffset.x , quote.charTranslateOffset.y ) ;

    for ( int i = 0 ; i < agents.size() ; i++ )
    {
        //string _fileName = result.getPath() +"_"+ ofToString( i ) + ".pdf" ;
               //ofSetColor( 0 , 0 , 0 ) ;
        //ofRect( 0 , 0, ofGetWidth() , ofGetHeight() ) ;
        agents[i]->draw( false ) ;

    }
    ofEndSaveScreenAsPDF() ;


}
Example #13
0
//--------------------------------------------------------------
void testApp::draw(){
    //start snapping
    if( oneShot ){
        ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf", false);
    }
    
    if( pdfRendering ){
        ofSetColor(ofColor::red);
        ofCircle(10, 10, 5);
    }
    
    
    
    //draw
	ofEnableAlphaBlending();
    ofSetColor(150,70);
    
	VF.draw();
	
	ofSetColor(0,0,0);
	
	for (int i = 0; i < particles.size(); i++){
		particles[i].draw();
	}
    
    
    //end oneshot snap
    if( oneShot ){
        ofEndSaveScreenAsPDF();
        oneShot = false;
    }	
    
    
    //menu
	
	ofSetColor(0,130,130, 200);
	ofRect(30,30,300,75);
	ofSetColor(255,255,255);
	ofDrawBitmapString("space to clear\nchange drawing mode 'a'\ntoggle fade 'f'", 50, 50);
	
	
	ofSetColor(255,255,130);
	switch (drawingStyle){
		case 0: ofDrawBitmapString("drawing mode: inward", 50, 90);
			break;
		case 1: ofDrawBitmapString("drawing mode: outward", 50, 90);
			break;
		case 2: ofDrawBitmapString("drawing mode: clockwise", 50, 90);
			break;
		case 3: ofDrawBitmapString("drawing mode: counter-clockwise", 50, 90); 
			break;
	}	
}
Example #14
0
//--------------------------------------------------------------
void ofApp::keyPressed(int key){
    if(key == 's'){
        ofBackground(0);
        ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf");
    }
    if(key == 'f'){
        ofBackground(0);
    }
    if(key == 'd'){
        ofEndSaveScreenAsPDF();
        exit();
    }
}
Example #15
0
//-----------------------------------------------------------------------------------
void ofBeginSaveScreenAsPDF(string filename, bool bMultipage, bool b3D, ofRectangle viewport){
	if( bScreenShotStarted )ofEndSaveScreenAsPDF();
	
	storedRenderer = ofGetCurrentRenderer();
	
	

	rendererCollection = ofPtr<ofRendererCollection>(new ofRendererCollection);
	rendererCollection->renderers.push_back(ofGetGLRenderer());
	
	ofSetCurrentRenderer(rendererCollection);
	bScreenShotStarted = true;
}
//--------------------------------------------------------------
void ofApp::draw(){
	if(saveOneFrame){
		ofBeginSaveScreenAsPDF("CirclePacking-" + ofGetTimestampString() + ".pdf", false);
	}

	for(int i = 0; i < circles.size(); i++){
		circles[i]->display();
	}

	if(saveOneFrame){
		ofEndSaveScreenAsPDF();
		saveOneFrame = false;
	}
}
Example #17
0
//-----------------------------------------------------------------------------------
void ofBeginSaveScreenAsPDF(string filename, bool bMultipage, bool b3D, ofRectangle viewport){
	if( bScreenShotStarted )ofEndSaveScreenAsPDF();
	
	storedRenderer = ofGetCurrentRenderer();
	
	cairoScreenshot = ofPtr<ofCairoRenderer>(new ofCairoRenderer);
	cairoScreenshot->setup(filename, ofCairoRenderer::PDF, bMultipage, b3D, viewport); 		

	rendererCollection = ofPtr<ofRendererCollection>(new ofRendererCollection);
	rendererCollection->renderers.push_back(ofGetGLRenderer());
	rendererCollection->renderers.push_back(cairoScreenshot);
	
	ofSetCurrentRenderer(cairoScreenshot, true);
	bScreenShotStarted = true;
}
Example #18
0
//--------------------------------------------------------------
void testApp::draw(){
    ofBackground(0);
    
    
    
    if (bTrails){
        
        fbo.begin();
        for (int i = 0; i < particles.size(); i++){
            ofSetColor(0);
            particles[i]->draw();
        }
        fbo.end();
        
        ofSetColor(255);
        fbo.draw(0, 0);
        
        if (bPrintScreen){
            ofSaveScreen("screenshot-"+ofGetTimestampString()+".png");
            bPrintScreen = false;
        }
    } 
    
    if (bPrintScreen){
        ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf", false);
    }
    
    for (int i = 0; i < particles.size(); i++){
        ofSetColor(0);
        particles[i]->draw();
    }
    
    if (bPrintScreen){
        ofEndSaveScreenAsPDF();
        bPrintScreen = false;
    }
    
    
    if (bDrawField){
        ofSetColor(255,100);
        normals.draw(0,0,ofGetWidth(),ofGetHeight());
        ofDisableSmoothing();
        ofSetColor(100);
        VF.draw();
        ofEnableSmoothing();
    }
    
}
Example #19
0
//--------------------------------------------------------------
void testApp::keyPressed(int key){
	
	if( key=='r'){
		pdfRendering = !pdfRendering;	
		if( pdfRendering ){
			ofSetFrameRate(12);  // so it doesn't generate tons of pages
			ofBeginSaveScreenAsPDF("recording-"+ofGetTimestampString()+".pdf", true);
		}else{
			ofSetFrameRate(60);
			ofEndSaveScreenAsPDF();		
		}
	}
	
	if( !pdfRendering && key == 's' ){
		oneShot = true;
	}
}
Example #20
0
//--------------------------------------------------------------
void testApp::draw(){
    
    if (bSavePdf == true){
        ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf", false);
        
    }
    
    ofSetColor(255);
    //bg.draw(0, 0);
    for (int i = 0; i < fireflies.size(); i++) {
        fireflies[i].draw();
    }
    
    if( bSavePdf ){
		ofEndSaveScreenAsPDF();
        bSavePdf = false;
	}	
}
Example #21
0
//--------------------------------------------------------------
void testApp::draw()
{
    if(imTired == true)
    {
        ofBeginSaveScreenAsPDF("mfox2_Lewitt.pdf");

        ofBackground(0);
        ofSetColor(rColor, gColor, bColor);
        ofFill();

        for(int shitFace = 0; shitFace < totalPoints; shitFace++)
        {
            for(int scrap = 0; scrap < totalPoints; scrap++)
            {
                if(scrap != shitFace)
                {
                    ofLine(xLocation[shitFace], yLocation[shitFace], xLocation[scrap], yLocation[scrap]);
                }
            }

            ofCircle(xLocation[shitFace], yLocation[shitFace], 5);
        }

        ofEndSaveScreenAsPDF();
        imTired = false;
    }

    ofBackground(0);
    ofSetColor(rColor, gColor, bColor);
    ofFill();

    for(int shitFace = 0; shitFace < totalPoints; shitFace++)
    {
        for(int scrap = 0; scrap < totalPoints; scrap++)
        {
            if(scrap != shitFace)
            {
                ofLine(xLocation[shitFace], yLocation[shitFace], xLocation[scrap], yLocation[scrap]);
            }
        }

        ofCircle(xLocation[shitFace], yLocation[shitFace], 5);
    }
}
Example #22
0
//--------------------------------------------------------------
void testApp::draw(){
	
	if (savePDF == true){
        ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf", false);
    }
	
	ofBackground(0);
	
	ofSetColor(0,130,130, 200);
	//VF.draw();
	
	for (int i = 0; i < particles.size(); i++){
		//if (!particles[i].magic)
		particles[i].draw();
	}
	
	
	if (savePDF){
		ofEndSaveScreenAsPDF();
        savePDF = false;
	}
}
Example #23
0
//--------------------------------------------------------------
void testApp::draw(){

	if( onshot ){
		ofBeginSaveScreenAsPDF("mikim-"+ofGetTimestampString()+".pdf", false);
	}
    
    ofBackground(0, 0, 0);
    
    for (int i=0;i<50;i++) {
        ofSetColor(200, 0, 0);
        ofCircle(px[i], py[i], 5);
        for (int j=0 ; j<50 ; j++) {
            ofSetColor(128, 128, 128);
            ofLine(px[i], py[i], px[j], py[j]);
        }
    }
    
    if (onshot) {
        ofEndSaveScreenAsPDF();
        onshot = false;
    }
    
    
}
Example #24
0
//--------------------------------------------------------------
void ofApp::draw(){
    
    //ofFill();
    //ofSetColor(255, 100, 100);
    
    coneComplexity  =       8;
    scoopComplexity =       8;
    scoopSkip       =       3;
    
    triangleHeight  =     ofGetHeight()/5;
    triangleWidth = triangleHeight/coneComplexity*2;
    
    
    screenMidpoint.set(ofGetWidth()/2, ofGetHeight()/2);
    //screenMidpoint.set(500,200);
    triPtA = screenMidpoint;
    triPtB.set(triPtA.x - triangleWidth/2, triPtA.y +triangleHeight);
    triPtC.set(triPtA.x + triangleWidth/2, triPtA.y + triangleHeight);
    
    //cout << triPtA << triPtB << triPtC << endl;
    
    //ofNoFill();
    ofSetLineWidth(2);
    ofSetColor(180);
    ofEllipse(triPtA, triangleHeight/3, triangleHeight/3);
    
    for(unsigned int j = 0; j < coneComplexity; j++){
        ofTranslate(triPtA);
        ofRotate(360/coneComplexity);
        ofTranslate(-triPtA);
        ofPoint rectCorner;
        rectCorner = triPtB;
        ofPoint offset;
        offset.set(triangleWidth / scoopComplexity * scoopSkip, 0);
        ofSetColor(180);
        ofTriangle(triPtA, triPtB, triPtC);
        for(int k=0; k < scoopComplexity; k+=scoopSkip){
            rectCorner+=offset/2;

            ofSetColor(255, 255, 255);
            
            //cout << rectCorner << endl;
            short int cutoutDist = triangleHeight/30;
            short int coneHeight = triangleWidth*coneComplexity/2;
            
            for(int m=0; m<2; m++){
                int mHeight = (m * coneHeight) + (m * cutoutDist);
                int mYpos =  (m * cutoutDist); //(l * coneHeight) +
                ofRect(rectCorner.x, rectCorner.y - mYpos, triangleWidth/scoopComplexity, coneHeight - mHeight );
                cout << m << endl;
            }
            rectCorner+=offset/2;
            
        }

        
    }
    
    
    
    
    
    
    
    if( oneShot ){
        ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf", false);
    }
    
    if( oneShot ){
        ofEndSaveScreenAsPDF();
        oneShot = false;
    }
    
    /*
     
     ofSetColor(255);
     
     //lets draw a box with a trail
     ofSetColor(245, 58, 135);
     
     ofRectangle boxBounds(32, 500, ofGetWidth()-32, 250);
     
     
     
     ofNoFill();
     ofBeginShape();
     ofVertices(boxTrail);
     ofEndShape(false);
     
     ofFill();
     ofSetRectMode(OF_RECTMODE_CENTER);
     
     ofPushMatrix();
     //      ofTranslate(x, y, 0);
     ofRotate(angle);
     ofRect(0, 0, 30, 30);
     ofPopMatrix();
     
     
     */
    
}
Example #25
0
//--------------------------------------------------------------
void testApp::draw(){

    if (bPrintToPdf){
        ofBackground(255);
        ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf", false);
    } else {
        ofBackground(11,94,148);
        ofBackgroundGradient(ofColor(11,94,148), ofColor(0,45,128,100));
        float margin = 10;
        ofRectangle grid = ofRectangle(margin,margin,ofGetWidth()-margin*2.0,ofGetHeight()-margin*2.0);
        
        ofPushStyle();
        
        ofSetColor(200,20);
        ofSetLineWidth(2);
        ofNoFill();
        ofRect(grid);
        ofSetLineWidth(0.3);
        drawGrid(grid, 10);
        
        ofPopStyle();
    }
    
    //  Potentialy New Gear
    //
    if( bValid && !bPrintToPdf) {
        ofSetColor(255,0,0);
        picked->update();
        picked->draw();
    }
    
    //  Draw Disk
    //
    if (bPrintToPdf){
        ofSetColor(0,100);
    } else {
        ofSetColor(255,100);
    }
    ofFill();
    ofBeginShape();
    for (int i = 0; i < disk.size(); i++) {
        ofVertex(disk[i]);
    }
    ofEndShape();
    
    if (onA)
        ofFill();
    else
        ofNoFill();
    ofCircle(A, 10);
    
    if (onB)
        ofFill();
    else
        ofNoFill();
    ofCircle(B, 10);
    
    ofNoFill();
    ofDrawBitmapString("A", A.x-3,A.y+4);
    ofDrawBitmapString("B", B.x-3,B.y+4);
    ofRect(window);
    
    //  Draw Gears
    //
    for (int i = 0; i < gears.size(); i++) {
    
        gears[i]->bPrint = bPrintToPdf;
        gears[i]->bSelected = (hoverGear == i);
        
        ofSetColor(255);
        gears[i]->update();
        gears[i]->draw();

    }
    
    if (bPrintToPdf){
        ofEndSaveScreenAsPDF();
        bPrintToPdf = false;
    }
}
Example #26
0
void blobApp::guiEvent(ofxUIEventArgs &_e)
{
    if (_e.getName() == mResSlider->getName()) {
        int vcnt = mResSlider->getScaledValue();
        if (mMasterCurve) mMasterCurve->resample(vcnt);
    }
    else if (_e.getName() == mHoleToggle->getName()) {
        if (mMasterCurve) {
            mMasterCurve->removeHole(true, mMirrorHolesToggle->getValue());
            if (mHoleToggle->getValue()) {
                mMasterCurve->addHole(mHolePosSlider->getScaledValue(), mHoleOSSlider->getScaledValue(), mHoleSizeSlider->getScaledValue(), mMirrorHolesToggle->getValue());
            }
            
            mMasterCurve->freeHoles(false);
            mFreeHolesToggle->setValue(false);
        }
    }
    else if (_e.getName() == mMirrorHolesToggle->getName()) {
        if (mMasterCurve) {
            mMasterCurve->removeHole(false,!mMirrorHolesToggle->getValue());
            if (mMirrorHolesToggle->getValue() == true) {
                mHoleToggle->setName("add holes");
                mMasterCurve->removeHole(true, true);
                mMasterCurve->addHole(mHolePosSlider->getScaledValue(), mHoleOSSlider->getScaledValue(), mHoleSizeSlider->getScaledValue(), mMirrorHolesToggle->getValue());
            } else {
                mHoleToggle->setName("add hole");
            }
            
            if (mMirrorHolesToggle->getValue()) {
                mMasterCurve->freeHoles(false);
                mFreeHolesToggle->setValue(false);
            }
        }
    }
    else if (_e.getName() == mFreeHolesToggle->getName()) {
        if (mMasterCurve) {
            mMasterCurve->freeHoles(mFreeHolesToggle->getValue());
//            if (mFreeHolesToggle->getValue()) {
//                mHoleGUI->removeWidget(mHoleOSSlider);
//                mHoleGUI->removeWidget(mHolePosSlider);
//                mHoleGUI->removeWidget(mHoleSizeSlider);
//            } else {
//                mHoleGUI->addWidget(mHoleOSSlider);
//                mHoleGUI->addWidget(mHolePosSlider);
//                mHoleGUI->addWidget(mHoleSizeSlider);
//            }
        }
    }
    else if (_e.getName() == mUpdateButton->getName() && mUpdateButton->getValue()) {
        mForm->update();
    }
    else if (_e.getName() == mShowZipperToggle->getName()) {
        mMasterCurve->showZipper(mShowZipperToggle->getValue());
    }
    else if (_e.getName() == mExportCutFileButton->getName() && mExportCutFileButton->getValue()) {
        ofBeginSaveScreenAsPDF("blob-to-cut-"+ofGetTimestampString()+".pdf", false);
        ofClear(255,255,255);
        ofPushMatrix();
        ofTranslate(ofGetWidth()*0.5, ofGetHeight()*0.5);
        mMasterCurve->mZipperPath->draw();
        ofPopMatrix();
        ofEndSaveScreenAsPDF();
    }
    else if (_e.getName() == mExportSTLButton->getName() && mExportSTLButton->getValue()) {
        mForm->exportModel();
    }
}
Example #27
0
//--------------------------------------------------------------
void ofApp::draw(){
	if( oneShot ){
		ofBeginSaveScreenAsPDF("screenshot-"+ofGetTimestampString()+".pdf", false);
	}
	
	ofSetColor(54);
	ofDrawBitmapString("PDF OUTPUT EXAMPLE", 32, 32);
	if( pdfRendering ){
		ofDrawBitmapString("press r to stop pdf multipage rendering", 32, 92);
	}else{	
		ofDrawBitmapString("press r to start pdf multipage rendering\npress s to save a single screenshot as pdf to disk", 32, 92);
	}
		
		
	ofFill();		
	ofSetColor(54,54,54);
	ofDrawBitmapString("TTF Font embdedded into pdf as vector shapes", 32, 460);
	
	if( oneShot || pdfRendering ){
		font.drawStringAsShapes("Current Frame: ",  32, 500);
		ofSetColor(245, 58, 135);
		font.drawStringAsShapes( ofToString(ofGetFrameNum()), 32 + font.getStringBoundingBox("Current Frame: ", 0, 0).width + 9, 500);
	}else{
		font.drawString("Current Frame: ",  32, 500);	
		ofSetColor(245, 58, 135);		
		font.drawString( ofToString(ofGetFrameNum()), 32 + font.getStringBoundingBox("Current Frame: ", 0, 0).width + 9, 500);		
	}
	
	
	ofSetColor(54,54,54);
	ofDrawBitmapString("Images can also be embedded into pdf", 32, dropZoneRects[0].y - 18);
	
	ofSetRectMode(OF_RECTMODE_CORNER);
	ofNoFill();
	for(unsigned int k = 0; k < dropZoneRects.size(); k++){
		ofSetColor(54,54,54);
		ofRect(dropZoneRects[k]);
		ofSetColor(245, 58, 135);		
		ofDrawBitmapString("drop images here", dropZoneRects[k].getCenter().x - 70, dropZoneRects[k].getCenter().y);
	}

	ofSetColor(255);
	for(unsigned int j = 0; j < images.size(); j ++){
		if( images[j].width > 0 ){
			
			float tw = 300;
			float th = 200;
			
			if( images[j].getWidth() / images[j].getHeight() < tw / th ){
				tw = th * ( images[j].getWidth() / images[j].getHeight() );
			}else{
				th = tw * ( images[j].getHeight() / images[j].getWidth() );			
			}
			
			images[j].draw(dropZoneRects[j].x, dropZoneRects[j].y, tw, th);
			
		}
	}
	
	//lets draw a box with a trail
    //让我们画一个跟着尾巴的方形
	ofSetColor(245, 58, 135);
	
	ofRectangle boxBounds(32, 500, ofGetWidth()-32, 250);
	
	//lets get a noise value based on the current frame
    //让我们设置噪点值基于现在的桢
	float noiseX = ofNoise(float(ofGetFrameNum())/600.f, 200.0f);
	float noiseY = ofNoise(float(ofGetFrameNum())/800.f, -900.0f);

	ofNoFill();
	ofBeginShape();
	ofVertices(boxTrail);
	ofEndShape(false);
	
	ofFill();
	ofSetRectMode(OF_RECTMODE_CENTER);

	ofPushMatrix();
		float x = ofMap( noiseX, 0, 1, boxBounds.x, boxBounds.x + boxBounds.width, true);
		float y = ofMap( noiseY, 0, 1, boxBounds.y, boxBounds.y + boxBounds.height, true);

		ofTranslate(x, y, 0);
		ofRotate(angle);
		ofRect(0, 0, 30, 30);
	ofPopMatrix();	
	
	if( boxTrail.size() == 0 || ( boxTrail.back() - ofPoint(x, y) ).length() > 1.5 ){
		boxTrail.push_back(ofPoint(x, y));
	}
	
	if(boxTrail.size() > 800 ){
		boxTrail.erase(boxTrail.begin(), boxTrail.begin()+1);
	}
	
	if( oneShot ){
		ofEndSaveScreenAsPDF();
		oneShot = false;
	}	
}
Example #28
0
//--------------------------------------------------------------
void ofApp::draw(){
    
    if(titleScreen){
        
        if (titleFading) currTitleFade += titleAdder;
        if (currTitleFade < 0){
            titleAdder *= -1;
            titleFading = false;
        }
        if (currTitleFade > 260){
            titleScreen = false;
            startComplessita();
        }
        drawTitleScreen(currTitleFade);
        
    } else {
    
        /* ofSetColor(255, 0, 0);
        ofNoFill();
        ofRect(d, d, ofGetWidth()-d-d, ofGetHeight()-d-d);*/
        
        if(ofGetKeyPressed('s')){
            ofBeginSaveScreenAsPDF(ofGetTimestampString()+".pdf");
        }
        
        ofBackground(0, 0, 0);
        
        for (int i = 0; i < N; i++) {
            if(i==person) {
                ofSetColor(255,0,0);
                if(accel.size() > 0){
                    accelX =(magne[accel.size()-1].x);
                    if ( accelX >= 130 ) {
                         particles[person].addVel(0.001);
                    }
                }
                lastX = (getAverageX(particles));
                
                if (lastX != currentX) {
                    if (lastX <= currentX) {
                        sentDataString = "R";
                        udpConnection.Send("R", 1);
                    }
                    else {
                        sentDataString = "L";
                        udpConnection.Send("L", 1);
                    }
                    currentX = lastX;
                }
            }
            else {
                ofSetColor(255);
            }
            particles[i].draw();
        }
        
        if(ofGetKeyPressed('s'))
            ofEndSaveScreenAsPDF();
        
        //end wifly
        //ofSetColor(0, 255, 0);
        //ofCircle(getAverageX(particles), ofGetHeight()/2, 5);
        drawInfoBox();
    }
    
    if(showEnding){
        if(titleFading) currTitleFade += 1;
        if(currTitleFade > 255){
            titleFading = false;
            currTitleFade = 255;
        }
        drawEndingScreen(currTitleFade);
    }
}