Commit Graph

355 Commits

Author SHA1 Message Date
Alessandro Ranellucci
ed529b62f3 Fix threading issue with GUI. #1443 #1444 2013-09-19 16:00:47 +02:00
Alessandro Ranellucci
4fe0675380 Removed ZTable code 2013-09-17 23:55:38 +02:00
Alessandro Ranellucci
e8323fc339 Move support material code to its own class 2013-09-17 23:27:57 +02:00
Alessandro Ranellucci
6adce9f66b Update support material code to use shared memory 2013-09-17 23:14:49 +02:00
Alessandro Ranellucci
747fd25f6d Fix threads, tests and require the most recent Moo version 2013-09-12 11:09:03 +02:00
Alessandro Ranellucci
5f17fa342b Move arc fitting code to its own post-processing filter and remove the built-in ExtrusionPath::Arc class 2013-08-28 20:40:13 +02:00
Alessandro Ranellucci
73c05a6092 Moved vibration limit to its own G-code filter 2013-08-28 20:37:56 +02:00
Alessandro Ranellucci
fa07c512b4 Merge branch 'master' into xsdata
Conflicts:
	lib/Slic3r/Layer/Region.pm
	lib/Slic3r/Print.pm
	lib/Slic3r/Print/Object.pm
2013-08-16 09:09:56 +02:00
Alessandro Ranellucci
2b36778dc1 Fix a situation where extra perimeters prevented top shell to be fully propagated. #1387 2013-08-13 09:45:33 +02:00
Alessandro Ranellucci
b38cc2c244 Merge branch 'master' into xsdata
Conflicts:
	lib/Slic3r.pm
	lib/Slic3r/ExPolygon.pm
	lib/Slic3r/Fill.pm
	lib/Slic3r/Fill/Rectilinear.pm
	lib/Slic3r/GCode.pm
	lib/Slic3r/GUI/Plater.pm
	lib/Slic3r/Geometry/Clipper.pm
	lib/Slic3r/Layer/Region.pm
	lib/Slic3r/Print.pm
	lib/Slic3r/Print/Object.pm
	lib/Slic3r/TriangleMesh.pm
	t/shells.t
	xs/MANIFEST
