Partial perl code cleanup

This commit is contained in:
Enrico Turri 2018-06-14 16:09:36 +02:00
parent c624d6bb0a
commit 52a7d7ed09
8 changed files with 2 additions and 270 deletions

View file

@ -222,10 +222,7 @@ sub mouse_event {
];
$self->{drag_object} = [ $obj_idx, $instance_idx ];
} elsif ($event->RightDown) {
#=======================================================================================================================================
$self->{on_right_click}->($pos->x, $pos->y);
# $self->{on_right_click}->($pos);
#=======================================================================================================================================
}
last OBJECTS;

View file

@ -24,10 +24,7 @@ sub new {
# init GUI elements
my $canvas = Slic3r::GUI::3DScene->new($self);
#===================================================================================================================================
Slic3r::GUI::_3DScene::enable_shader($canvas, 1);
# $canvas->use_plain_shader(1);
#===================================================================================================================================
$self->canvas($canvas);
my $slider_low = Wx::Slider->new(
$self, -1,
@ -281,10 +278,7 @@ sub new {
sub reload_print {
my ($self, $force) = @_;
#==============================================================================================================================
Slic3r::GUI::_3DScene::reset_volumes($self->canvas);
# $self->canvas->reset_objects;
#==============================================================================================================================
$self->_loaded(0);
if (! $self->IsShown && ! $force) {
@ -310,10 +304,7 @@ sub refresh_print {
sub reset_gcode_preview_data {
my ($self) = @_;
$self->gcode_preview_data->reset;
#==============================================================================================================================
Slic3r::GUI::_3DScene::reset_legend_texture();
# $self->canvas->reset_legend_texture();
#==============================================================================================================================
}
sub load_print {
@ -338,10 +329,7 @@ sub load_print {
if ($n_layers == 0) {
$self->reset_sliders;
#==============================================================================================================================
Slic3r::GUI::_3DScene::reset_legend_texture();
# $self->canvas->reset_legend_texture();
#==============================================================================================================================
$self->canvas->Refresh; # clears canvas
return;
}
@ -376,42 +364,25 @@ sub load_print {
if ($self->gcode_preview_data->empty) {
# load skirt and brim
#==============================================================================================================================
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}) {
#==============================================================================================================================
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;
}
$self->show_hide_ui_elements('simple');
#==============================================================================================================================
Slic3r::GUI::_3DScene::reset_legend_texture();
# $self->canvas->reset_legend_texture();
#==============================================================================================================================
} else {
#==============================================================================================================================
$self->{force_sliders_full_range} = (Slic3r::GUI::_3DScene::get_volumes_count($self->canvas) == 0);
Slic3r::GUI::_3DScene::set_print($self->canvas, $self->print);
Slic3r::GUI::_3DScene::load_gcode_preview($self->canvas, $self->gcode_preview_data, \@colors);
# $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} = 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
@ -497,10 +468,7 @@ 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 = 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);
@ -514,10 +482,7 @@ sub set_z_range
}
}
#==============================================================================================================================
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;
}
@ -547,13 +512,6 @@ sub set_z_idx_high
}
}
#==============================================================================================================================
#sub set_bed_shape {
# my ($self, $bed_shape) = @_;
# $self->canvas->set_bed_shape($bed_shape);
#}
#==============================================================================================================================
sub set_number_extruders {
my ($self, $number_extruders) = @_;
if ($self->{number_extruders} != $number_extruders) {

View file

@ -9,9 +9,7 @@ use utf8;
use Slic3r::Geometry qw(PI X);
use Wx qw(wxTheApp :dialog :id :misc :sizer wxTAB_TRAVERSAL);
use Wx::Event qw(EVT_CLOSE EVT_BUTTON);
#==============================================================================================================================
use List::Util qw(max);
#==============================================================================================================================
use base 'Wx::Dialog';
sub new {
@ -115,20 +113,13 @@ sub new {
my $canvas;
if ($Slic3r::GUI::have_OpenGL) {
$canvas = $self->{canvas} = Slic3r::GUI::3DScene->new($self);
#==============================================================================================================================
Slic3r::GUI::_3DScene::load_model_object($self->{canvas}, $self->{model_object}, 0, [0]);
Slic3r::GUI::_3DScene::set_auto_bed_shape($canvas);
Slic3r::GUI::_3DScene::set_axes_length($canvas, 2.0 * max(@{ Slic3r::GUI::_3DScene::get_volumes_bounding_box($canvas)->size }));
# $canvas->load_object($self->{model_object}, undef, undef, [0]);
# $canvas->set_auto_bed_shape;
#==============================================================================================================================
$canvas->SetSize([500,500]);
$canvas->SetMinSize($canvas->GetSize);
#==============================================================================================================================
Slic3r::GUI::_3DScene::set_config($canvas, $self->GetParent->{config});
Slic3r::GUI::_3DScene::enable_force_zoom_to_bed($canvas, 1);
#==============================================================================================================================
}
$self->{sizer} = Wx::BoxSizer->new(wxHORIZONTAL);
@ -157,9 +148,7 @@ sub new {
# Note that the window was already closed, so a pending update will not be executed.
$self->{already_closed} = 1;
$self->EndModal(wxID_OK);
#=============================================================================================================================
$self->{canvas}->Destroy;
#=============================================================================================================================
$self->Destroy();
});
@ -167,9 +156,7 @@ sub new {
# Note that the window was already closed, so a pending update will not be executed.
$self->{already_closed} = 1;
$self->EndModal(wxID_CANCEL);
#=============================================================================================================================
$self->{canvas}->Destroy;
#=============================================================================================================================
$self->Destroy();
});
@ -261,21 +248,11 @@ sub _update {
$expolygon->translate(map Slic3r::Geometry::scale($_), @{ $self->{model_object}->instances->[0]->offset });
}
#==============================================================================================================================
Slic3r::GUI::_3DScene::reset_volumes($self->{canvas});
Slic3r::GUI::_3DScene::load_model_object($self->{canvas}, $_, 0, [0]) for @objects;
Slic3r::GUI::_3DScene::set_cutting_plane($self->{canvas}, $self->{cut_options}{z}, [@expolygons]);
Slic3r::GUI::_3DScene::update_volumes_colors_by_extruder($self->{canvas});
Slic3r::GUI::_3DScene::render($self->{canvas});
# $self->{canvas}->reset_objects;
# $self->{canvas}->load_object($_, undef, undef, [0]) for @objects;
# $self->{canvas}->SetCuttingPlane(
# $self->{cut_options}{z},
# [@expolygons],
# );
# $self->{canvas}->update_volumes_colors_by_extruder($self->GetParent->{config});
# $self->{canvas}->Render;
#==============================================================================================================================
}
}

View file

@ -10,9 +10,7 @@ use File::Basename qw(basename);
use Wx qw(:misc :sizer :treectrl :button :keycode wxTAB_TRAVERSAL wxSUNKEN_BORDER wxBITMAP_TYPE_PNG wxID_CANCEL wxMOD_CONTROL
wxTheApp);
use Wx::Event qw(EVT_BUTTON EVT_TREE_ITEM_COLLAPSING EVT_TREE_SEL_CHANGED EVT_TREE_KEY_DOWN EVT_KEY_DOWN);
#==============================================================================================================================
use List::Util qw(max);
#==============================================================================================================================
use base 'Wx::Panel';
use constant ICON_OBJECT => 0;
@ -153,7 +151,6 @@ sub new {
my $canvas;
if ($Slic3r::GUI::have_OpenGL) {
$canvas = $self->{canvas} = Slic3r::GUI::3DScene->new($self);
#==============================================================================================================================
Slic3r::GUI::_3DScene::enable_picking($canvas, 1);
Slic3r::GUI::_3DScene::set_select_by($canvas, 'volume');
Slic3r::GUI::_3DScene::register_on_select_object_callback($canvas, sub {
@ -163,24 +160,10 @@ sub new {
Slic3r::GUI::_3DScene::load_model_object($canvas, $self->{model_object}, 0, [0]);
Slic3r::GUI::_3DScene::set_auto_bed_shape($canvas);
Slic3r::GUI::_3DScene::set_axes_length($canvas, 2.0 * max(@{ Slic3r::GUI::_3DScene::get_volumes_bounding_box($canvas)->size }));
# $canvas->enable_picking(1);
# $canvas->select_by('volume');
# $canvas->on_select(sub {
# my ($volume_idx) = @_;
# # convert scene volume to model object volume
# $self->reload_tree(($volume_idx == -1) ? undef : $canvas->volumes->[$volume_idx]->volume_idx);
# });
# $canvas->load_object($self->{model_object}, undef, undef, [0]);
# $canvas->set_auto_bed_shape;
#==============================================================================================================================
$canvas->SetSize([500,700]);
#==============================================================================================================================
Slic3r::GUI::_3DScene::set_config($canvas, $self->GetParent->GetParent->GetParent->{config});
Slic3r::GUI::_3DScene::update_volumes_colors_by_extruder($canvas);
Slic3r::GUI::_3DScene::enable_force_zoom_to_bed($canvas, 1);
# $canvas->update_volumes_colors_by_extruder($self->GetParent->GetParent->GetParent->{config});
#==============================================================================================================================
}
$self->{sizer} = Wx::BoxSizer->new(wxHORIZONTAL);
@ -280,10 +263,7 @@ sub selection_changed {
# deselect all meshes
if ($self->{canvas}) {
#==============================================================================================================================
Slic3r::GUI::_3DScene::deselect_volumes($self->{canvas});
# $_->set_selected(0) for @{$self->{canvas}->volumes};
#==============================================================================================================================
}
# disable things as if nothing is selected
@ -311,10 +291,7 @@ sub selection_changed {
if ($itemData->{type} eq 'volume') {
# select volume in 3D preview
if ($self->{canvas}) {
#==============================================================================================================================
Slic3r::GUI::_3DScene::select_volume($self->{canvas}, $itemData->{volume_id});
# $self->{canvas}->volumes->[ $itemData->{volume_id} ]->set_selected(1);
#==============================================================================================================================
}
$self->{btn_delete}->Enable;
$self->{btn_split}->Enable;
@ -357,10 +334,7 @@ sub selection_changed {
$self->{settings_panel}->enable;
}
#==============================================================================================================================
Slic3r::GUI::_3DScene::render($self->{canvas}) if $self->{canvas};
# $self->{canvas}->Render if $self->{canvas};
#==============================================================================================================================
}
sub on_btn_load {
@ -456,10 +430,7 @@ sub on_btn_move_up {
if ($itemData && $itemData->{type} eq 'volume') {
my $volume_id = $itemData->{volume_id};
if ($self->{model_object}->move_volume_up($volume_id)) {
#==============================================================================================================================
Slic3r::GUI::_3DScene::move_volume_up($self->{canvas}, $volume_id);
# $self->{canvas}->volumes->move_volume_up($volume_id);
#==============================================================================================================================
$self->{parts_changed} = 1;
$self->reload_tree($volume_id - 1);
}
@ -472,10 +443,7 @@ sub on_btn_move_down {
if ($itemData && $itemData->{type} eq 'volume') {
my $volume_id = $itemData->{volume_id};
if ($self->{model_object}->move_volume_down($volume_id)) {
#==============================================================================================================================
Slic3r::GUI::_3DScene::move_volume_down($self->{canvas}, $volume_id);
# $self->{canvas}->volumes->move_volume_down($volume_id);
#==============================================================================================================================
$self->{parts_changed} = 1;
$self->reload_tree($volume_id + 1);
}
@ -520,18 +488,11 @@ sub _parts_changed {
$self->reload_tree;
if ($self->{canvas}) {
#==============================================================================================================================
Slic3r::GUI::_3DScene::reset_volumes($self->{canvas});
Slic3r::GUI::_3DScene::load_model_object($self->{canvas}, $self->{model_object}, 0, [0]);
Slic3r::GUI::_3DScene::zoom_to_volumes($self->{canvas});
Slic3r::GUI::_3DScene::update_volumes_colors_by_extruder($self->{canvas});
Slic3r::GUI::_3DScene::render($self->{canvas});
# $self->{canvas}->reset_objects;
# $self->{canvas}->load_object($self->{model_object});
# $self->{canvas}->zoom_to_volumes;
# $self->{canvas}->update_volumes_colors_by_extruder($self->GetParent->GetParent->GetParent->{config});
# $self->{canvas}->Render;
#==============================================================================================================================
}
}
@ -551,12 +512,10 @@ sub CanClose {
return ! Slic3r::GUI::catch_error($self);
}
#=============================================================================================================================
sub Destroy {
my ($self) = @_;
$self->{canvas}->Destroy if ($self->{canvas});
}
#=============================================================================================================================
sub PartsChanged {
my ($self) = @_;
@ -572,29 +531,18 @@ sub _update_canvas {
my ($self) = @_;
if ($self->{canvas}) {
#==============================================================================================================================
Slic3r::GUI::_3DScene::reset_volumes($self->{canvas});
Slic3r::GUI::_3DScene::load_model_object($self->{canvas}, $self->{model_object}, 0, [0]);
# $self->{canvas}->reset_objects;
# $self->{canvas}->load_object($self->{model_object});
#==============================================================================================================================
# restore selection, if any
if (my $itemData = $self->get_selection) {
if ($itemData->{type} eq 'volume') {
#==============================================================================================================================
Slic3r::GUI::_3DScene::select_volume($self->{canvas}, $itemData->{volume_id});
# $self->{canvas}->volumes->[ $itemData->{volume_id} ]->set_selected(1);
#==============================================================================================================================
}
}
#==============================================================================================================================
Slic3r::GUI::_3DScene::update_volumes_colors_by_extruder($self->{canvas});
Slic3r::GUI::_3DScene::render($self->{canvas});
# $self->{canvas}->update_volumes_colors_by_extruder($self->GetParent->GetParent->GetParent->{config});
# $self->{canvas}->Render;
#==============================================================================================================================
}
}
@ -616,16 +564,10 @@ sub _update {
$self->{parts_changed} = 1;
my @objects = ();
push @objects, $self->{model_object};
#==============================================================================================================================
Slic3r::GUI::_3DScene::reset_volumes($self->{canvas});
Slic3r::GUI::_3DScene::load_model_object($self->{canvas}, $_, 0, [0]) for @objects;
Slic3r::GUI::_3DScene::update_volumes_colors_by_extruder($self->{canvas});
Slic3r::GUI::_3DScene::render($self->{canvas});
# $self->{canvas}->reset_objects;
# $self->{canvas}->load_object($_, undef, [0]) for @objects;
# $self->{canvas}->update_volumes_colors_by_extruder($self->GetParent->GetParent->GetParent->{config});
# $self->{canvas}->Render;
#==============================================================================================================================
}
1;

View file

@ -36,9 +36,7 @@ sub new {
wxTheApp->save_window_pos($self, "object_settings");
$self->EndModal(wxID_OK);
#=============================================================================================================================
$self->{parts}->Destroy;
#=============================================================================================================================
$self->Destroy;
});