Commit Graph

319 Commits

Author SHA1 Message Date
bubnikv
95ede7c4b8 Rewrote Fill2.pm to C++, deleted Perl infills for good.
Removed dependency on Perl Math::PlanePath module.
Fixed compilation with Visual Studio and SLIC3R_DEBUG: Visual Studio older than 2015 does not support the prinf type specifier %zu. Use %Iu instead.
C++11 move semantics enabled.
2016-11-02 10:47:00 +01:00
bubnikv
1fb57e439e Defined the +-* operators on Pointf.
Removed the deprecated VibrationLimit feature.
Added triangle infill.
The Prusa3D fork of Slic3r has been marked as "Slic3r Prusa Edition"
with menus pointing to the prusa3d/slic3r github release page
and Prusa3D drivers downloads page.
2016-10-21 16:53:42 +02:00
bubnikv
7d7f093120 C++ supports sketched, but not finalized yet. Slic3r is still using
the old Perl supports, but this time with the C++ fillers.
2016-10-16 16:30:56 +02:00
bubnikv
b7af7276c9 Instantiate the new C++ filler. It will be used for the supports first. 2016-10-03 16:59:00 +02:00
bubnikv
790b640521 Visualization of fill surfaces. 2016-09-26 13:56:24 +02:00
bubnikv
b2a6f43923 Documented perl modules. 2016-09-13 11:24:55 +02:00
bubnikv
bb9c3dd9ce Fix of git #3293: More efficient GCode export
This fixes two problems of repeatedly copying data from the C++ layer
to perl, by factoring the copying out of an inner loop.
2016-06-01 20:58:05 +02:00
Alessandro Ranellucci
4fad87e438 Fixed float comparison in combine_infill 2016-03-13 12:24:03 +01:00
Alessandro Ranellucci
a32937cef2 Refactoring: new Layer::make_fill() method 2016-02-20 20:51:07 +01:00
Alessandro Ranellucci
9dc0514844 Use bridge flow and speed for solid_infill_every_layers 2015-12-19 12:48:48 +01:00
Alessandro Ranellucci
321b1a90a2 Two fixes for --debug 2015-11-08 09:13:26 +01:00
Alessandro Ranellucci
198dc7d3bd When background processing fails because of an error, display it in an explicit dialog 2015-11-04 19:28:25 +01:00
Alessandro Ranellucci
a25757a66d Fixed regression causing empty prints to hang. #3107 2015-11-04 19:20:34 +01:00
Alessandro Ranellucci
2811af349a Added a new grid infill pattern 2015-11-01 19:03:11 +01:00
Alessandro Ranellucci
9fcec10737 Finished porting LayerRegion to C++ 2015-10-26 23:24:46 +01:00
Alessandro Ranellucci
440af2c81c Bugfix: bridge anchors were shortened under rare circumstances 2015-07-03 23:38:41 +02:00
Alessandro Ranellucci
ee66392e11 Fix numerical issues causing incomplete raft under certain circumstances. Includes a minor refactoring of raft layer logic. #2723 2015-06-02 19:44:29 +02:00
Alessandro Ranellucci
13b63d06ed Use thick raft layers as we do for support material layers. #2723 2015-03-09 20:00:55 +01:00
Alessandro Ranellucci
8654537e55 Use support material layer height for raft layer instead of object layer height. #2723 2015-03-09 19:36:23 +01:00
Alessandro Ranellucci
d8ee9dd5f5 Limit first object layer height correctly when using a larger support material extruder. #2722 2015-03-09 19:27:57 +01:00
Alessandro Ranellucci
722e94513c Refactoring: removed the non-idempotent init_extruders() step. Also, infill_extruder was not limited to the available number of extruders when slicing from the plater, and support material extruder was considered also when support material was disabled 2015-03-06 09:56:58 +01:00
Alessandro Ranellucci
45c91b2ae9 Don't trigger extra perimeters when less than 30% of the upper loops would benefit from it. #2664. Also fixes #2610 2015-02-24 00:34:43 +01:00
Alessandro Ranellucci
e88cf466fe A couple notes about infill_only_where_needed 2015-02-23 00:55:00 +01:00
Alessandro Ranellucci
2655f3f816 Better and more robust implementation of infill_only_where_needed 2015-02-23 00:44:51 +01:00
Chow Loong Jin
073681a50a Get first_layer_extrusion_width from PrintConfig instead of PrintObjectConfig
This fixes an issue where the support material doesn't honour a custom first
layer extrusion width.