2013-08-08 02:10:34 +02:00
Alessandro Ranellucci
2b8662cf0c Temporary workarond for an upstream bug in Moo which causes failure when running with threads. #1330 2013-07-24 10:06:02 +02:00
Alessandro Ranellucci
7ad291ea64 Add ZTable to thread_cleanup() 2013-07-23 23:20:18 +02:00
Alessandro Ranellucci
aa2ad3bbd2 Fix garbage collection of shared data. #1348 2013-07-23 23:18:22 +02:00
Alessandro Ranellucci
1b285f3f46 Thread-safe integration of ExtrusionPath::Collection 2013-07-18 22:29:12 +02:00
Alessandro Ranellucci
9b582a11ff Adopt XS containers everywhere (incomplete work) 2013-07-16 09:49:34 +02:00
Alessandro Ranellucci
9af2a1c007 Use XS Point everywhere 2013-07-15 20:31:43 +02:00
Alessandro Ranellucci
399bc80899 Ported Slic3r::Surface to XS 2013-07-14 13:05:55 +02:00
Alessandro Ranellucci
b1ad466189 Ported Slic3r::ExPolygon::Collection to XS 2013-07-14 00:38:01 +02:00
Alessandro Ranellucci
8d171a297e Add thread cleanup to avoid double destruction of shared XS data 2013-07-11 16:17:36 +02:00
Alessandro Ranellucci
5409c27852 Partial GUI compatibility with XS data 2013-07-07 18:43:04 +02:00
Alessandro Ranellucci
37105e8237 Ported get_layer_range() to C 2013-06-23 15:33:07 +02:00
Alessandro Ranellucci
b35e668ee7 Require Boost::Geometry::Utils 0.15 2013-06-21 19:46:45 +02:00
Alessandro Ranellucci
2993a1659e Bump version number 2013-06-16 10:22:22 +02:00
Alessandro Ranellucci
5fa49aad02 Releasing 0.9.10 2013-06-14 16:59:20 +02:00
Alessandro Ranellucci
510c2092df Fix rotation and scaling in plater producing mispositioned objects in G-code after recent changes. Includes a large refactoring and the new Slic3r::Geometry::BoundingBox class. #1171 #1191 2013-06-07 23:16:02 +02:00
Alessandro Ranellucci
c43ef45064 Require the newest Math::Clipper and Boost::Geometry::Utils to avoid the huge memory leaks present in previous versions 2013-05-20 09:56:55 +02:00
Alessandro Ranellucci
5494f4f385 Free @_ before spawning a new thread (known old Perl bug) as an attempt to fix the unref scalars error 2013-05-19 17:34:33 +02:00
Alessandro Ranellucci
f599ed00c6 Avoid closures, move planning code to _plan() and layer G-code generation to Slic3r::GCode::Layer 2013-05-18 17:41:37 +02:00
Alessandro Ranellucci
8f77d3b945 Increase spacing for bridge traces. #1090 2013-05-17 15:03:42 +02:00
Alessandro Ranellucci
521d668712 Reduce overlap for bridges. #1090 2013-05-16 12:34:24 +02:00
Alessandro Ranellucci
ccdb29ddc9 New --spiral-vase option to continously raise Z when printing single-walled vases. #997 2013-05-13 20:15:45 +02:00
Alessandro Ranellucci
baa1a8c736 Move Slic3r::Test::GCodeReader to Slic3r::GCode::Reader 2013-05-13 20:14:33 +02:00
Alessandro Ranellucci
f5bda326b8 Version check. #1006 2013-04-27 20:55:43 +02:00
Alessandro Ranellucci
c2aa119c09 Require Boost::Geometry::Utils 0.08 2013-04-09 14:03:24 +02:00
Alessandro Ranellucci
b4be61b703 Bugfix: time estimates for cooling were computed for each object separately instead of the whole actual layer. #1071 2013-04-04 01:17:44 +02:00
Alessandro Ranellucci
0e6d80d33c Bump version number 2013-03-31 11:24:33 +02:00
Alessandro Ranellucci
01e86c2615 Releasing 0.9.9 2013-03-30 15:59:17 +01:00
Alessandro Ranellucci
04c0caad0b Fix honeycomb infill overlap with perimeters 2013-03-17 00:57:58 +01:00
Alessandro Ranellucci
bb83f070ae Load threads::shared before Wx. #1018 2013-02-27 11:08:08 +01:00
Alessandro Ranellucci
72df796185 Bugfix: failure in launching on Windows with non-ASCII characters in username. #1011 2013-02-22 18:40:00 +01:00
Alessandro Ranellucci
91bcfc8a74 Remove $Slic3r::flow and $Slic3r::first_layer_flow 2013-02-22 16:08:11 +01:00
Alessandro Ranellucci
721b61e798 Require Boost::Geometry::Utils 0.06 2013-01-28 00:34:09 +01:00
Alessandro Ranellucci
61b164b539 Merge branch 'master' into avoid-crossing-perimeters
Conflicts:
	lib/Slic3r/GCode.pm
	lib/Slic3r/Print.pm
2013-01-26 21:45:17 +01:00
Alessandro Ranellucci
09bdd2ea5d Bump version number 2013-01-17 17:44:56 +01:00
Alessandro Ranellucci
71052433de Releasing 0.9.8 2013-01-17 15:50:45 +01:00
Alessandro Ranellucci
ad9be0e4d7 Bugfix: crash when reading/writing files to paths containing non-ASCII characters on Windows. #651 #865 2013-01-13 10:18:34 +01:00
Alessandro Ranellucci
48e00a4c40 Merge branch 'master' into avoid-crossing-perimeters
Conflicts:
	lib/Slic3r/GCode.pm
	lib/Slic3r/GUI/Plater.pm
	lib/Slic3r/Print.pm
	lib/Slic3r/SVG.pm
2013-01-12 19:00:18 +01:00
Alessandro Ranellucci
e6afebb982 Bump version number 2012-11-23 19:37:41 +01:00
Alessandro Ranellucci
452b62e53d Releasing 0.9.7 2012-11-23 18:38:50 +01:00
Alessandro Ranellucci
c99ff0cfe2 Apply Douglas-Peucker to all paths before generating G-code 2012-11-18 17:38:08 +01:00
Alessandro Ranellucci
e13fe1d636 Raise overlap factor to 1 >:-) 2012-11-16 18:11:06 +01:00
Alessandro Ranellucci
8f0e388c5b Bump version number 2012-11-07 23:22:12 +01:00
Alessandro Ranellucci
af78469231 Releasing 0.9.5 2012-11-07 23:07:43 +01:00
Alessandro Ranellucci
68c2ac601b Bump version number 2012-11-05 23:38:55 +01:00
Alessandro Ranellucci
ed100c477c Releasing 0.9.4 2012-11-05 17:52:08 +01:00
Alessandro Ranellucci
61047f0df5 Define perimeter/infill overlap over spacing instead of width and increase it slightly to compensate 2012-10-30 14:21:59 +01:00
Alessandro Ranellucci
be7e211bb6 Make flow_spacing required for ExtrusionPath objects 2012-10-30 14:07:01 +01:00
Alessandro Ranellucci
f2389682b6 Factor out some hard-coded settings 2012-10-29 00:23:33 +01:00
Alessandro Ranellucci
1627268fd4 Merge branch 'master' into avoid-crossing-perimeters
Conflicts:
	lib/Slic3r/GCode.pm
