Commit Graph

309 Commits

Author SHA1 Message Date
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
Henrik Brix Andersen
f0579e59bd Include timestamp in .ini files 2012-07-27 14:33:14 +02:00
Alessandro Ranellucci
1d364d7823 Refactor OptionsGroup to decouple it from the config repository, add ConfigOptionsGroup 2012-07-24 15:33:11 +02:00
Henrik Brix Andersen
ab9ffe9c19 Expose --external-perimeter-speed in the GUI. #556 2012-07-23 09:43:59 +02:00
Alessandro Ranellucci
30a2213fd9 Some multi-extruder options in GUI 2012-07-18 20:44:36 +02:00
Alessandro Ranellucci
b861560c71 Fix tooltips about extrusion widths 2012-07-18 18:16:27 +02:00
Alessandro Ranellucci
2495a77c0f Add to GUI the setting for support material extrusion width. Also, populate %Groups with new options 2012-07-18 18:15:18 +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
1c6789e042 Remove duplicate_mode from options list 2012-07-15 19:36:56 +02:00
Alessandro Ranellucci
9210c708fc Compatibility with --load and new GUI 2012-07-15 17:55:58 +02:00
Henrik Brix Andersen
e228b834e2 Retire the 'important' flag for options now that we have a configuration wizard. 2012-07-15 16:37:59 +02:00
Alessandro Ranellucci
0aa3cc230f Merge branch 'new-flow' 2012-07-14 21:40:57 +02:00
Henrik Brix Andersen
c144afe52b Allow specifying --first-layer-height without leading zero. #518 2012-07-08 23:02:40 +02:00
Alessandro Ranellucci
77123ada7c New spacing math. Speed optimizations 2012-07-04 09:33:33 +02:00
Alessandro Ranellucci
641c2a241b Write Slic3r version in config files 2012-07-01 18:53:01 +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
3e8bc73fcb Fix typo in previous commit 2012-06-28 14:49:20 +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
Mark Hindess
a4de0e659d Trivial typo/grammar. 2012-06-25 22:51:20 +01: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
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
a9d480f7bf Bugfix: first layer extrusion width was computed on general layer height rather than first layer height. #465 2012-06-23 21:45:18 +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
Henrik Brix Andersen
60ff9938ef - Add Slic3r::Config::get_raw() for getting the raw, uncalculated values.
- Use get_raw() for saving and displaying options in GUI

