From 73cd4f9718bf14fbd47992a4b371019d57722863 Mon Sep 17 00:00:00 2001 From: mfeemster Date: Fri, 23 Jan 2015 18:26:18 -0800 Subject: [PATCH] Fix incorrect parsing of legacy "symmetry" xform Xml element. --- Data/Version History.txt | 1 + Source/Ember/Ember.h | 8 ++++---- Source/Ember/XmlToEmber.h | 3 +-- Source/EmberGenome/EmberGenome.cpp | 6 +++--- 4 files changed, 9 insertions(+), 9 deletions(-) diff --git a/Data/Version History.txt b/Data/Version History.txt index 9787fca..f0bc409 100644 --- a/Data/Version History.txt +++ b/Data/Version History.txt @@ -4,6 +4,7 @@ Add total time output for verbose mode in EmberAnimate to match EmberRender. --Bug Fixes + Fix incorrect parsing of legacy "symmetry" xform Xml element. Fix incorrect iters ran/requested percentage in EmberAnimate to match EmberRender. Fix motion blur being disabled when doing animations in final render dialog. Allow for boolean command line options which default to true to be set to false. diff --git a/Source/Ember/Ember.h b/Source/Ember/Ember.h index e71ad62..0276ab4 100644 --- a/Source/Ember/Ember.h +++ b/Source/Ember/Ember.h @@ -1091,7 +1091,7 @@ public: m_Xforms[i].m_Weight = 1; m_Xforms[i].m_ColorSpeed = 0; - m_Xforms[i].m_Animate = 0.0; + m_Xforms[i].m_Animate = 0; m_Xforms[i].m_ColorX = 1; m_Xforms[i].m_ColorY = 1;//Added in case 2D palette support is ever added. m_Xforms[i].m_Affine.A(-1); @@ -1114,9 +1114,9 @@ public: Xform xform; AddXform(xform); - m_Xforms[i].m_Weight = 1.0; - m_Xforms[i].m_ColorSpeed = 0.0; - m_Xforms[i].m_Animate = 0.0; + m_Xforms[i].m_Weight = 1; + m_Xforms[i].m_ColorSpeed = 0; + m_Xforms[i].m_Animate = 0; m_Xforms[i].m_ColorX = m_Xforms[i].m_ColorY = (sym < 3) ? 0 : (T(k - 1) / T(sym - 2));//Added Y. m_Xforms[i].m_Affine.A(Round6(cos(k * a))); m_Xforms[i].m_Affine.D(Round6(sin(k * a))); diff --git a/Source/Ember/XmlToEmber.h b/Source/Ember/XmlToEmber.h index ac23c43..94b479f 100644 --- a/Source/Ember/XmlToEmber.h +++ b/Source/Ember/XmlToEmber.h @@ -1067,7 +1067,6 @@ private: //First parse out simple float reads. if (ParseAndAssignFloat(curAtt->name, attStr, "weight", xform.m_Weight, success)) { } else if (ParseAndAssignFloat(curAtt->name, attStr, "color_speed", xform.m_ColorSpeed, success)) { } - else if (ParseAndAssignFloat(curAtt->name, attStr, "symmetry", xform.m_ColorSpeed, success)) { xform.m_ColorSpeed = (1 - xform.m_ColorSpeed) / 2; }//Legacy support. else if (ParseAndAssignFloat(curAtt->name, attStr, "animate", xform.m_Animate, success)) { } else if (ParseAndAssignFloat(curAtt->name, attStr, "opacity", xform.m_Opacity, success)) { } else if (ParseAndAssignFloat(curAtt->name, attStr, "var_color", xform.m_DirectColor, success)) { } @@ -1081,7 +1080,7 @@ private: xform.m_Name = string(attStr); std::replace(xform.m_Name.begin(), xform.m_Name.end(), ' ', '_'); } - else if (!Compare(curAtt->name, "symmetry")) + else if (!Compare(curAtt->name, "symmetry"))//Legacy support. { //Deprecated, set both color_speed and animate to this value. //Huh? Either set it or not? diff --git a/Source/EmberGenome/EmberGenome.cpp b/Source/EmberGenome/EmberGenome.cpp index 01f9bae..4292f82 100644 --- a/Source/EmberGenome/EmberGenome.cpp +++ b/Source/EmberGenome/EmberGenome.cpp @@ -85,7 +85,7 @@ bool EmberGenome(EmberOptions& opt) os2.imbue(std::locale("")); if (!errorReport.empty()) - emberReport.DumpErrorReport(); + cerr << emberReport.ErrorReportString(); if (!renderer.get()) { @@ -225,7 +225,7 @@ bool EmberGenome(EmberOptions& opt) return false; } - if ((!doCross0) ^ (!doCross1)) + if (doCross0 != doCross1)//Must both be either true or false. { cerr << "Must specify both crossover arguments. Returning without executing." << endl; return false; @@ -518,7 +518,7 @@ bool EmberGenome(EmberOptions& opt) } if (opt.Enclosed()) - out << "" << endl; + cout << "" << endl; for (rep = 0; rep < opt.Repeat(); rep++) {