2012-10-24 11:49:31 +02:00
Alessandro Ranellucci
769134bb6f Fixed regression causing skirt ignoring the first layer extrusion width override. #728 2012-10-15 10:57:15 +02:00
Alessandro Ranellucci
faaf6d90b8 Bump version number 2012-09-28 17:44:38 +02:00
Alessandro Ranellucci
6bb4c28b01 Release 0.9.3 2012-09-28 17:06:19 +02:00
Alessandro Ranellucci
ec0d3987db Rename materials to regions 2012-09-23 02:52:31 +02:00
Alessandro Ranellucci
e696764af8 Assign extruders and flows to materials 2012-09-23 02:40:25 +02:00
Alessandro Ranellucci
02356fd613 Large refactoring to allow processing multimaterial files 2012-09-22 19:04:36 +02:00
Alessandro Ranellucci
cc8d8bd26f Merge branch 'master' into avoid-crossing-perimeters
Conflicts:
	README.markdown
	lib/Slic3r/Config.pm
	lib/Slic3r/GCode.pm
	lib/Slic3r/Print.pm
	slic3r.pl
2012-09-12 16:04:16 +02:00
Alessandro Ranellucci
36796645cb Warn the user when Slic3r is being run under 5.16 2012-09-11 16:02:26 +02:00
Alessandro Ranellucci
8d7b781473 Bump version number 2012-08-31 00:12:13 +02:00
Alessandro Ranellucci
25f647a60c Releasing 0.9.2 2012-08-30 23:15:42 +02:00
Alessandro Ranellucci
f90520ed06 Refactoring: new Slic3r::Model class to represent files 2012-08-29 17:12:32 +02:00
Alessandro Ranellucci
0eadc5adba Manual rebase of the avoid_crossing_perimeters feature 2012-08-23 15:42:58 +02:00
Henrik Brix Andersen
d6b06e08bc Bump version number 2012-08-19 09:49:43 +02:00
Alessandro Ranellucci
0833b4e021 Releasing 0.9.1 2012-08-10 16:14:35 +02:00
Alessandro Ranellucci
55b3b4f0c5 Bump version number 2012-08-08 22:04:06 +02:00
Alessandro Ranellucci
d4d305db3b Releasing 0.9.0 2012-08-08 12:29:15 +02:00
Alessandro Ranellucci
7e34244b05 Refactored configuration handling.
Slic3r::Config is now an object. Multiple partial config objects are used throughout the codebase as local repositories, then merged and serialized when necessary.
2012-07-27 21:16:11 +02:00
Alessandro Ranellucci
1d364d7823 Refactor OptionsGroup to decouple it from the config repository, add ConfigOptionsGroup 2012-07-24 15:33:11 +02:00
Alessandro Ranellucci
30a2213fd9 Some multi-extruder options in GUI 2012-07-18 20:44:36 +02:00
Alessandro Ranellucci
f173096a6c Merge branch 'new-gui'
Conflicts:
	lib/Slic3r.pm
	lib/Slic3r/Config.pm
	lib/Slic3r/GUI/OptionsGroup.pm
	lib/Slic3r/GUI/SkeinPanel.pm
	lib/Slic3r/Print.pm