Forward-ported from 4031cf26b4
2012-06-21 13:28:55 +02:00
Alessandro Ranellucci
a664709b31 Remember last presets 2012-06-19 18:11:51 +02:00
Henrik Brix Andersen
8fcf24a766 Merge pull request #467 from henrikbrixandersen/ratio-options
Two small ratio option improvements/bug fixes
2012-06-19 06:44:16 -07:00
Henrik Brix Andersen
4031cf26b4 - Add Slic3r::Config::get_raw() for getting the raw, uncalculated values.
- Use get_raw() for saving and displaying options in GUI
2012-06-19 15:32:56 +02:00
Henrik Brix Andersen
8d25e6490a Set CLI option type to 'string' for all options allowing ratio inputs 2012-06-19 11:38:12 +02:00
Henrik Brix Andersen
b7d2860d5b Allow negating bool cli options by using '--no-foo' or '--nofoo' 2012-06-18 23:39:53 +02:00
Alessandro Ranellucci
35f36e0446 New preset management (unfinished) 2012-06-18 22:27:57 +02:00
Alessandro Ranellucci
2b6b91cd01 Tooltips 2012-06-18 13:49:14 +02:00
Alessandro Ranellucci
d8a64f0386 Use spin controls for integer values 2012-06-18 11:52:45 +02:00
Alessandro Ranellucci
f38f2f139e Make window resizable 2012-06-18 11:26:21 +02:00
Alessandro Ranellucci
19a78de82f Enlarge the Output filename format field 2012-06-18 10:28:53 +02:00
Alessandro Ranellucci
72298877bb Moved units of measure to the right of input fields 2012-06-18 10:19:24 +02:00
Alessandro Ranellucci
b7983b54f8 Remove label for large text fields 2012-06-17 23:24:10 +02:00
Alessandro Ranellucci
71c1c66985 Label and CLI option were wrong for top_solid_infill_speed. #425 2012-06-11 13:45:03 +02:00
Alessandro Ranellucci
3e94add8a8 Pass config options as environment variables to post-processing scripts 2012-06-09 17:52:03 +02:00
Alessandro Ranellucci
caa32ab282 Fixed regression causing flow errors when using legacy config files. #421 2012-06-07 11:24:45 +02:00
Alessandro Ranellucci
709c444976 Fixed fatal error when using --first-layer-extrusion-width 2012-06-07 11:17:35 +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
c7af74884f Legacy config files were not correctly supported 2012-06-06 18:47:11 +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
4a188f8566 Support for legacy config files containing bottom_layer_speed_ratio. #151 2012-06-06 15:48:14 +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
Josh McCullough
9da034a042 fixes #409 2012-06-05 10:55:02 +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
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
159ca3f65e Accept --threads 1 on non-threaded perls too 2012-05-19 23:18:29 +02:00
Alessandro Ranellucci
fa4f2c8b97 New option to randomize starting points across layers 2012-05-19 22:36:29 +02:00
Alessandro Ranellucci
8fe5d11624 Set number of threads from GUI and save it in config files. #154 2012-05-19 15:08:32 +02:00
Alessandro Ranellucci
7ee08be0b8 Allow [version], [timestamp], [year], [month], [day], [hour], [minute], [second] in filenames. #318 2012-05-01 15:02:33 +02:00
Alessandro Ranellucci
d03925a18d New GUI with plating facilities 2012-04-30 14:56:01 +02:00
Alessandro Ranellucci
96d5e513b8 Rename $Slic3r::resolution to $Slic3r::scaling_factor 2012-04-16 14:05:38 +02:00
Alessandro Ranellucci
0d910dec84 Don't require --duplicate-distance to be positive anymore 2012-04-16 11:58:01 +02:00
Alessandro Ranellucci
cb182b8bc2 Honeycomb infill. #300 2012-04-16 11:55:14 +02:00
Alessandro Ranellucci
1c6469fc25 Allow to use x as a separator for --print-center, --bed-size, --duplicate-grid 2012-04-11 18:18:01 +02:00
Alessandro Ranellucci
134595fc99 Validation for --duplicate-grid and --bed-size 2012-04-11 17:52:06 +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
a800b97fdd Bugfix: no-extrusion was ignored 2012-04-08 21:27:38 +02:00
Henrik Brix Andersen
d538382669 Use correct spelling for G-code. 2012-03-26 22:33:43 +02:00
Alessandro Ranellucci
5bd16ffed6 Allow decimal values for skirt/duplicate distances and speeds. #283 2012-03-26 15:20:59 +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
bf964b5273 Allow perimeters = 0. #282 2012-03-26 11:32:59 +02:00
Alessandro Ranellucci
0f5e2e3076 Throw an error if a user wants to print a 0mm layer 2012-03-11 16:58:15 +01:00
Alessandro Ranellucci
d0807aa807 Allow to use config options in start/end G-code 2012-03-03 23:29:08 +01:00
Alessandro Ranellucci
7892a84408 Refactoring and integrations to the bed temperature handling 2012-03-03 23:14:40 +01:00
Michael Moon
35e7877437 bed temperature handling. TODO: gui elements 2012-03-03 23:08:50 +01:00
Alessandro Ranellucci
8566b4f910 Separate the Slice button a bit 2012-03-03 22:53:12 +01:00
Alessandro Ranellucci
5c79024215 Revert "Made the UI look quite a bit nicer (OS X 10.7 tested)."
This reverts commit 266f7799dd.

Conflicts:

	lib/Slic3r/GUI/SkeinPanel.pm
