Removed 3DScene volumes from perl

This commit is contained in:
Enrico Turri 2018-06-11 13:48:02 +02:00
parent efe6a29032
commit 085110c4d9
11 changed files with 160 additions and 44 deletions

View file

@ -34,9 +34,6 @@ use Wx::GLCanvas qw(:all);
# volumes: reference to vector of Slic3r::GUI::3DScene::Volume.
#==============================================================================================================================
__PACKAGE__->mk_accessors( qw(
volumes
) );
#__PACKAGE__->mk_accessors( qw(_quat _dirty init
# enable_picking
# enable_moving
@ -165,17 +162,11 @@ sub new {
# $self->use_plain_shader(0);
# $self->_apply_zoom_to_volumes_filter(0);
# $self->_mouse_dragging(0);
#==============================================================================================================================
# Collection of GLVolume objects
$self->volumes(Slic3r::GUI::_3DScene::GLVolume::Collection->new);
#==============================================================================================================================
Slic3r::GUI::_3DScene::set_volumes($self, $self->volumes);
Slic3r::GUI::_3DScene::reset_volumes($self);
#==============================================================================================================================
# 3D point in model space
#==============================================================================================================================
#
# # Collection of GLVolume objects
# $self->volumes(Slic3r::GUI::_3DScene::GLVolume::Collection->new);
#
# # 3D point in model space
# $self->_camera_type('ortho');
## $self->_camera_type('perspective');
# $self->_camera_target(Slic3r::Pointf3->new(0,0,0));

View file

@ -2109,7 +2109,10 @@ sub object_list_changed {
}
my $export_in_progress = $self->{export_gcode_output_file} || $self->{send_gcode_file};
my $model_fits = $self->{canvas3D} ? $self->{canvas3D}->volumes->check_outside_state($self->{config}) : 1;
#==============================================================================================================================
my $model_fits = $self->{canvas3D} ? Slic3r::GUI::_3DScene::check_volumes_outside_state($self->{canvas3D}, $self->{config}) : 1;
# my $model_fits = $self->{canvas3D} ? $self->{canvas3D}->volumes->check_outside_state($self->{config}) : 1;
#==============================================================================================================================
my $method = ($have_objects && ! $export_in_progress && $model_fits) ? 'Enable' : 'Disable';
$self->{"btn_$_"}->$method
for grep $self->{"btn_$_"}, qw(reslice export_gcode print send_gcode);

View file

@ -398,10 +398,11 @@ sub load_print {
# $self->canvas->reset_legend_texture();
#==============================================================================================================================
} else {
$self->{force_sliders_full_range} = (scalar(@{$self->canvas->volumes}) == 0);
#==============================================================================================================================
$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');

View file

@ -280,7 +280,10 @@ sub selection_changed {
# deselect all meshes
if ($self->{canvas}) {
$_->set_selected(0) for @{$self->{canvas}->volumes};
#==============================================================================================================================
Slic3r::GUI::_3DScene::deselect_volumes($self->{canvas});
# $_->set_selected(0) for @{$self->{canvas}->volumes};
#==============================================================================================================================
}
# disable things as if nothing is selected
@ -308,7 +311,10 @@ sub selection_changed {
if ($itemData->{type} eq 'volume') {
# select volume in 3D preview
if ($self->{canvas}) {
$self->{canvas}->volumes->[ $itemData->{volume_id} ]->set_selected(1);
#==============================================================================================================================
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;
@ -450,7 +456,10 @@ 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)) {
$self->{canvas}->volumes->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);
}
@ -463,7 +472,10 @@ 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)) {
$self->{canvas}->volumes->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);
}
@ -570,7 +582,10 @@ sub _update_canvas {
# restore selection, if any
if (my $itemData = $self->get_selection) {
if ($itemData->{type} eq 'volume') {
$self->{canvas}->volumes->[ $itemData->{volume_id} ]->set_selected(1);
#==============================================================================================================================
Slic3r::GUI::_3DScene::select_volume($self->{canvas}, $itemData->{volume_id});
# $self->{canvas}->volumes->[ $itemData->{volume_id} ]->set_selected(1);
#==============================================================================================================================
}
}