mirror of
				https://github.com/SoftFever/OrcaSlicer.git
				synced 2025-10-31 12:41:20 -06:00 
			
		
		
		
	Generation of preview paths moved to c++
This commit is contained in:
		
							parent
							
								
									f262ec9094
								
							
						
					
					
						commit
						a8254e0053
					
				
					 9 changed files with 879 additions and 463 deletions
				
			
		|  | @ -2199,56 +2199,36 @@ sub load_object { | |||
|     return @{$volume_indices}; | ||||
| } | ||||
| 
 | ||||
| # Create 3D thick extrusion lines for a skirt and brim. | ||||
| # Adds a new Slic3r::GUI::3DScene::Volume to $self->volumes. | ||||
| sub load_print_toolpaths { | ||||
|     my ($self, $print, $colors) = @_; | ||||
| 
 | ||||
| #============================================================================================================================== | ||||
|     my $useVBOs = Slic3r::GUI::_3DScene::use_VBOs(); | ||||
|     $self->SetCurrent($self->GetContext) if $useVBOs; | ||||
|     Slic3r::GUI::_3DScene::_load_print_toolpaths($print, $self->volumes, $colors, $useVBOs) | ||||
|         if ($print->step_done(STEP_SKIRT) && $print->step_done(STEP_BRIM)); | ||||
|      | ||||
| ## Create 3D thick extrusion lines for a skirt and brim. | ||||
| ## Adds a new Slic3r::GUI::3DScene::Volume to $self->volumes. | ||||
| #sub load_print_toolpaths { | ||||
| #    my ($self, $print, $colors) = @_; | ||||
| # | ||||
| #    $self->SetCurrent($self->GetContext) if $self->UseVBOs; | ||||
| #    Slic3r::GUI::_3DScene::_load_print_toolpaths($print, $self->volumes, $colors, $self->UseVBOs) | ||||
| #        if ($print->step_done(STEP_SKIRT) && $print->step_done(STEP_BRIM)); | ||||
| #============================================================================================================================== | ||||
| } | ||||
| 
 | ||||
| # Create 3D thick extrusion lines for object forming extrusions. | ||||
| # Adds a new Slic3r::GUI::3DScene::Volume to $self->volumes, | ||||
| # one for perimeters, one for infill and one for supports. | ||||
| sub load_print_object_toolpaths { | ||||
|     my ($self, $object, $colors) = @_; | ||||
| 
 | ||||
| #============================================================================================================================== | ||||
|     my $useVBOs = Slic3r::GUI::_3DScene::use_VBOs(); | ||||
|     $self->SetCurrent($self->GetContext) if $useVBOs; | ||||
|     Slic3r::GUI::_3DScene::_load_print_object_toolpaths($object, $self->volumes, $colors, $useVBOs); | ||||
|      | ||||
| #} | ||||
| # | ||||
| ## Create 3D thick extrusion lines for object forming extrusions. | ||||
| ## Adds a new Slic3r::GUI::3DScene::Volume to $self->volumes, | ||||
| ## one for perimeters, one for infill and one for supports. | ||||
| #sub load_print_object_toolpaths { | ||||
| #    my ($self, $object, $colors) = @_; | ||||
| # | ||||
| #    $self->SetCurrent($self->GetContext) if $self->UseVBOs; | ||||
| #    Slic3r::GUI::_3DScene::_load_print_object_toolpaths($object, $self->volumes, $colors, $self->UseVBOs); | ||||
| #============================================================================================================================== | ||||
| } | ||||
| 
 | ||||
| # Create 3D thick extrusion lines for wipe tower extrusions. | ||||
| sub load_wipe_tower_toolpaths { | ||||
|     my ($self, $print, $colors) = @_; | ||||
| 
 | ||||
| #============================================================================================================================== | ||||
|     my $useVBOs = Slic3r::GUI::_3DScene::use_VBOs(); | ||||
|     $self->SetCurrent($self->GetContext) if $useVBOs; | ||||
|     Slic3r::GUI::_3DScene::_load_wipe_tower_toolpaths($print, $self->volumes, $colors, $useVBOs) | ||||
|         if ($print->step_done(STEP_WIPE_TOWER)); | ||||
|         | ||||
| #} | ||||
| # | ||||
| ## Create 3D thick extrusion lines for wipe tower extrusions. | ||||
| #sub load_wipe_tower_toolpaths { | ||||
| #    my ($self, $print, $colors) = @_; | ||||
| #        | ||||
| #    $self->SetCurrent($self->GetContext) if $self->UseVBOs; | ||||
| #    Slic3r::GUI::_3DScene::_load_wipe_tower_toolpaths($print, $self->volumes, $colors, $self->UseVBOs) | ||||
| #        if ($print->step_done(STEP_WIPE_TOWER)); | ||||
| #============================================================================================================================== | ||||
| } | ||||
| 
 | ||||
| #============================================================================================================================== | ||||
| #} | ||||
| # | ||||
| #sub load_gcode_preview { | ||||
| #    my ($self, $print, $gcode_preview_data, $colors) = @_; | ||||
| # | ||||
|  |  | |||
|  | @ -376,10 +376,18 @@ sub load_print { | |||
| 
 | ||||
|         if ($self->gcode_preview_data->empty) { | ||||
|             # load skirt and brim | ||||
|             $self->canvas->load_print_toolpaths($self->print, \@colors); | ||||
|             $self->canvas->load_wipe_tower_toolpaths($self->print, \@colors);         | ||||
| #============================================================================================================================== | ||||
|             Slic3r::GUI::_3DScene::set_print($self->canvas, $self->print); | ||||
|             Slic3r::GUI::_3DScene::load_print_toolpaths($self->canvas); | ||||
|             Slic3r::GUI::_3DScene::load_wipe_tower_toolpaths($self->canvas, \@colors); | ||||
| #            $self->canvas->load_print_toolpaths($self->print, \@colors); | ||||
| #            $self->canvas->load_wipe_tower_toolpaths($self->print, \@colors);         | ||||
| #============================================================================================================================== | ||||
|             foreach my $object (@{$self->print->objects}) { | ||||
|                 $self->canvas->load_print_object_toolpaths($object, \@colors);             | ||||
| #============================================================================================================================== | ||||
|                 Slic3r::GUI::_3DScene::load_print_object_toolpaths($self->canvas, $object, \@colors); | ||||
| #                $self->canvas->load_print_object_toolpaths($object, \@colors);             | ||||
| #============================================================================================================================== | ||||
|                 # Show the objects in very transparent color. | ||||
|                 #my @volume_ids = $self->canvas->load_object($object->model_object); | ||||
|                 #$self->canvas->volumes->[$_]->color->[3] = 0.2 for @volume_ids; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue
	
	 Enrico Turri
						Enrico Turri