X-Git-Url: https://git.piment-noir.org/?p=lsystem3d.git;a=blobdiff_plain;f=src%2Frule.cpp;h=24cc04722a7a50c4ef10d97140058534c670cb8f;hp=564aa2c6e3d7757a18d4e873c6aca236123c7e51;hb=a4205fb0191cc9a6a9090e0f6276248724e4f940;hpb=1b297ccb518ed5e707ba6a09353adc3818f6161c diff --git a/src/rule.cpp b/src/rule.cpp index 564aa2c..24cc047 100644 --- a/src/rule.cpp +++ b/src/rule.cpp @@ -19,9 +19,10 @@ -#include +#include -#include +#include +#include #include "rule.h" @@ -112,7 +113,8 @@ void Rule::fromString(string ruleString) { i++; } - setProbability(Glib::Ascii::strtod(string(ruleString, 2, i - 2))); + + setProbability(strtod(string(ruleString, 2, i - 2).c_str(), NULL)); // ignore the '=' i += 2; @@ -136,13 +138,14 @@ string Rule::toString() // probability factor - if (_probability != 0.0) + if (_probability > 0.0 && _probability < 1.0) { - // TODO: precision - string probabilityString(Glib::Ascii::dtostr(getProbability()), 0, 4); + ostringstream probabilityString; + probabilityString << getProbability(); + // TODO: precision rulesString += '('; - rulesString += probabilityString; + rulesString += string(probabilityString.str(), 0, 4); rulesString += ')'; }