Commit Graph

570 Commits

Author SHA1 Message Date
Alessandro Ranellucci
86c8207d31 Ported make_perimeters() and infill() to C++/XS, use pure C++ threads, cherry picked from @alexrj 66591bcc556c01572ec7519b1f8cb4ee2d430685 2016-12-08 14:24:40 +01:00
bubnikv
695c92fb00 CLIPPER_OFFSET_SCALE was made a power of two, the scaling functions
inside ClipperUtils are now using bit shifts instead of multiplication
by doubles, which makes the scaling precise.

Removed the scale parameter from all offset functions.

Modified the safety offset to calculate offset per polygon instead
of over all polygons at once. The old way was not safe and very slow,
sometimes this meant a kiss of death for supports for example.
2016-11-28 17:33:17 +01:00
bubnikv
bfb336df0c Refactored Print::validate() method to not throw an exception, but
to return a string with an error message instead. This was necessary
to avoid a hang-up on some Strawberry Perl distributions, when
a perl "croak" function is called after a C++ exception is caught.
2016-11-05 02:23:46 +01:00
bubnikv
b2a6f43923 Documented perl modules. 2016-09-13 11:24:55 +02:00
Alessandro Ranellucci
7c8b71012c Force the 'nearest' strategy for starting skirt loops 2015-12-21 15:02:39 +01:00
Alessandro Ranellucci
3c862836f2 Refactored the Config XS bindings 2015-12-16 12:33:19 +01:00
Alessandro Ranellucci
3a9cf91f83 Ported a couple more methods to XS 2015-12-02 18:29:33 +01:00
Alessandro Ranellucci
580d28d071 Finished porting PlaceholderParser to XS 2015-07-01 19:35:22 +02:00
Alessandro Ranellucci
c64308a5e7 Render brim and skirt in 3D toolpaths preview. #2649 2015-05-18 00:49:16 +02:00
Alessandro Ranellucci
7d81aee62f Added the [scale] placeholder. #2791 2015-05-02 21:59:15 +02: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
9d435c8f4d Bugfix: we can't check for executability of post-processing scripts on Windows. #2616 2015-03-02 21:49:05 +01:00
Alessandro Ranellucci
a07c48bb30 Fixed regression causing [input_filename] and [input_filename_base] not being available in custom G-code anymore. Includes regression test. #1507 2015-02-15 23:47:35 +01:00
Alessandro Ranellucci
2d3fdf920b Fixed SVG export not placing object inside the SVG viewport anymore. #2601 2015-01-30 19:34:46 +01:00
Alessandro Ranellucci
8605969dc5 Don't output slic3r:z attribute in SVG for raft layers 2015-01-30 18:45:30 +01:00
Alessandro Ranellucci
90afbc8bd9 Bugfix: don't crash when skirts > 0 but skirt_height = 0. Includes regression test. #2537 2015-01-18 13:01:00 +01:00
Alessandro Ranellucci
35da87a90a Check whether the configured post-processing scripts are executable and show an error when they aren't 2015-01-17 10:50:34 +01:00
Alessandro Ranellucci
b77d35f6f1 Don't autoassign extruders to material config. #2522 2015-01-16 16:35:35 +01:00
Alessandro Ranellucci
e8dc981774 Fixes to Ooze Prevention 2014-12-29 00:51:27 +01:00
Alessandro Ranellucci
c00061678b Use perimeter extruder for brim. #618 2014-12-17 00:45:05 +01:00
Alessandro Ranellucci
d9cffeca4a Bugfix: adjust skirt flow according to each layer's height. #2307 2014-12-16 18:55:16 +01:00
Alessandro Ranellucci
e8ab9ac13a Ported Print::bounding_box(), Print::total_bounding_box(), Print::skirt_flow(), Print:skirt_first_layer_height() to XS 2014-12-12 22:43:56 +01:00
Alessandro Ranellucci
98cb9f0e18 Refactoring: moved G-code export logic into new Slic3r::Print::GCode class. Removed Slic3r::GCode::Layer class. Fixes the order of post-processing filters so that cooling buffer is applied before any other filter whose logic is affected by speeds 2014-12-01 00:00:11 +01:00
Alessandro Ranellucci
ff9b53260d New experimental feature for pressure management. Credits to @llluis for the original implementation. #1203 #1677 #2018 2014-11-24 18:22:39 +01:00
Alessandro Ranellucci
c1e26a70f8 Refactoring: move ooze prevention, wipe and avoid crossing perimeters into nested classes for better isolation 2014-11-23 15:13:40 +01:00
Alessandro Ranellucci
a5787cfb04 Merge branch 'xs-reload-object'
Conflicts:
	lib/Slic3r/Print.pm