Fixes: #2662
2015-02-17 13:59:46 +08:00
Alessandro Ranellucci
c0f453f83e Simpler and more robust implementation of extra perimeters. #2395 2015-02-15 21:58:14 +01:00
Alessandro Ranellucci
6eb1fa36ed Bugfix: bridge speed was still used for first object layer above raft when support_material_contact_distance == 0. Includes regression tests. #2656 2015-02-14 12:47:33 +01:00
Alessandro Ranellucci
fe4f79ba90 Fixed regression causing random loss of infill because of corrupt thin polygons returned by Clipper. #2539 2015-01-30 10:12:31 +01:00
Alessandro Ranellucci
7b980c1dc9 New option for vertical distance between object and support material, with special handling of the 0 case that disabled bridge flow/speed in order to allow for soluble material. #2491 #2272 #2069 #1942 #2435 #1703 2015-01-19 09:52:24 +01:00
Alessandro Ranellucci
9f0283f808 Minor issue when dealing with files with empty layers at bottom. #2553 2015-01-18 12:35:05 +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
4848cb7606 Ported PrintObject::bridge_over_infill() to XS 2014-12-24 10:20:55 +01:00
Alessandro Ranellucci
5d3cd792eb Make infill_only_where_needed idempotent. #2198 2014-12-24 01:29:36 +01:00
Alessandro Ranellucci
e79aa2e81c New --solid-infill-extruder option. Includes a refactoring of the strategy used to order layer extrusions according to their extruder and island; toolchanges and travel moves should be more optimized now. #618 2014-12-17 00:34:00 +01:00
Alessandro Ranellucci
e9166a8fe6 Use a semaphore to synchronize threads instead of blocking with join(). Lock threads array in order to ensure all of them are signalled. #2394 2014-12-13 15:01:53 +01:00
Alessandro Ranellucci
360dee862b Keep model objects aligned to Z = 0 in plater 2014-12-12 22:43:56 +01:00
Alessandro Ranellucci
d350241da3 Make combine_infill() completely idempotent. Includes unit testing 2014-12-08 21:23:42 +01:00
Alessandro Ranellucci
9a9ba02d85 Bugfix: infill was not correctly generated when infill_every_layers was used along with raft_layers. Includes regression test. #2396 2014-12-08 20:14:04 +01:00
Alessandro Ranellucci
eb23990d6d Ported PrintObject::total_layer_count() to XS 2014-12-01 00:00:12 +01:00
Alessandro Ranellucci
c7f5753a28 Ported PrintObject::bounding_box() to XS 2014-12-01 00:00:12 +01:00
Alessandro Ranellucci
33fe53fd7c Ported three PrintObject methods to XS 2014-11-13 00:34:56 +01:00
Alessandro Ranellucci
334086d605 Bugfix: skirt and brim were not recalculated when objects where just moved in plater 2014-11-12 23:28:42 +01:00
Alessandro Ranellucci
b69caff93c Ported LayerRegion::make_slices() to XS 2014-11-09 16:24:07 +01:00
Alessandro Ranellucci
3e4c572164 Ported some methods including add_model_object() and apply_config() to XS 2014-11-09 12:25:59 +01:00
Alessandro Ranellucci
b6bd527bdc Apply bridge flow and speed to first layer as well, when we have raft layers. This behavior is more consistent when all the other bottom surfaces lying on the void (thus on support material). #2301 2014-11-07 17:17:20 +01:00
Alessandro Ranellucci
ed17c22889 Minor cleanup of imported symbols 2014-10-25 11:15:12 +02:00
Alessandro Ranellucci
380dd8adfc Ported some methods to XS 2014-08-03 18:41:09 +02:00
Alessandro Ranellucci
d9f5fdae72 Bugfix: make_perimeters() was not truly idempotent because prepare_infill() split ->slices into typed surfaces 2014-07-15 19:07:38 +02:00
Alessandro Ranellucci
f590bbb430 Fix crash with modifier meshes not spanning the entire height of solid meshes 2014-07-12 10:38:19 +02:00
Alessandro Ranellucci
e24b3a8916 Merge branch 'call_get_layer' of github.com:sapir/Slic3r into sapir-call_get_layer
Conflicts:
	lib/Slic3r/Print.pm
2014-06-14 00:05:24 +02:00