Actually make brim, and fix tests so that math is correct.

This commit is contained in:
Joseph Lenox 2018-07-27 19:51:08 -05:00
parent c94a168a5e
commit 60286bb032
2 changed files with 6 additions and 6 deletions

View File

@ -75,26 +75,23 @@ SCENARIO("Print: Brim generation") {
print->make_brim();
THEN("Brim Extrusion collection has 3 loops in it") {
REQUIRE(print->brim.items_count() == 3);
REQUIRE(print->brim.flatten().entities.size() == 3);
}
}
WHEN("Brim is set to 6mm") {
config->set("brim_width", 3);
config->set("brim_width", 6);
auto print {Slic3r::Test::init_print({m}, model, config)};
print->make_brim();
THEN("Brim Extrusion collection has 6 loops in it") {
REQUIRE(print->brim.items_count() == 6);
REQUIRE(print->brim.flatten().entities.size() == 6);
}
}
WHEN("Brim is set to 6mm, extrusion width 0.5mm") {
config->set("brim_width", 3);
config->set("brim_width", 6);
config->set("first_layer_extrusion_width", 0.5);
auto print {Slic3r::Test::init_print({m}, model, config)};
print->make_brim();
THEN("Brim Extrusion collection has 12 loops in it") {
REQUIRE(print->brim.items_count() == 12);
REQUIRE(print->brim.flatten().entities.size() == 12);
}
}
}

View File

@ -114,15 +114,18 @@ Print::process()
void
Print::make_brim()
{
if (this->state.is_done(psBrim)) return;
// prereqs
for(auto& obj: this->objects) {
obj->make_perimeters();
obj->infill();
obj->generate_support_material();
}
this->state.set_started(psBrim);
if (this->status_cb != nullptr)
this->status_cb(88, "Generating brim");
this->_make_brim();
this->state.set_done(psBrim);
}
void