Use approx with a margin instead of trying for exact floating point matches.

This commit is contained in:
Joseph Lenox 2018-07-27 09:18:23 -05:00
parent 5b06201e18
commit 1ea86dcb5d

View File

@ -37,7 +37,7 @@ SCENARIO("Extrusion width specifics", "[!mayfail]") {
const auto layer_height { config->getFloat("layer_height") };
parser.parse_stream(gcode, [&E_per_mm_bottom, layer_height] (Slic3r::GCodeReader& self, const Slic3r::GCodeReader::GCodeLine& line)
{
if (self.Z == layer_height) { // only consider first layer
if (self.Z == Approx(layer_height).margin(0.01)) { // only consider first layer
if (line.extruding() && line.dist_XY() > 0) {
E_per_mm_bottom.emplace_back(line.dist_E() / line.dist_XY());
}