2012-03-03 22:50:08 +01:00
Alessandro Ranellucci
06c22c9db3 New --fan-always-on option. #241 #110 2012-03-03 22:21:30 +01:00
Alessandro Ranellucci
6b31563b70 Merge pull request #236 from sfcgeorge/improved-ui
Made the UI look quite a bit nicer (OS X 10.7 tested).
2012-03-03 12:04:35 -08:00
Simon George
266f7799dd Made the UI look quite a bit nicer (OS X 10.7 tested).
* Added link to website for updates
* Moved 'Slice…' button to the right as this more logically follows the
user's flow through the application
* Moved version information to the middle right under the App name (on
OS X anyway) as it is clearer what the version is referring to
* Added spacing between the buttons
* Removed colon after 'version' as this is the UI convention in about
boxes
* Changed 'Load' to 'Open' as this is the more commonly used term
* Truncated 'Configuration' to 'Config' to save space, and I believe it
is still clear what it means
* Added open and save config to File menu as this is more conventional
location
* Simplified some wording
* Rephrased the tabs to be more succinct, I believe they still make
sense
* Fixed a spelling
* Replaced '…' with proper ellipses character
2012-02-28 23:04:19 +00:00
Alessandro Ranellucci
f0e434f8c1 Fix typo in previous commit and in config options. #234 2012-02-28 22:04:48 +01:00
Alessandro Ranellucci
dccd7d19a9 First layer temperature. #134 2012-02-26 14:54:38 +01:00
Alessandro Ranellucci
f1f0545209 Bugfix: --extrusion-axis didn't accept an argument 2012-02-26 11:33:58 +01:00
Alessandro Ranellucci
170d29a789 New --cooling option and checkbox to enable/disable fan and cooling control 2012-02-25 21:56:36 +01:00
Alessandro Ranellucci
1d0a852679 Cooling and fan control. #110 2012-02-25 21:01:00 +01:00
Alessandro Ranellucci
555c23069d New --post-process option. Includes some cleaning of the STDOUT messages 2012-02-20 12:50:05 +01:00
Alessandro Ranellucci
615bcb27dd New --gcode-flavor option. extrusion_axis, use_relative_e_distances options hidden and implied. #158 2012-02-20 11:44:30 +01:00
Alessandro Ranellucci
94a2585b97 Dual extruder for support material 2012-02-19 17:02:49 +01:00
Alessandro Ranellucci
7b67fae686 Support material 2012-02-19 12:03:36 +01:00
Alessandro Ranellucci
90c6ed3b20 Merge pull request #209 from henrikbrixandersen/master
Use SI units consistently.
2012-02-19 00:34:17 -08:00
Alessandro Ranellucci
4f72de3873 Check that bridge_flow_ratio > 0 2012-02-19 09:32:16 +01:00
Henrik Brix Andersen
c20fd8a596 Use SI units consistently. 2012-02-18 22:36:13 +01:00
Alessandro Ranellucci
660eedfa5b Added a couple unit tests 2012-02-15 12:04:10 +01:00
Alessandro Ranellucci
ca704c4846 Merge pull request #200 from jreinhardt/master
Small GUI fix
2012-02-12 14:35:03 -08:00
Alessandro Ranellucci
419b94e587 Allow Unicode characters in config.ini. #199 2012-02-12 23:33:39 +01:00
Johannes Reinhardt
2b979fb14c added missing units in GUI 2012-02-12 22:42:03 +01:00
Alessandro Ranellucci
74c71b4ef2 Acceleration control. #185 2012-02-10 14:53:44 +01:00
Alessandro Ranellucci
7893480fd7 Add checkbox for G0 in the GUI. #51 2012-02-06 21:17:01 +01:00
Henrik Brix Andersen
121895d3fc Add support for notes field in configuration profiles. #130 2012-02-05 20:55:17 +01:00
Alessandro Ranellucci
3e65af7457 Revert "New First layer flow ratio option. #182"
This reverts commit 99ef0865bb.
2012-01-30 14:51:05 +01:00
Alessandro Ranellucci
99ef0865bb New First layer flow ratio option. #182 2012-01-30 14:25:14 +01:00
Alessandro Ranellucci
5bc3f2cfa5 Allow portability of config files between Unix and Windows 2012-01-22 20:10:23 +01:00
Alessandro Ranellucci
f9446b9c6e Cleanup the --output-filename-format implementation. #53 #137 2011-12-26 17:25:13 +01:00
Clarence Risher
1071b556cb second draft implementation of output_filename_format 2011-12-26 04:20:45 -05:00
Alessandro Ranellucci
47bbe18de2 Additional check to return a friendly error when binary STL is not valid 2011-12-18 10:50:55 +01:00
Alessandro Ranellucci
1e6ecd9eab Corrections to math. Threads are not always rectangles with semicircles. Better calculation of overlap. 2011-12-17 19:52:34 +01:00
Alessandro Ranellucci
f5eb4f03e1 Skirt can be disabled by either setting skirts to 0 or skirt-height to 0 2011-12-16 09:55:13 +01:00
Alessandro Ranellucci
40d06a6e11 Erorr in last commit about automatic extrusion width. #112 2011-12-15 12:50:02 +01:00
Alessandro Ranellucci
156a1deb0a Limit automatic extrusion width to be <= 1.2 * nozzle_diameter (Triffid's way). #112 2011-12-15 09:33:42 +01:00
Alessandro Ranellucci
d346bc02cc Comments are now disabled by default, new --gcode-comments option to enable them 2011-12-14 19:49:21 +01:00
Alessandro Ranellucci
56691c1dea Model extrusion threads as rectangles with semicircles at the end. Remove overlap_ratio setting. #109 #112 2011-12-13 17:34:31 +01:00
Alessandro Ranellucci
0ebd8eb8a9 Don't die when config has unknown options. #108 2011-12-10 10:39:07 +01:00
Alessandro Ranellucci
b92ba67272 Workaround for a WxWidgets bug that clips the overlap_ratio label on Mac 2011-12-08 22:06:53 +01:00
Alessandro Ranellucci
d9a70ea80d Customizable overlap ratio (it defaults to 0.15 now) 2011-12-08 10:53:07 +01:00
Alessandro Ranellucci
53bc9c7421 Customizable speed for small perimeters. #60 2011-12-04 20:50:03 +01:00
Alessandro Ranellucci
ea254588f7 More tolerance for config files 2011-12-04 20:41:17 +01:00
Alessandro Ranellucci
28a89c70c9 New bridge flow rate multiplier option. #85 2011-12-04 20:29:21 +01:00
Alessandro Ranellucci
5375f5fef4 Mark important settings in bold 2011-12-02 17:02:36 +01:00
Alessandro Ranellucci
52c9897eda New --extrusion-axis option; removed --no-extrusion 2011-12-01 22:34:21 +01:00
Alessandro Ranellucci
aab85a4e27 Bugfix: unable to read back config file if start or end gcode was empty. #84 2011-12-01 22:06:07 +01:00
Alessandro Ranellucci
e99c9f9e5f Options on command line now override config. Also, "feed rate" was renamed to "speed" everywhere. #77 2011-12-01 22:04:23 +01:00
Alessandro Ranellucci
52270d6b95 Bugfix: extrusion width ratio gave wrong flow rate under certain circumstances. #80 2011-11-30 18:18:17 +01:00
Michael Moon
729905d342 allow solid fill layers to be zero 2011-11-30 12:51:34 +11:00
Alessandro Ranellucci
3ad9ed74ae New --solid-infill-feed-rate option. #68 2011-11-28 19:11:26 +01:00
Alessandro Ranellucci
975387d953 New --bridge-feed-rate option. #68 2011-11-28 18:37:53 +01:00
Alessandro Ranellucci
7a5af293a8 Mark slow infill patterns as slow. #20 2011-11-26 22:41:23 +01:00
Alessandro Ranellucci
8ce2c23e52 Bugfix: hard errors when extrusion width was left empty. 2011-11-26 20:51:04 +01:00
Alessandro Ranellucci
0ab1fd4c19 concentric - new superfast infill pattern 2011-11-26 10:38:45 +01:00
Alessandro Ranellucci
25c85aada5 Renamed "filament packing density" to "extrusion multiplier". Same values. #4 2011-11-25 11:15:20 +01:00
Alessandro Ranellucci
3c0ea0b57f New --extrusion-width-ratio option. #8 2011-11-25 11:10:35 +01:00
Alessandro Ranellucci
6e02c8f117 Renamed perimeter_offsets to perimeters 2011-11-19 17:36:44 +01:00
Alessandro Ranellucci
86f3e4fcd2 Implemented a new "line" fill pattern. #20 2011-11-14 10:31:07 +01:00
Alessandro Ranellucci
60f6ce363e GUI text boxes for start/end GCODE. #12 2011-11-13 22:48:21 +01:00
Alessandro Ranellucci
75a71a23a5 New --first-layer-height-ratio option. #36 2011-11-13 19:08:19 +01:00
Alessandro Ranellucci
097b8d9acb New --skirt-height option. #11 2011-11-13 18:41:12 +01:00
Alessandro Ranellucci
b123194522 New --no-extrusion option to disable E values 2011-11-13 18:26:31 +01:00
Alessandro Ranellucci
038caddcda New fill types (hilbertcurve, archimedeanchords, octagramspiral) and ability to use different patterns for solid layers. #20 2011-11-13 18:14:02 +01:00
Alessandro Ranellucci
80adbb7044 Support for legacy multiply options in config files. #7 2011-11-07 17:16:34 +01:00
Alessandro Ranellucci
b4e268efad New --retract-lift option to lift Z while doing travel moves. #25 2011-11-07 15:58:47 +01:00
Alessandro Ranellucci
71a44e253c Renamed "multiply" to "duplicate". #7 2011-11-07 15:49:07 +01:00
Alessandro Ranellucci
7f341cfcd3 New --fill-every-layers option to get high accuracy on external surfaces while speeding up infill 2011-10-18 15:57:53 +02:00
Alessandro Ranellucci
2d784fac9b New --start-gcode and --end-gcode options. #12 2011-10-14 16:24:55 +02:00
Alessandro Ranellucci
332d55f854 Moved Temperature under filament options 2011-10-09 22:29:13 +02:00
Alessandro Ranellucci
119eb0693f New high_res_perimeters option (like the "Skin" plugin for Skeinforge) 2011-10-06 17:11:59 +02:00
Alessandro Ranellucci
1978a99416 Faster algorithm for rectilinear fill 2011-10-06 16:22:22 +02:00
Alessandro Ranellucci
a1d518f1a2 Save and load configurations 2011-10-05 18:13:47 +02:00
Alessandro Ranellucci
f2f9178e07 GUI 2011-10-03 11:55:32 +02:00