bubnikv
ac72cd779f
Replaced Point3 with Eigen Vec3crd, removed Point3 from the Perl binding.
2018-08-21 22:14:47 +02:00
bubnikv
0b5b02e002
Eradicated the Pointf class, replaced with Eigen Vector3d
2018-08-21 21:05:24 +02:00
bubnikv
cae0806112
Eradicated most of Pointf extras compared to pure Eigen::Vector2d.
2018-08-21 20:34:45 +02:00
bubnikv
cb138a20b8
Completely replaced the homebrew Pointf3 class with Eigen Vec3d.
...
Replaced the unscale macro with a template, implemented templates
for unscaling Eigen vectors.
2018-08-21 17:43:05 +02:00
bubnikv
c5256bdd2c
Removed the Point::coincides_with_epsilon() method
2018-08-21 09:51:22 +02:00
bubnikv
65011f9382
Removed the x(), y(), z() Point/Pointf/Point3/Pointf3 accessors.
2018-08-17 15:53:43 +02:00
bubnikv
1ba64da3fe
Removed Point::scale(),translate(),coincides_with(),distance_to(),
...
distance_to_squared(),perp_distance_to(),negative(),vector_to(),
translate(), distance_to() etc,
replaced with the Eigen equivalents.
2018-08-17 14:14:24 +02:00
bubnikv
3b89717149
Changing the internal representation of Point / Pointf / Point3 / Pointf3 to Eigen Matrix types:
...
Changed the Point3 / Pointf3 to derive from the Eigen Vec3crd / Vec3d.
Replaced the Point::concide_with() method calls with == operator.
Reduced some compiler warnings.
2018-08-15 13:51:40 +02:00
bubnikv
86da661097
Changing the internal representation of Point / Pointf / Point3 / Pointf3 to Eigen Matrix types, first step
2018-08-14 18:33:26 +02:00
bubnikv
47d904a628
Changed the Slic3r coordinate type from long to int32 to match
...
the point type on Windows / Linux / OSX
to achieve the same behavior on all the 32 / 64bit systems.
(Windows always treats the long as 32bit int, while Linux treats
long as a 64bit int).
2018-02-12 18:16:10 +01:00
bubnikv
c3af189045
Reduced some compiler warnings.
2016-11-16 22:09:00 +01:00
bubnikv
620c6c7378
Ported from the playground branch. Various documentation and optimization.
2016-09-13 13:30:00 +02:00
Alessandro Ranellucci
4913e90e10
Remove any Perl related code from libslic3r
2015-12-08 00:39:54 +01:00
Alessandro Ranellucci
8791f5a493
Cleanup of some method signatures and of XS return types
2015-01-19 18:53:04 +01:00
Alessandro Ranellucci
04aa240265
Only apply perimeter/infill overlap to the endpoints of rectilinear infill (and do that in a more proper way)
2015-01-13 20:55:20 +01:00
Alessandro Ranellucci
d8be67c28b
Bugfix: Douglas-Peucker used perpendicular distance instead of shortest distance, thus clipping more than it should. #2474
2015-01-03 15:03:53 +01:00
Alessandro Ranellucci
7253dc699a
Some more work on wireframe
2014-12-21 22:52:18 +01:00
Alessandro Ranellucci
fcfb3b98bc
3D object positioning
2014-12-16 01:12:56 +01:00
Alessandro Ranellucci
9cd0a63331
Refactoring of PreviewCanvas
2014-12-15 01:28:11 +01:00
Alessandro Ranellucci
2f2ae75529
Some incomplete work for moving objects in 3D plater
2014-12-13 22:18:43 +01:00
Alessandro Ranellucci
d1f58cbed5
Objects can be selected in 3D preview now. Double click and right click work as well
2014-12-13 20:41:03 +01:00
Alessandro Ranellucci
ac495e974a
Update test
2014-12-12 23:02:28 +01:00
Alessandro Ranellucci
167df0ab87
Refactoring: moved most of the low-level G-code to the Slic3r::GCode::Base class. Cleanup of the retraction and wipe logic.
2014-10-21 20:16:45 +02:00
Alessandro Ranellucci
6adc3477c9
Moved C++ code into new libslic3r directory
2014-08-03 19:42:29 +02:00
Alessandro Ranellucci
f462af20f9
Visual preview for bed shape dialog
2014-08-03 00:20:55 +02:00
Alessandro Ranellucci
04ed3abd3f
Fix compilation on 5.18(?)
2014-06-14 23:12:03 +02:00
Alessandro Ranellucci
5dcc1eab79
Bugfix: seam_position = aligned failed in certaim circumstances because of faulty concave points detection. Includes regression test
2014-06-11 21:58:41 +02:00
Alessandro Ranellucci
ba8148f4ad
Merge branch 'printcpp' of github.com:sapir/Slic3r into sapir-printcpp
...
Conflicts:
lib/Slic3r/GCode.pm
lib/Slic3r/Print.pm
lib/Slic3r/Print/Object.pm
lib/Slic3r/Print/Region.pm
2014-06-10 14:46:40 +02:00
Alessandro Ranellucci
3d25b9030c
Bugfix: movement between objects in sequential printing mode was going too far away. #2013 #2007
2014-05-26 15:19:13 +02:00
Y. Sapir
8da0bded1d
Move Print object storage to C++. (along with its subobjects)
2014-05-24 23:50:29 +03:00
Alessandro Ranellucci
254ab29a97
New Point::projection_onto() methods
2014-05-21 20:08:21 +02:00
Alessandro Ranellucci
27c73f5983
Some fixes after the recent Model refactoring
2014-05-10 16:59:17 +02:00
Alessandro Ranellucci
76a8ec3d9e
Replace to_SV_ref() and to_SV_clone_ref() with templated glue functions
2014-05-08 14:52:48 +02:00
Y. Sapir
ad03a88733
Add xsp wrapper for Pointf class.
2014-04-28 01:13:50 +03:00
Petr Ledvina
115aa6885f
Implement type checking for XS objects
...
Type handling is mainly done using templates.
Template Slic3r::ClassTraits is used to store info about exported types (perl class name). Currently only perl class name and refference name is used.
Template values are initialized by REGISTER_CLASS macro. This macro is used in .cpp file of class ( it needs to be used exactly for each type).
Ref<type> class is used to return value as perl reference. Operator overloading is used to make c++ and XSpp happy, only pointer value should be possible to return.
Clone<type> class is used to return copy of value ( using new and copy constructor). Copy is created on assigment, this should be probably improved (memory leak on multiple assignments).
It is overloaded to be able to return type, type* and type&.
Typechecking in ExtrusionEntityCollection updated to check all passed types.
2014-04-27 19:38:56 +02:00
Alessandro Ranellucci
ca4d4211c9
Refactored signatures of many C++ methods for more efficient and safer style. Includes a bugfix for Point::nearest_point() which was returning a pointer to freed memory. #1961
2014-04-24 16:40:10 +02:00
Alessandro Ranellucci
6201aacf88
New coverage detection for bridges. Includes implementation of ExPolygon::get_trapezoids()
2014-04-24 13:44:39 +02:00
Alessandro Ranellucci
90194ee581
Fix overflow in Point::ccw() affecting convex hull generation. Includes regression test
2014-01-17 14:49:51 +01:00
Alessandro Ranellucci
0d7f0705f0
Fix overflow in distance_to(Line*). It was affecting Douglas-Peucker causing massive loss of geometry. Includes regression test and a couple wkt() implementations
2014-01-17 14:22:37 +01:00
Alessandro Ranellucci
b17d06f9d1
Finished porting BoundingBox to XS
2014-01-07 12:48:09 +01:00
Alessandro Ranellucci
e19c6a1494
Ported Point->distance_to() and Line->length()
2013-08-28 20:41:41 +02:00
Alessandro Ranellucci
b11b595c97
Ported nearest_point() and nearest_point_index()
2013-08-27 00:52:20 +02:00
Alessandro Ranellucci
9458c7db97
Fix integration of XS containers
2013-07-16 17:13:01 +02:00
Alessandro Ranellucci
ab6b3d41a7
XS interface completed, including new Line class
2013-07-15 22:57:22 +02:00
Alessandro Ranellucci
9af2a1c007
Use XS Point everywhere
2013-07-15 20:31:43 +02:00
Alessandro Ranellucci
c9749ca3b3
More integration of Slic3r::Point::XS
2013-07-15 16:04:49 +02:00
Alessandro Ranellucci
f4db7625bc
Fix destructors
2013-07-07 16:51:02 +02:00
Alessandro Ranellucci
d06ac3e31e
Rename _toPerl() to arrayref()
2013-07-07 12:41:54 +02:00
Alessandro Ranellucci
4093280566
Remove Point.cpp
2013-07-06 16:39:22 +02:00
Alessandro Ranellucci
5a11d4df89
New Slic3r::ExPolygon::XS class
2013-07-06 16:33:49 +02:00