Another set of 3DScene methods moved to c++

This commit is contained in:
Enrico Turri 2018-06-04 15:42:34 +02:00
parent 9729c71691
commit d74b85f3fe
13 changed files with 151 additions and 62 deletions

View file

@ -310,7 +310,10 @@ sub refresh_print {
sub reset_gcode_preview_data {
my ($self) = @_;
$self->gcode_preview_data->reset;
$self->canvas->reset_legend_texture();
#==============================================================================================================================
Slic3r::GUI::_3DScene::reset_legend_texture();
# $self->canvas->reset_legend_texture();
#==============================================================================================================================
}
sub load_print {
@ -335,7 +338,10 @@ sub load_print {
if ($n_layers == 0) {
$self->reset_sliders;
$self->canvas->reset_legend_texture();
#==============================================================================================================================
Slic3r::GUI::_3DScene::reset_legend_texture();
# $self->canvas->reset_legend_texture();
#==============================================================================================================================
$self->canvas->Refresh; # clears canvas
return;
}
@ -379,14 +385,20 @@ sub load_print {
#$self->canvas->volumes->[$_]->color->[3] = 0.2 for @volume_ids;
}
$self->show_hide_ui_elements('simple');
$self->canvas->reset_legend_texture();
#==============================================================================================================================
Slic3r::GUI::_3DScene::reset_legend_texture();
# $self->canvas->reset_legend_texture();
#==============================================================================================================================
} else {
$self->{force_sliders_full_range} = (scalar(@{$self->canvas->volumes}) == 0);
$self->canvas->load_gcode_preview($self->print, $self->gcode_preview_data, \@colors);
$self->show_hide_ui_elements('full');
# recalculates zs and update sliders accordingly
$self->{layers_z} = $self->canvas->get_current_print_zs(1);
#==============================================================================================================================
$self->{layers_z} = Slic3r::GUI::_3DScene::get_current_print_zs($self->canvas, 1);
# $self->{layers_z} = $self->canvas->get_current_print_zs(1);
#==============================================================================================================================
$n_layers = scalar(@{$self->{layers_z}});
if ($n_layers == 0) {
# all layers filtered out
@ -472,7 +484,10 @@ sub set_z_range
$self->{z_label_low}->SetLabel(sprintf '%.2f', $z_low);
$self->{z_label_high}->SetLabel(sprintf '%.2f', $z_high);
my $layers_z = $self->canvas->get_current_print_zs(0);
#==============================================================================================================================
my $layers_z = Slic3r::GUI::_3DScene::get_current_print_zs($self->canvas, 0);
# my $layers_z = $self->canvas->get_current_print_zs(0);
#==============================================================================================================================
for (my $i = 0; $i < scalar(@{$layers_z}); $i += 1) {
if (($z_low - 1e-6 < @{$layers_z}[$i]) && (@{$layers_z}[$i] < $z_low + 1e-6)) {
$self->{z_label_low_idx}->SetLabel(sprintf '%d', $i + 1);
@ -486,7 +501,10 @@ sub set_z_range
}
}
$self->canvas->set_toolpaths_range($z_low - 1e-6, $z_high + 1e-6);
#==============================================================================================================================
Slic3r::GUI::_3DScene::set_toolpaths_range($self->canvas, $z_low - 1e-6, $z_high + 1e-6);
# $self->canvas->set_toolpaths_range($z_low - 1e-6, $z_high + 1e-6);
#==============================================================================================================================
$self->canvas->Refresh if $self->IsShown;
}