2012-07-18 15:48:04 +02:00
Alessandro Ranellucci
606b9e49a7 Set first layer extrusion width to 200% by default 2012-07-15 15:53:08 +02:00
Mark Hindess
07f2dab5f6 Fix perimeters_* options to be singular to be consistent. 2012-06-30 23:18:15 +01:00
Alessandro Ranellucci
fb96cdec76 Command line options to assign perimeters and infill to different extruders 2012-06-28 16:48:56 +02:00
Alessandro Ranellucci
80501d5b3c New option to customize support material extrusion width 2012-06-28 16:33:07 +02:00
Alessandro Ranellucci
f9f2361acb Allow setting different temperatures and first layer temperatures for each extruder. Also make support material extruder selection compatible with the new architecture 2012-06-28 16:22:11 +02:00
Alessandro Ranellucci
dbcfebeb66 Rename support_material_tool to support_material_extruder 2012-06-28 15:14:27 +02:00
Alessandro Ranellucci
898266fd34 Initial refactoring for supporting multiple extruders. Little speed optimization included 2012-06-28 14:44:54 +02:00
Alessandro Ranellucci
47a07a86ee Bugfix: GUI was unable to update flow settings 2012-06-27 19:49:53 +02:00
Alessandro Ranellucci
96a3234eaa Different speed for external perimeters. #488 2012-06-27 19:42:16 +02:00
Alessandro Ranellucci
f057dd4818 Bump version number to the correct one 2012-06-24 17:21:27 +02:00
Alessandro Ranellucci
73655d7ccc Bump version number 2012-06-24 17:18:29 +02:00
Alessandro Ranellucci
0372d06247 Releasing 0.8.4 2012-06-24 16:50:09 +02:00
Alessandro Ranellucci
a6dca1d82a New option for support material pattern spacing; also, fixes and speedups to the overhang detection 2012-06-24 14:39:35 +02:00
Alessandro Ranellucci
36753d85b7 New option to define the overhang threshold angle for support material generation 2012-06-23 23:54:39 +02:00
Alessandro Ranellucci
07daefeddb Require Moo 0.091009 2012-06-23 23:28:21 +02:00
Alessandro Ranellucci
bf1aba3d08 New --support-material-pattern and --support-material-angle options 2012-06-23 22:43:23 +02:00
Alessandro Ranellucci
e72bd56b9d Rename brim_thickness to brim_width 2012-06-23 22:27:59 +02:00
Alessandro Ranellucci
48addf8c3f New feature: brim. #424 2012-06-23 21:31:29 +02:00
Alessandro Ranellucci
410279823c New separate option to control the addition of automatic extra perimeters. Also, add none if perimeters are set to 0. #459 2012-06-23 17:10:30 +02:00
Alessandro Ranellucci
a664709b31 Remember last presets 2012-06-19 18:11:51 +02:00
Alessandro Ranellucci
35f36e0446 New preset management (unfinished) 2012-06-18 22:27:57 +02:00
Alessandro Ranellucci
4d2a813450 Bump version number 2012-06-14 20:26:58 +02:00
Alessandro Ranellucci
a2c0e4a674 Releasing 0.8.3 2012-06-14 19:13:04 +02:00
Alessandro Ranellucci
fbfbfac2b6 New --top-solid-infill-speed option. Also, --solid-infill-speed and --small-perimeter-speed can be expressed as ratios too. #174 #151 2012-06-06 19:59:20 +02:00
Alessandro Ranellucci
82dd3c7a3e New --perimeters-extrusion-width and --infill-extrusion-width options. #302 2012-06-06 18:05:03 +02:00
Alessandro Ranellucci
8a031fe501 New --first-layer-extrusion-width option. #385 2012-06-06 17:29:12 +02:00
Alessandro Ranellucci
16b774603c Accept either absolute or relative values for --first-layer-height. #151 2012-06-06 16:11:38 +02:00
Alessandro Ranellucci
896c7e952e Renamed bottom_layer_speed to first_layer_speed for consistency 2012-06-06 15:52:21 +02:00
Alessandro Ranellucci
91ffb74429 Accept either absolute or relative values for --bottom-layer-speed. #151 2012-06-06 15:43:54 +02:00
Alessandro Ranellucci
aedb6cc35f Accept both relative and absolute extrusion width values. #151 2012-06-06 15:23:34 +02:00
Alessandro Ranellucci
949055d86c Bump version number 2012-05-29 17:16:32 +02:00
Alessandro Ranellucci
fc1624531a Releasing 0.8.2 2012-05-29 17:13:08 +02:00
Alessandro Ranellucci
09d4ab8470 Bump version number 2012-05-29 15:00:05 +02:00
Alessandro Ranellucci
63f8f4d710 Releasing 0.8.1 2012-05-29 14:55:33 +02:00
Alessandro Ranellucci
acf4f032be Bump version number 2012-05-29 14:43:48 +02:00
Alessandro Ranellucci
af7ccb9fc1 Refactor resource paths 2012-05-29 14:19:14 +02:00
Alessandro Ranellucci
263806dd8c Releasing 0.8.0 2012-05-29 13:28:21 +02:00
Alessandro Ranellucci
5a78111efa Options to set extruder clearance for sequential printing and graphical preview of collisions 2012-05-23 11:47:52 +02:00
Alessandro Ranellucci
4dd236d025 Previous commit broke everything 2012-05-21 19:16:42 +02:00
Alessandro Ranellucci
cbd77cd71b Compatibility with recent Moo changes for threads global destruction. #379 2012-05-21 18:44:31 +02:00
Alessandro Ranellucci
ce6b4aeaee New option to print each object completely before moving onto next one (watch out for extruder collisions, Slic3r isn't doing any check since it doesn't know its shape) 2012-05-20 20:08:59 +02:00
Alessandro Ranellucci
67a076b360 Removing warnings here and there 2012-05-20 17:21:31 +02:00
Alessandro Ranellucci
1998801a58 Read OBJ files. #324 2012-05-20 11:40:37 +02:00
Alessandro Ranellucci
fa4f2c8b97 New option to randomize starting points across layers 2012-05-19 22:36:29 +02:00
Alessandro Ranellucci
5ccc0a8f62 Fixes broken commit 2012-05-19 20:27:22 +02:00
Alessandro Ranellucci
8aafafac7c Compatibility with recent Moo versions 2012-05-19 20:25:59 +02:00
Alessandro Ranellucci
b246480535 Massive reduction of memory usage (down to one third). 2012-05-19 17:57:38 +02:00
Alessandro Ranellucci
4bffa9cb6b Use perimeter length, not area, to detect small perimeters. #355 2012-05-14 00:30:52 +02:00
Alessandro Ranellucci
f1905256f8 Lower default threads to 2 2012-05-13 23:14:56 +02:00
Alessandro Ranellucci
ee33d570d7 Use Douglas-Peucker simplification always and remove the inefficient parallel lines merging algorithm. #277 2012-05-01 11:41:08 +02:00
Alessandro Ranellucci
a165ad4ecb Large memory saving and speed boost 2012-05-01 10:53:52 +02:00
Alessandro Ranellucci
d03925a18d New GUI with plating facilities 2012-04-30 14:56:01 +02:00
Alessandro Ranellucci
ed4a5739f6 Multiple objects autoplating (--merge, from command line only) 2012-04-29 12:51:20 +02:00
Alessandro Ranellucci
222e9df7f9 Bump dev version number 2012-04-29 11:20:12 +02:00
Alessandro Ranellucci
29b9c31b92 Releasing 0.7.2b 2012-04-17 09:32:22 +02:00
Alessandro Ranellucci
07edf83990 Releasing 0.7.2 2012-04-16 20:43:46 +02:00
Alessandro Ranellucci
96d5e513b8 Rename $Slic3r::resolution to $Slic3r::scaling_factor 2012-04-16 14:05:38 +02:00
Alessandro Ranellucci
e5abb0b9df Enable/disable duplication controls 2012-04-11 17:40:10 +02:00
Alessandro Ranellucci
e58ed195fd New --bed-size option 2012-04-11 16:30:58 +02:00
Alessandro Ranellucci
4ae551a424 Ditch --duplicate-x and --duplicate-y, add --duplicate-grid 2012-04-11 15:58:09 +02:00
Alessandro Ranellucci
63ff01764c Document --threads, -j and throw an error when it's used on a non-threaded perl 2012-04-10 16:26:56 +02:00
Alessandro Ranellucci
82a16ed8ee Merge branch 'triffid-duplicate' 2012-04-09 15:14:40 +02:00
Michael Moon
f2edfd1a76 initial implementation of algorithm for #249
fix typo that put things in the wrong position

