mirror of
				https://github.com/SoftFever/OrcaSlicer.git
				synced 2025-10-31 04:31:15 -06:00 
			
		
		
		
	Function sla_trafo made accessible from outside SLAPrint.cpp unit
This commit is contained in:
		
							parent
							
								
									1c0aedbbe5
								
							
						
					
					
						commit
						5ae2f8a467
					
				
					 2 changed files with 7 additions and 4 deletions
				
			
		|  | @ -122,10 +122,10 @@ void SLAPrint::clear() | |||
| } | ||||
| 
 | ||||
| // Transformation without rotation around Z and without a shift by X and Y.
 | ||||
| static Transform3d sla_trafo(const SLAPrint& p, const ModelObject &model_object) | ||||
| Transform3d SLAPrint::sla_trafo(const ModelObject &model_object) const | ||||
| { | ||||
| 
 | ||||
|     Vec3d corr = p.relative_correction(); | ||||
|     Vec3d corr = this->relative_correction(); | ||||
| 
 | ||||
|     ModelInstance &model_instance = *model_object.instances.front(); | ||||
|     Vec3d          offset         = model_instance.get_offset(); | ||||
|  | @ -376,7 +376,7 @@ SLAPrint::ApplyStatus SLAPrint::apply(const Model &model, DynamicPrintConfig con | |||
|             bool sla_trafo_differs  = | ||||
|                 model_object.instances.empty() != model_object_new.instances.empty() || | ||||
|                 (! model_object.instances.empty() && | ||||
|                   (! sla_trafo(*this, model_object).isApprox(sla_trafo(*this, model_object_new)) || | ||||
|                   (! sla_trafo(model_object).isApprox(sla_trafo(model_object_new)) || | ||||
|                     model_object.instances.front()->is_left_handed() != model_object_new.instances.front()->is_left_handed())); | ||||
|             if (model_parts_differ || sla_trafo_differs) { | ||||
|                 // The very first step (the slicing step) is invalidated. One may freely remove all associated PrintObjects.
 | ||||
|  | @ -453,7 +453,7 @@ SLAPrint::ApplyStatus SLAPrint::apply(const Model &model, DynamicPrintConfig con | |||
| 
 | ||||
|             // FIXME: this invalidates the transformed mesh in SLAPrintObject
 | ||||
|             // which is expensive to calculate (especially the raw_mesh() call)
 | ||||
|             print_object->set_trafo(sla_trafo(*this, model_object), model_object.instances.front()->is_left_handed()); | ||||
|             print_object->set_trafo(sla_trafo(model_object), model_object.instances.front()->is_left_handed()); | ||||
| 
 | ||||
|             print_object->set_instances(std::move(new_instances)); | ||||
| 
 | ||||
|  |  | |||
|  | @ -421,6 +421,9 @@ public: | |||
|     // Extracted value from the configuration objects
 | ||||
|     Vec3d                       relative_correction() const; | ||||
| 
 | ||||
|     // Return sla tansformation for a given model_object
 | ||||
|     Transform3d sla_trafo(const ModelObject &model_object) const; | ||||
| 
 | ||||
| 	std::string                 output_filename(const std::string &filename_base = std::string()) const override; | ||||
| 
 | ||||
|     const SLAPrintStatistics&   print_statistics() const { return m_print_statistics; } | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Lukas Matena
						Lukas Matena