diff --git a/resources/model/Disc.stl b/resources/model/Disc.stl new file mode 100644 index 0000000000..f19bf81fff Binary files /dev/null and b/resources/model/Disc.stl differ diff --git a/src/slic3r/GUI/GUI_Factories.cpp b/src/slic3r/GUI/GUI_Factories.cpp index 25bf130e89..ffe7ff42e1 100644 --- a/src/slic3r/GUI/GUI_Factories.cpp +++ b/src/slic3r/GUI/GUI_Factories.cpp @@ -484,7 +484,7 @@ wxMenu* MenuFactory::append_submenu_add_generic(wxMenu* menu, ModelVolumeType ty sub_menu->AppendSeparator(); } - for (auto &item : {L("Cube"), L("Cylinder"), L("Sphere"), L("Cone")}) + for (auto &item : {L("Cube"), L("Cylinder"), L("Sphere"), L("Cone"), L("Disc")}) { append_menu_item(sub_menu, wxID_ANY, _(item), "", [type, item](wxCommandEvent&) { obj_list()->load_generic_subobject(item, type); }, "", menu); diff --git a/src/slic3r/GUI/GUI_ObjectList.cpp b/src/slic3r/GUI/GUI_ObjectList.cpp index 426e904e66..b14509403d 100644 --- a/src/slic3r/GUI/GUI_ObjectList.cpp +++ b/src/slic3r/GUI/GUI_ObjectList.cpp @@ -2053,6 +2053,8 @@ static TriangleMesh create_mesh(const std::string& type_name, const BoundingBoxf mesh = TriangleMesh(its_make_cube(bb.size().x() * 1.5, bb.size().y() * 1.5, bb.size().z() * 0.5)); else if (type_name == "Cone") mesh = TriangleMesh(its_make_cone(0.5 * side, side)); + else if (type_name == "Disc") + mesh.ReadSTLFile((Slic3r::resources_dir() + "/model/Disc.stl").c_str(), true, nullptr); else if (type_name == "Bambu Cube") mesh.ReadSTLFile((Slic3r::resources_dir() + "/model/Bambu_Cube.stl").c_str(), true, nullptr); else if (type_name == "Bambu Cube V2")