use int() builtin instead of POSIX::floor()

fix typo

use alternate method of creating local routines

remove aliases for new duplicate option

use coderefs for linear interpolate function, make binary insertion sort inline

add \n at end of die message regarding too many objects for print area

fix case where no duplication is done

fix whitespace according to slic3r coding style

assume 200x200 bed area if center is 0,0

Some cleanup to the autoarrange duplication logic
2012-04-09 15:14:07 +02:00
Alessandro Ranellucci
68b48fa807 Multithreaded mesh processing. #154 2012-04-09 12:29:47 +02:00
Alessandro Ranellucci
1a06e35687 New option to specify G-code to be used at layer change. #279 2012-03-26 12:14:15 +02:00
Alessandro Ranellucci
4a9a46effc Bump version number 2012-03-11 20:07:54 +01:00
Alessandro Ranellucci
c58eea1536 Releasing 0.7.1 2012-03-11 19:30:07 +01:00
Alessandro Ranellucci
4a4c4b4e7d Raise version number 2012-03-03 23:38:41 +01:00
Alessandro Ranellucci
7892a84408 Refactoring and integrations to the bed temperature handling 2012-03-03 23:14:40 +01:00
Alessandro Ranellucci
06c22c9db3 New --fan-always-on option. #241 #110 2012-03-03 22:21:30 +01:00
Alessandro Ranellucci
b0676b226d Releasing 0.7.0 2012-02-26 18:01:05 +01:00