diff --git a/src/ChangeLog b/src/ChangeLog --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,10 @@ +2010-10-19 + + * mainbase.cpp (Save): Use format specified in function prototype. + + * VirtualLeaf.cpp (Plot): Render PNG instead of JPEG. Write image + and XML files dependent only on getTime(). + 2010-10-18 * mainbase.cpp (Save): QDir::toNativeSeparators(fname). Invoke diff --git a/src/TutorialCode/Tutorial3/ChangeLog b/src/TutorialCode/Tutorial3/ChangeLog --- a/src/TutorialCode/Tutorial3/ChangeLog +++ b/src/TutorialCode/Tutorial3/ChangeLog @@ -1,3 +1,7 @@ +2010-10-19 + + * tutorial3_init.xml (public): Render PNG instead of JPEG. + 2010-10-18 * Makefile (Makefile.tutorial3): Removed -makefile qmake option. diff --git a/src/TutorialCode/Tutorial3/tutorial3_init.xml b/src/TutorialCode/Tutorial3/tutorial3_init.xml --- a/src/TutorialCode/Tutorial3/tutorial3_init.xml +++ b/src/TutorialCode/Tutorial3/tutorial3_init.xml @@ -339,17 +339,17 @@ void MainBase::Plot(int resize_stride) { frame++; } - // Write high-res JPG snapshot every plot step + // Write high-res PDF snapshot every plot step Save(fname.str().c_str(), "PDF"); */ - fname << frame << ".jpg"; + fname << frame << ".png"; if (par.storage_stride <= par.xml_storage_stride) { frame++; } - // Write high-res JPG snapshot every plot step - Save(fname.str().c_str(), "JPEG",1024,768); + // Write high-res PNG snapshot every plot step + Save(fname.str().c_str(), "PNG",1024,768); } diff --git a/src/VirtualLeaf.cpp b/src/VirtualLeaf.cpp --- a/src/VirtualLeaf.cpp +++ b/src/VirtualLeaf.cpp @@ -146,7 +146,8 @@ void MainBase::Plot(int resize_stride) clear(); - static int count=0; + int count=(int)mesh.getTime(); + if (resize_stride) { if ( !((count)%resize_stride) ) { FitLeafToCanvas(); @@ -179,24 +180,14 @@ void MainBase::Plot(int resize_stride) mesh.DrawBoundary(&canvas); if ( ( batch || MovieFramesP() )) { - - static int frame = 0; - // frame numbers are sequential for the most frequently written file type. - // for the less frequently written file type they match the other type - if (!(count%par.storage_stride) ) { - + if (!(count%par.storage_stride) ) { stringstream fname; fname << par.datadir << "/leaf."; fname.fill('0'); fname.width(6); - - fname << frame << ".jpg"; - if (par.storage_stride <= par.xml_storage_stride) { - frame = (int)mesh.getTime(); - } - - // Write high-res JPG snapshot every plot step - Save(fname.str().c_str(), "JPEG",1024,768); + fname << count << ".png"; + // Write high-res PNG snapshot every plot step + Save(fname.str().c_str(), "PNG", 1024, 768); } if (!(count%par.xml_storage_stride)) { @@ -204,20 +195,14 @@ void MainBase::Plot(int resize_stride) fname << par.datadir << "/leaf."; fname.fill('0'); fname.width(6); - fname << frame << ".xml"; - - if (par.xml_storage_stride < par.storage_stride) { - frame = (int)mesh.getTime(); - } + fname << count << ".xml"; // Write XML file every ten plot steps mesh.XMLSave(fname.str().c_str(), XMLSettingsTree()); } } - count++; } - INIT { //mesh.SetSimPlugin(plugin); diff --git a/src/mainbase.cpp b/src/mainbase.cpp --- a/src/mainbase.cpp +++ b/src/mainbase.cpp @@ -344,9 +344,9 @@ void MainBase::Save(const char *fname, c #ifdef QDEBUG qDebug() << "Native Image Filename: " << QDir::toNativeSeparators(QString(fname)) << endl; #endif - if (!image->save(QDir::toNativeSeparators(QString(fname)), 0, -1)) { + if (!image->save(QDir::toNativeSeparators(QString(fname)), format)) { MyWarning::warning("Image not saved successfully. Is the disk full or the extension not recognized?"); - }; + } delete painter; delete image; } else { @@ -355,7 +355,7 @@ void MainBase::Save(const char *fname, c pdf.setOutputFormat(QPrinter::PdfFormat); QPainter painter(&pdf); canvas.render(&painter, QRectF(), QRectF(-5000,-5000, 10000, 10000)); - + cerr << "Rendering to printer\n"; } }