Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/supermerill/SuperSlicer.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/utils
diff options
context:
space:
mode:
authorAlessandro Ranellucci <aar@cpan.org>2014-12-15 17:19:42 +0300
committerAlessandro Ranellucci <aar@cpan.org>2014-12-15 17:19:42 +0300
commita82f95e9034c5bf59c2c40e24a57a6ee30692601 (patch)
tree7331dfc795d4d213a512ee1a3fc381e54e8c8d32 /utils
parenta34cd24fa138a3269e168d1518cbe64255f3c15f (diff)
Some initial work for 3D slice rendering
Diffstat (limited to 'utils')
-rwxr-xr-xutils/view-toolpaths.pl23
1 files changed, 21 insertions, 2 deletions
diff --git a/utils/view-toolpaths.pl b/utils/view-toolpaths.pl
index 0e05a15a7..66ee226db 100755
--- a/utils/view-toolpaths.pl
+++ b/utils/view-toolpaths.pl
@@ -20,6 +20,7 @@ my %opt = ();
my %options = (
'help' => sub { usage() },
'load=s' => \$opt{load},
+ '3D' => \$opt{d3},
'duplicate=i' => \$opt{duplicate},
);
GetOptions(%options) or usage(1);
@@ -46,6 +47,7 @@ my %opt = ();
# visualize toolpaths
$Slic3r::ViewToolpaths::print = $sprint->_print;
+ $Slic3r::ViewToolpaths::d3 = $opt{d3};
my $app = Slic3r::ViewToolpaths->new;
$app->MainLoop;
}
@@ -67,9 +69,10 @@ EOF
package Slic3r::ViewToolpaths;
use Wx qw(:sizer);
-use base qw(Wx::App);
+use base qw(Wx::App Class::Accessor);
our $print;
+our $d3;
sub OnInit {
my $self = shift;
@@ -77,8 +80,24 @@ sub OnInit {
my $frame = Wx::Frame->new(undef, -1, 'Toolpaths', [-1, -1], [500, 500]);
my $panel = Wx::Panel->new($frame, -1);
+ my $canvas;
+ if ($d3) {
+ $canvas = Slic3r::GUI::PreviewCanvas->new($panel);
+ $canvas->print($print);
+
+ #$canvas->set_bounding_box($print->bounding_box);
+ $canvas->set_bed_shape($print->config->bed_shape);
+ $canvas->set_bounding_box($print->objects->[0]->model_object->bounding_box);
+
+ foreach my $object (@{$print->objects}) {
+ $canvas->load_object($object->model_object);
+ }
+ } else {
+ $canvas = Slic3r::GUI::Plater::2DToolpaths->new($panel, $print);
+ }
+
my $sizer = Wx::BoxSizer->new(wxVERTICAL);
- $sizer->Add(Slic3r::GUI::Plater::2DToolpaths->new($panel, $print), 1, wxEXPAND, 0);
+ $sizer->Add($canvas, 1, wxEXPAND, 0);
$panel->SetSizer($sizer);
$frame->Show(1);