2014-11-12 22:51:48 +01:00
Alessandro Ranellucci
6135a9fb8b Bugfix: a move below z_offset was performed when retract_lift was enabled and lift amount was less than z_offset. Includes regression test. #2349 2014-11-09 19:24:17 +01:00
Alessandro Ranellucci
ee3fb7caa2 Ported GCodeWriter to XS (faster G-code export!) 2014-11-09 19:02:45 +01:00
Alessandro Ranellucci
bad0bd8520 Ported Print::validate() to XS 2014-11-09 15:27:34 +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
d645dabcff Ported reload_object() to XS 2014-11-07 20:25:05 +01:00
Alessandro Ranellucci
12ba7201c0 Fixed regression causing per-volume settings to be ignored upon background recalculation. #2277 2014-11-07 20:14:02 +01:00
Alessandro Ranellucci
9372abb51e Fixed regression in min_skirt_length. Includes regression test. #2337 2014-11-06 21:11:59 +01:00
Alessandro Ranellucci
30b0869595 Bugfix: crash when slicing one layer objects with sailfish G-code flavor. Includes regression test. #2335 2014-11-06 21:06:09 +01:00
Alessandro Ranellucci
268de5c8e5 More refactoring to GCode.pm: make writer() public and fix usage of Slic3r::GCode without a Slic3r::Layer object 2014-10-28 21:47:09 +01:00
Alessandro Ranellucci
a38ec14cb1 Some minor refactoring and cleaning to the travel_to() method and new init_external_mp() method 2014-10-27 10:34:51 +01:00
Alessandro Ranellucci
ed17c22889 Minor cleanup of imported symbols 2014-10-25 11:15:12 +02:00
Alessandro Ranellucci
36c1a9d20c Renamed shift_x and shift_y into origin 2014-10-25 10:56:21 +02:00
Alessandro Ranellucci
7f57f007cd Refactoring: moved Slic3r::GCode::Base to Slic3r::GCode::Writer 2014-10-25 10:42:07 +02:00
Alessandro Ranellucci
c2e710d092 Removed --g0 2014-10-21 21:41:11 +02:00
Alessandro Ranellucci
71ec90a1dd Finish porting the Extruder class to libslic3r 2014-10-21 20:36:52 +02:00
Alessandro Ranellucci
f8967418b9 Refactoring: moved the ooze prevention logic into a separate class with hooks 2014-10-18 17:58:14 +02:00
Alessandro Ranellucci
e521475b7e Refactoring: moved some low-level G-code generation methods to the new Slic3r::GCode::Base class 2014-10-18 17:41:21 +02:00
Alessandro Ranellucci
1fa99b8d3e Typo 2014-08-04 11:47:15 +02:00
Alessandro Ranellucci
7ff13c063f Port PrintRegion::flow() and LayerRegion.flow() to XS 2014-08-03 19:17:23 +02:00
Alessandro Ranellucci
380dd8adfc Ported some methods to XS 2014-08-03 18:41:09 +02:00
Alessandro Ranellucci
e897fbbd51 Only consider used extruders when limiting layer height. #2175 2014-08-03 11:49:00 +02:00
Alessandro Ranellucci
6f3bd72aeb Fix crash when exporting SVG with support material. #2188 2014-08-03 11:35:18 +02:00
Alessandro Ranellucci
3ff613d166 Merge branch 'acp-voronoi'
Conflicts:
	xs/xsp/my.map
2014-07-26 22:38:35 +02:00
Alessandro Ranellucci
7aaf27c0c7 Put skirt outside brim to avoid conflicts. #2157 2014-07-24 23:43:19 +02:00