PrusaSlicer-NonPlainar/xs/lib/Slic3r/XS.pm

36 lines
687 B
Perl
Raw Normal View History

2013-06-22 15:16:45 +00:00
package Slic3r::XS;
use warnings;
use strict;
our $VERSION = '0.01';
use XSLoader;
XSLoader::load(__PACKAGE__, $VERSION);
2013-07-06 13:26:32 +00:00
package Slic3r::Point::XS;
use overload
2013-07-07 10:41:54 +00:00
'@{}' => sub { $_[0]->arrayref };
2013-06-22 15:16:45 +00:00
2013-07-06 14:33:49 +00:00
package Slic3r::ExPolygon::XS;
use overload
2013-07-07 10:41:54 +00:00
'@{}' => sub { $_[0]->arrayref };
2013-07-06 14:33:49 +00:00
2013-07-07 13:06:01 +00:00
sub clone { (ref $_[0])->_clone($_[0]) }
2013-07-11 16:55:51 +00:00
# to handle legacy code
sub rotate {
my $self = shift;
my ($angle, $center) = @_;
$center = Slic3r::Point::XS->new(@$center) if ref($center) ne 'Slic3r::Point::XS';
$self->_rotate($angle, $center);
}
package Slic3r::ExPolygon::Collection;
use overload
'@{}' => sub { $_[0]->arrayref };
sub clone { (ref $_[0])->_clone($_[0]) }
2013-06-22 15:16:45 +00:00
1;