2929#include " bridge.h"
3030#include " communication/Communication.h" // To send layer view data.
3131#include " feature_generation/FeatureGenerator.h"
32- #include " feature_generation/MeshFeatureGenerator .h"
32+ #include " feature_generation/MeshInsetsGenerator .h"
3333#include " geometry/LinesSet.h"
3434#include " geometry/OpenPolyline.h"
3535#include " geometry/PointMatrix.h"
@@ -110,20 +110,20 @@ void FffGcodeWriter::writeGCode(SliceDataStorage& storage, TimeKeeper& time_keep
110110
111111 setConfigRetractionAndWipe (storage);
112112
113- if (scene.current_mesh_group == scene.mesh_groups .begin ())
114- {
115- auto should_prime_extruder = gcode.initializeExtruderTrains (storage, start_extruder_nr);
116-
117- if (! should_prime_extruder)
118- {
119- // set to most negative number so that layer processing never primes this extruder anymore.
120- extruder_prime_layer_nr[start_extruder_nr] = std::numeric_limits<int >::min ();
121- }
122- }
123- else
124- {
125- processNextMeshGroupCode (storage);
126- }
113+ // if (scene.current_mesh_group == scene.mesh_groups.begin())
114+ // {
115+ // auto should_prime_extruder = gcode.initializeExtruderTrains(storage, start_extruder_nr);
116+ //
117+ // if (! should_prime_extruder)
118+ // {
119+ // // set to most negative number so that layer processing never primes this extruder anymore.
120+ // extruder_prime_layer_nr[start_extruder_nr] = std::numeric_limits<int>::min();
121+ // }
122+ // }
123+ // else
124+ // {
125+ // processNextMeshGroupCode(storage);
126+ // }
127127
128128 size_t total_layers = 0 ;
129129 for (std::shared_ptr<SliceMeshStorage>& mesh_ptr : storage.meshes )
@@ -144,34 +144,34 @@ void FffGcodeWriter::writeGCode(SliceDataStorage& storage, TimeKeeper& time_keep
144144
145145 setSupportAngles (storage);
146146
147- gcode.writeLayerCountComment (total_layers);
148-
149- { // calculate the mesh order for each extruder
150- const size_t extruder_count = Application::getInstance ().current_slice_ ->scene .extruders .size ();
151- mesh_order_per_extruder.clear (); // Might be not empty in case of sequential printing.
152- mesh_order_per_extruder.reserve (extruder_count);
153- for (size_t extruder_nr = 0 ; extruder_nr < extruder_count; extruder_nr++)
154- {
155- mesh_order_per_extruder.push_back (calculateMeshOrder (storage, extruder_nr));
156- }
157- }
158- const auto extruder_settings = Application::getInstance ().current_slice_ ->scene .extruders [gcode.getExtruderNr ()].settings_ ;
147+ // gcode.writeLayerCountComment(total_layers);
148+ //
149+ // { // calculate the mesh order for each extruder
150+ // const size_t extruder_count = Application::getInstance().current_slice_->scene.extruders.size();
151+ // mesh_order_per_extruder.clear(); // Might be not empty in case of sequential printing.
152+ // mesh_order_per_extruder.reserve(extruder_count);
153+ // for (size_t extruder_nr = 0; extruder_nr < extruder_count; extruder_nr++)
154+ // {
155+ // mesh_order_per_extruder.push_back(calculateMeshOrder(storage, extruder_nr));
156+ // }
157+ // }
158+ // const auto extruder_settings = Application::getInstance().current_slice_->scene.extruders[gcode.getExtruderNr()].settings_;
159159 // in case the prime blob is enabled the brim already starts from the closest start position which is blob location
160160 // also in case of one at a time printing the first move of every object shouldn't be start position of machine
161- if (! extruder_settings.get <bool >(" prime_blob_enable" ) and ! (extruder_settings.get <std::string>(" print_sequence" ) == " one_at_a_time" ))
162- {
163- // Setting first travel move of the first extruder to the machine start position
164- Point3LL p (extruder_settings.get <coord_t >(" machine_extruder_start_pos_x" ), extruder_settings.get <coord_t >(" machine_extruder_start_pos_y" ), gcode.getPositionZ ());
165- gcode.writeTravel (p, extruder_settings.get <Velocity>(" speed_travel" ));
166- }
167-
168- calculateExtruderOrderPerLayer (storage);
169- calculatePrimeLayerPerExtruder (storage);
161+ // if (! extruder_settings.get<bool>("prime_blob_enable") and ! (extruder_settings.get<std::string>("print_sequence") == "one_at_a_time"))
162+ // {
163+ // // Setting first travel move of the first extruder to the machine start position
164+ // Point3LL p(extruder_settings.get<coord_t>("machine_extruder_start_pos_x"), extruder_settings.get<coord_t>("machine_extruder_start_pos_y"), gcode.getPositionZ());
165+ // gcode.writeTravel(p, extruder_settings.get<Velocity>("speed_travel"));
166+ // }
170167
171- if (scene.current_mesh_group ->settings .get <bool >(" magic_spiralize" ))
172- {
173- findLayerSeamsForSpiralize (storage, total_layers);
174- }
168+ // calculateExtruderOrderPerLayer(storage);
169+ // calculatePrimeLayerPerExtruder(storage);
170+ //
171+ // if (scene.current_mesh_group->settings.get<bool>("magic_spiralize"))
172+ // {
173+ // findLayerSeamsForSpiralize(storage, total_layers);
174+ // }
175175
176176 int process_layer_starting_layer_nr = 0 ;
177177 // const bool has_raft = scene.current_mesh_group->settings.get<EPlatformAdhesion>("adhesion_type") == EPlatformAdhesion::RAFT;
@@ -193,10 +193,10 @@ void FffGcodeWriter::writeGCode(SliceDataStorage& storage, TimeKeeper& time_keep
193193 // Add all possible feature generators
194194 for (const std::shared_ptr<SliceMeshStorage>& mesh : storage.meshes )
195195 {
196- feature_generators_.push_back (std::make_shared<MeshFeatureGenerator >(mesh));
196+ feature_generators_.push_back (std::make_shared<MeshInsetsGenerator >(mesh));
197197 }
198198
199- // Filter out generators that are actually useless in this context
199+ // Filter out generators that are actually useless in this context. Not highly useful, but helps for debugging.
200200 ranges::remove_if (
201201 feature_generators_,
202202 [](const std::shared_ptr<FeatureGenerator>& generator)
0 commit comments