Commit Graph

2735 Commits

Author SHA1 Message Date
Alessandro Ranellucci
1813a309a7 Cleanup duplicated M204 commands. #2183 2014-08-03 16:31:20 +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
3e2799a4ee Bugfix: unexpected result when cutting a scaled object 2014-08-03 10:51:01 +02:00
Alessandro Ranellucci
f462af20f9 Visual preview for bed shape dialog 2014-08-03 00:20:55 +02:00
Alessandro Ranellucci
3ff613d166 Merge branch 'acp-voronoi'
Conflicts:
	xs/xsp/my.map
2014-07-26 22:38:35 +02:00
Alessandro Ranellucci
9f7734abeb Prevent warnings when zooming on uninitialized 3D canvas 2014-07-26 17:15:47 +02:00
Alessandro Ranellucci
53f2d6bb4b New 3D Honeycomb infill pattern (credits: David Eccles (gringer)). #1646 2014-07-26 17:07:43 +02:00
Alessandro Ranellucci
d508be5ae8 Refactoring: moved direction-specific methods to new role class Slic3r::Fill::WithDirection 2014-07-26 16:28:38 +02:00
Alessandro Ranellucci
d68192749f Bugfix: seam_position = aligned/nearest didn't work correctly for hi-res models. #2156
Conflicts:

	lib/Slic3r/GCode.pm
2014-07-25 12:04:33 +02:00
Alessandro Ranellucci
06d700989f Allow configuration of G-code origin for rectangular bed shape 2014-07-25 00:13:12 +02:00
Alessandro Ranellucci
7aaf27c0c7 Put skirt outside brim to avoid conflicts. #2157 2014-07-24 23:43:19 +02:00
Alessandro Ranellucci
86bad17abb Display skirt and brim in toolpaths preview. Also take support material margin into account when sizing the window. #2169 2014-07-24 18:32:07 +02:00
Alessandro Ranellucci
79d55efa0e Relax collision checks when Detect thin walls is disabled 2014-07-23 15:18:57 +02:00
Alessandro Ranellucci
f67b863e64 Fixed minor regression in cut dialog 2014-07-23 13:06:22 +02:00
Alessandro Ranellucci
71209711b3 Bugfix: ignore only_retract_when_crossing_perimeters when fill_density = 0 2014-07-23 00:57:31 +02:00
Alessandro Ranellucci
16a3d29a1d Correct Z positioning of multiple objects in 3D plater 2014-07-16 17:06:58 +02:00
Alessandro Ranellucci
983cf09ee5 Display bed shape in 3D plater 2014-07-15 21:58:03 +02:00
Alessandro Ranellucci
aa723db39b Fixed recursion in background processing 2014-07-15 19:13:38 +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
28f9278963 Minor fixes to 3D preview 2014-07-14 11:58:00 +02:00
Alessandro Ranellucci
4617188790 Round print center coordinates to integer in 2D plater canvas 2014-07-13 12:36:37 +02:00
Alessandro Ranellucci
da4d6cbabb 3D preview of plater 2014-07-13 12:10:34 +02:00
Alessandro Ranellucci
670ffcf4be Show section lines in cut preview 2014-07-12 17:35:17 +02:00
Alessandro Ranellucci
a34c7c76c4 Nicer 3D colors and lighting 2014-07-12 17:06:42 +02:00
Alessandro Ranellucci
bcc8e356b2 Merge perimeters of adjacent regions having the same perimeter settings 2014-07-12 15:28:21 +02:00
Alessandro Ranellucci
212558acd4 Typo 2014-07-12 12:16:24 +02:00
Alessandro Ranellucci
edc7fd2915 Fix pausing when background process is scheduled but wasn't started yet 2014-07-12 11:52:19 +02:00
Alessandro Ranellucci
b8a629f0b6 Select last appended part in object parts panel 2014-07-12 11:46:03 +02:00
Alessandro Ranellucci
f428888dd9 Fixed deadlocks in background processing 2014-07-12 11:41:18 +02:00
Alessandro Ranellucci
6a91b2fa52 Removed the "Combine STL files into multi-material AMF file" command since it's not needed anymore thanks to the new object editor dialog 2014-07-12 11:22:27 +02:00
Alessandro Ranellucci
aacc01a56f Store object and volume names in the new 'name' property instead of relying on material id 2014-07-12 11:20:57 +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
f82a8475a1 Use AMF object and volume metadata for handling per-object and per-volume settings 2014-07-11 20:09:01 +02:00
Alessandro Ranellucci
4d67f902b6 Fixed parsing of AMF material metadata 2014-07-11 19:48:03 +02:00
Alessandro Ranellucci
2ca0d4627a Refresh 2D plater canvas when window is resized (did not update on GTK) 2014-07-04 12:13:39 +02:00
Alessandro Ranellucci
b926079fd5 Enlarge the Z slider in the cut dialog 2014-07-04 12:04:42 +02:00
Alessandro Ranellucci
d416766d90 Fix scaled model objects causing a test to fail 2014-07-04 10:45:29 +02:00
Alessandro Ranellucci
bd03747dc1 Added button for toolpaths preview 2014-07-04 10:32:32 +02:00
Alessandro Ranellucci
f0a57a83fd Proper handling of interlaced layers in toolpaths preview 2014-07-04 01:04:07 +02:00
Alessandro Ranellucci
2632b2b30e Include support material in toolpaths preview 2014-07-04 01:04:07 +02:00
Alessandro Ranellucci
16281cc0c3 Fix toolpaths preview when objects have distinct layer heights 2014-07-04 01:04:07 +02:00
Alessandro Ranellucci
bfa1e04991 Don't use wxStaticBox objects as parents. #2150 2014-07-03 17:12:47 +02:00
Alessandro Ranellucci
907de1011f Toolpaths preview 2014-07-03 09:24:19 +02:00
Alessandro Ranellucci
d8b1eff62f Enable min_fan_speed and disable_fan_first_layers when fan_always_on is checked 2014-07-01 21:58:57 +02:00
Alessandro Ranellucci
d9dc2fda00 Fixed regression causing variable layer heights to be ignored. #2136
Conflicts:

	xs/xsp/my.map
2014-07-01 19:49:15 +02:00
Alessandro Ranellucci
65dbf75a54 Fixed background processing with multiple worker threads 2014-07-01 19:00:23 +02:00
Alessandro Ranellucci
710568b989 Initialize controls status when loading cut window 2014-07-01 18:22:19 +02:00
Alessandro Ranellucci
fd4ab04d76 Minor adjustment in tooltip 2014-07-01 18:19:13 +02:00
Alessandro Ranellucci
a06fad9e13 Enable/disable GUI controls according to the others in order to guide the user through option dependency 2014-07-01 18:18:23 +02:00
Alessandro Ranellucci
04b67f0cb0 Refactored OptionsGroup class for cleaner OOP model and cleaner event model 2014-07-01 16:42:12 +02:00
Alessandro Ranellucci
cc4a5412ae Fix regression in Quick Slice and Slice to SVG 2014-06-27 17:21:41 +02:00
Alessandro Ranellucci
adf3d615bd Fix Print preset being dirty at load time 2014-06-25 11:45:39 +02:00
Alessandro Ranellucci
b9e8fbacb7 Put the Default Extruder option in a less confusing position 2014-06-19 20:07:16 +02:00
Alessandro Ranellucci
95c121f4c7 Minor improvement, reuse context 2014-06-19 10:29:03 +02:00
Alessandro Ranellucci
89b2fbbae0 Bugfix: prevent the "bad drawable" error when showing the OpenGL canvas. #2015 #2099 2014-06-19 10:28:14 +02:00
Alessandro Ranellucci
41de95fd27 Fix the Change Scale toolbar button 2014-06-19 10:28:14 +02:00
Alessandro Ranellucci
3173e11e1f Bugfix: object steps were incorrectly invalidated. #2102 2014-06-17 20:33:29 +02:00
Alessandro Ranellucci
ba55592bdf Added non-uniform scaling commands to the plater 2014-06-17 00:50:44 +02:00
Alessandro Ranellucci
afb7e675b8 Set preset dirty after setting bed shape 2014-06-17 00:30:44 +02:00
Alessandro Ranellucci
abf38d4027 Add support for custom bed shapes 2014-06-17 00:27:22 +02:00
Alessandro Ranellucci
9053cdca5d Fix harmless typo 2014-06-17 00:02:43 +02:00
Alessandro Ranellucci
928335f186 Removed print_center option (but left --print-center from CLI) 2014-06-16 23:58:45 +02:00
Alessandro Ranellucci
4d8ecccc5e Add support for circular bed 2014-06-16 23:36:31 +02:00
Alessandro Ranellucci
7cc0bce97d Merge branch 'bedshape' 2014-06-16 22:57:04 +02:00
Alessandro Ranellucci
ba37a8fb79 Handle legacy configs 2014-06-16 22:56:28 +02:00
Alessandro Ranellucci
d6d796fdd4 Finished implementing bed shape configuration within wizard 2014-06-16 22:45:13 +02:00
Alessandro Ranellucci
db031a6210 Incomplete work for adapting wizard to bed_shape 2014-06-16 20:11:52 +02:00
Alessandro Ranellucci
998a4225de Finished implementation of bed_shape in plater 2014-06-16 15:18:39 +02:00
Alessandro Ranellucci
7a20c4d52a More incomplete work for using bed_shape in plater 2014-06-16 14:05:22 +02:00
Alessandro Ranellucci
f4e4640c73 Liquid resizing of plater 2014-06-16 02:00:13 +02:00
Alessandro Ranellucci
4fe2128fc4 Initial work for custom bed shape 2014-06-16 01:49:49 +02:00
Mark Hindess
d961970828 Add missing use for dirname. 2014-06-14 22:54:57 +01:00
Alessandro Ranellucci
57a9486692 Apply transform to meshes before displaying the 3D preview canvas 2014-06-14 22:51:57 +02:00
Alessandro Ranellucci
707dd8db86 Prevent crash when trying to export G-code from menu and there are no objects 2014-06-14 22:40:37 +02:00
Alessandro Ranellucci
87383250de Fix regression in cut 2014-06-14 22:36:49 +02:00
Alessandro Ranellucci
182c5eb809 Show contextual menu when right-clicking on a plater object 2014-06-14 21:36:28 +02:00
Alessandro Ranellucci
e9910a2c0b XYZ mirroring from plater 2014-06-14 21:14:33 +02:00
Alessandro Ranellucci
ec7bb40da9 Rotation around X and Y axes from plater 2014-06-14 20:52:21 +02:00
Alessandro Ranellucci
51cf78534c Stop background process when removing objects from the plater 2014-06-14 20:26:53 +02:00
Alessandro Ranellucci
301771e275 Refactored menu creation 2014-06-14 20:26:46 +02:00
Alessandro Ranellucci
d5f6804386 Fixed window size with --no-plater 2014-06-14 20:03:57 +02:00
Alessandro Ranellucci
3d8c8fa46e Import wxTheApp 2014-06-14 19:59:59 +02:00
Alessandro Ranellucci
ddac2d1570 Merged SkeinPanel into MainFrame 2014-06-14 19:54:18 +02:00
Alessandro Ranellucci
93b9116565 Move wxFrame definition to a new Slic3r::GUI::MainFrame class 2014-06-14 19:11:04 +02:00
Alessandro Ranellucci
de6291d8f2 New Object menu with shortcuts to all plater operations 2014-06-14 18:58:56 +02:00
Alessandro Ranellucci
1b625753ab Fix tests 2014-06-14 00:06:49 +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
Y. Sapir
a837e26f51 Translate PlaceholderParser::apply_config to C++. 2014-06-14 00:01:52 +02:00
Alessandro Ranellucci
829bfeabe8 Suspend background processes while writing to shared data structures 2014-06-13 23:27:52 +02:00
Alessandro Ranellucci
a1bcbea816 Use async timer everywhere 2014-06-13 20:36:45 +02:00
Alessandro Ranellucci
08047c11eb Minor fixes to make_skirt and make_brim 2014-06-13 20:18:34 +02:00
Alessandro Ranellucci
4d76d05bbb Refactoring: better API for Print/Object steps with explicit dependencies 2014-06-13 20:05:18 +02:00
Alessandro Ranellucci
d896ad090b Fixed concurrency issues 2014-06-13 19:23:51 +02:00
Y. Sapir
a168973bea Call get_layer instead of layers->[] (more efficient now that layers() recreates the array). 2014-06-13 18:46:14 +03:00
Alessandro Ranellucci
b9de65e174 Removed warning 2014-06-13 16:18:00 +02:00
Alessandro Ranellucci
a35ab2f4ee Added an option for enabling/disabling background processing 2014-06-13 15:54:13 +02:00
Alessandro Ranellucci
a0674714b1 More work for background processing 2014-06-13 14:27:55 +02:00
Alessandro Ranellucci
d9e7a50a6e Partial work for background processing 2014-06-13 11:19:53 +02:00
Alessandro Ranellucci
97231327e0 Have Print::apply_config() return true if any step was invalidated 2014-06-12 09:29:26 +02:00
Alessandro Ranellucci
5e80d7a388 Readd use strict and use warnings 2014-06-12 09:23:10 +02:00
Alessandro Ranellucci
6194cbf530 Refactoring: new method in Flow for calculating spacing between extrusions having different width 2014-06-12 09:17:37 +02:00
Alessandro Ranellucci
8ee11b3239 Refactoring: keep height in Flow object and calculate spacing on demand 2014-06-12 01:00:13 +02:00
Alessandro Ranellucci
89ff1a50b2 Removed debugging line 2014-06-11 22:20:59 +02:00
Alessandro Ranellucci
34750d47fe Move external_perimeters_first to PrintRegionConfig 2014-06-11 22:15:28 +02:00
Alessandro Ranellucci
e158d1e612 Move bridge_flow_ratio to PrintRegionConfig 2014-06-11 22:10:33 +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
1674108bac Don't apply pillars to raft layers 2014-06-11 21:58:35 +02:00
Alessandro Ranellucci
82e2dd4e62 Bugfix: wrong number of raft layers in some situations due to a numerical error 2014-06-11 21:58:28 +02:00
Alessandro Ranellucci
1f497c0f7c Make support material generation idempotent 2014-06-11 18:02:51 +02:00
Alessandro Ranellucci
7ccfd2f024 More work on incremental slicing 2014-06-11 17:51:18 +02:00
Alessandro Ranellucci
d2ca4c1b13 Some initial work for incremental slicing 2014-06-11 00:15:02 +02:00
Alessandro Ranellucci
5c54acf9ac Use ->ptr() for CoolingBuffer too 2014-06-10 16:17:34 +02:00
Alessandro Ranellucci
2d14ddb955 Enable step caching 2014-06-10 16:12:14 +02:00
Alessandro Ranellucci
3f6360ee8f Finish porting Print classes to XS 2014-06-10 16:01:57 +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
e3e69251cb New XY Size Compensation option. #581 #56 2014-06-10 13:28:57 +02:00
Alessandro Ranellucci
af1a47c461 Minor optimization 2014-06-10 00:54:37 +02:00
Alessandro Ranellucci
3599bd0bae Distinct extrusion width for external perimeters 2014-06-09 21:22:15 +02:00
Alessandro Ranellucci
d1511f4a00 Merge remote-tracking branch 'origin/newplater' 2014-06-09 18:57:17 +02:00
Alessandro Ranellucci
64853d5661 Bugfix: M73 was exceeding 100% when multiple objects were printed together. #1912 2014-06-05 16:24:47 +02:00
Alessandro Ranellucci
39b8ac80ee Ignore holes in object footprint when generating raft 2014-05-29 14:54:47 +02:00
Alessandro Ranellucci
defe0a4279 Move 2D canvas to a distinct class for better isolation 2014-05-28 12:29:43 +02:00
Alessandro Ranellucci
ce1e736b6b Bugfix: crash when skirt was contained in brim area. Includes regression test. #2058 2014-05-27 13:38:41 +02:00
Alessandro Ranellucci
7215e66a6a Merge branch 'master' into visilibity
Conflicts:
	lib/Slic3r/GCode.pm
	xs/MANIFEST
2014-05-27 00:04:53 +02:00
Alessandro Ranellucci
98b8936ee2 Automatically disable retract_layer_change when using spiral_vase 2014-05-26 23:51:58 +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
Alessandro Ranellucci
8290a006ed Bugfix: a lot of extra support material was generated when using both raft layers and support material. #2030 2014-05-26 14:09:42 +02:00
Alessandro Ranellucci
e62672f787 Fix regression in Split from GUI. Might be related to #1998 2014-05-26 13:10:58 +02:00
Alessandro Ranellucci
2bce8bb745 Bugfix: detect thin fill loops so that they can be started at the nearest point without unnecessary loops. #1990 2014-05-26 12:09:13 +02:00
Alessandro Ranellucci
abdf6531f1 Bugfix: wrong logic for concave_points() and convex_points() 2014-05-26 11:50:42 +02:00
Alessandro Ranellucci
7ea09a0071 Bugfix: failure when exporting SVG from object containing multiple islands. Includes regression test. #2050 2014-05-26 11:13:53 +02:00
Alessandro Ranellucci
4e5f7d74ff Bugfix: wrong handling of large number of raft layers. #2041 2014-05-25 23:17:00 +02:00
Y. Sapir
19d18bdd84 Attempt to solve conflict with a3bd1b5 by adding id to PrintObject and using that as a hash key. 2014-05-25 03:00:29 +03:00
Y. Sapir
85cbbed663 Set ISA manually for Slic3r::Layer::Support. 2014-05-24 23:50:46 +03:00
Y. Sapir
8da0bded1d Move Print object storage to C++. (along with its subobjects) 2014-05-24 23:50:29 +03:00
Alessandro Ranellucci
88a2e5c791 Typo seal -> seam :-) 2014-05-24 22:10:28 +02:00
Alessandro Ranellucci
fcdb462abe Failing test cases for Clipper bug returning empty result set. #2028 2014-05-24 00:00:15 +02:00
Alessandro Ranellucci
a3bd1b5302 New seal_position option that replaces randomize_start, start_perimeters_at_concave_points and start_perimeters_at_non_overhang. The two latter options are now always on by default. A new "Aligned" seal position value has been added, that forces starting points to be aligned when not randomized. #1741 #925 2014-05-22 19:34:49 +02:00
Alessandro Ranellucci
f2c5e799b1 Enforce seam alignment and blend in spiral vase. #2023 2014-05-22 12:28:12 +02:00
Alessandro Ranellucci
8ca352eb62 Separate speed option for support material interface. #2009 2014-05-21 15:21:20 +02:00
Alessandro Ranellucci
a8b6e32767 Gracefully handle loading config files having empty strings for multi-value options (like wipe). #2003 2014-05-21 11:38:42 +02:00
Alessandro Ranellucci
85b0a4376a Use last extruder's settings when adding new ones. #1997 2014-05-20 23:37:17 +02:00
Alessandro Ranellucci
0ba685f556 Fix regression causing config validation to be ignored when using the Export G-code button in plater. #2046 2014-05-20 23:29:43 +02:00
Alessandro Ranellucci
63d56c666b Include full config in G-code files. #2047 #2032 2014-05-20 23:25:12 +02:00
Alessandro Ranellucci
a00f6c72ed Don't emit temperature commands if standby temperature delta is zero 2014-05-18 23:56:00 +02:00
Alessandro Ranellucci
038076e040 Bugfix: first layer extrusion width wasn't affecting infill. Includes regression test. #2042 2014-05-18 23:36:30 +02:00
Alessandro Ranellucci
3f29a9292a Remove unused method SkeinPanel::init_print() 2014-05-18 18:47:16 +02:00
Alessandro Ranellucci
0ddcefe956 Use support material speed for skirt and brim instead of perimeter speed so that perimeter speed can be set on a per-region basis 2014-05-18 17:02:18 +02:00
Alessandro Ranellucci
58ffaca2df Bugfix: ooze_prevention brought the extruder too far. Includes regression test 2014-05-15 19:23:57 +02:00
Alessandro Ranellucci
ac0a91a162 Move many speed settings to PrintRegionConfig 2014-05-15 18:53:05 +02:00
Alessandro Ranellucci
ad99b2a0fd Fixed one more regression introduced with Model refactoring. Includes regression test 2014-05-15 16:37:18 +02:00
Alessandro Ranellucci
dd1183f19a Some fixed after the recent Slic3r::GCode refactoring 2014-05-15 15:54:16 +02:00
Alessandro Ranellucci
5fe5021fd7 Implemented avoid_crossing_perimeters with VisiLibity 2014-05-13 20:06:01 +02:00
Alessandro Ranellucci
ee2c1c6127 Refactored the Slic3r::GCode logic for speeds 2014-05-13 08:34:21 +02:00
Alessandro Ranellucci
5d12a03b82 Move Detect Bridging Perimeters to region config 2014-05-12 23:02:33 +02:00
Alessandro Ranellucci
59f0e76da1 Distinct extrusion role for support material interface 2014-05-12 22:59:49 +02:00
Alessandro Ranellucci
baefefc50d One method call not changed after Model refactoring 2014-05-12 22:42:50 +02:00
Alessandro Ranellucci
69002b8ea2 No tests were covering randomize-start, which was not working anymore after recent ExtrusionLoop refactoring. #2028 2014-05-12 21:49:17 +02:00
Alessandro Ranellucci
47940a712d Bugfix: previous brim and skirt were not cleared when disabled after first G-code export. #2024 2014-05-10 20:54:12 +02:00
Alessandro Ranellucci
27c73f5983 Some fixes after the recent Model refactoring 2014-05-10 16:59:17 +02:00
Alessandro Ranellucci
7ba08c90cf Refactoring to Model API for making it stricter and safer 2014-05-09 14:24:35 +02:00
Alessandro Ranellucci
6e207d3830 Merge branch 'sapir-modelcpp' 2014-05-08 11:13:21 +02:00
Alessandro Ranellucci
c37ef2f18b New semantics for ExtrusionLoop objects. Early processing of perimeter overhangs for paralellizing such work and making G-code export lighter. Lots of refactoring. This should fix a number of minor bugs, including reversals of perimeter overhangs. 2014-05-08 11:07:37 +02:00
Alessandro Ranellucci
093d1cbe2f Don't transfer ownership of Model to Print::Object 2014-05-07 01:11:49 +02:00
Alessandro Ranellucci
13af16ea24 Use Pointf for origin_translation and pass const refs whenever possible 2014-05-07 00:58:29 +02:00
Alessandro Ranellucci
54a199919b Removed StringMap 2014-05-07 00:22:56 +02:00
Y. Sapir
05b2993769 Translate Model class' storage to C++.
Some code copied from xs-model branch.

Also:
* Generate ::Ref classes programatically.
* Add separate __REGISTER_CLASS macro
    (for use where forward declaration won't work, i.e. typedefs)
2014-05-05 16:30:19 +03:00
Alessandro Ranellucci
cb1527f7ef Refactoring: move direction math into a single function. Includes some fixes and adjustments 2014-05-02 18:48:11 +02:00
Alessandro Ranellucci
31113b8a78 Typo in 0a88492 2014-05-02 13:31:41 +02:00
Alessandro Ranellucci
0a88492fdc Use a more robust parallelism detection 2014-05-02 13:26:59 +02:00
Alessandro Ranellucci
fce669dea0 Don't return empty halves after cutting 2014-05-02 13:13:47 +02:00
Alessandro Ranellucci
fc3a73afe8 Make OpenGL::Array thread-safe, thus fixing the crash after the cut dialog is closed in threaded perl 2014-05-02 13:13:13 +02:00
Alessandro Ranellucci
5f88135074 Adjust XY distance of the contact loop 2014-05-02 10:49:14 +02:00
Alessandro Ranellucci
2a3923934e Update timestamp before the Export G-code dialog is shown. #1995 2014-05-01 21:42:12 +02:00
Alessandro Ranellucci
4311f30739 Fixed one typo in BridgeDetector and some improvements to support material 2014-05-01 19:11:53 +02:00
Alessandro Ranellucci
010b71e9d4 Improvements to avoid numerical issues in bridge detection and bridge exclusion 2014-04-30 15:16:15 +02:00
Alessandro Ranellucci
4680bbdfe2 Make sure spiral vase mode is not enabled for multi-island layers. #1938 2014-04-30 12:23:07 +02:00
Alessandro Ranellucci
8ded268e7e Take into account that $layerm->perimeters also contains ExtrusionPath objects. #1991 2014-04-30 10:47:31 +02:00
Alessandro Ranellucci
1667d1826d Put continuous base flange under pillars support material 2014-04-30 01:51:19 +02:00
Alessandro Ranellucci
1d10cd3da6 Also remove bridged perimeters area from support material 2014-04-30 01:20:18 +02:00
Alessandro Ranellucci
3e3cc4171c TODO about bridges and support material 2014-04-29 23:40:52 +02:00
Alessandro Ranellucci
ef2296dc8d Make sure interface and base generation honor the gap between support material and object 2014-04-29 23:29:52 +02:00
Alessandro Ranellucci
ed1c6d1aaa Removed debugging line 2014-04-29 23:17:01 +02:00
Alessandro Ranellucci
98e40d3fe4 Store width and height in ExtrusionEntity objects for debugging purposes 2014-04-29 23:16:16 +02:00
Petr Ledvina
78a08e0665 Commented out test (breakpoint) line 2014-04-29 22:55:10 +02:00
Alessandro Ranellucci
a31b2e6ca2 Stricter implementation of the overhang detection. Includes unit tests 2014-04-29 19:58:58 +02:00
Alessandro Ranellucci
caf7b3f97e Prune bridge angles 2014-04-29 18:36:50 +02:00
Alessandro Ranellucci
7a9dec3720 One more change to multi-value placeholders: indices start from 0. #1899 2014-04-29 17:12:00 +02:00
Alessandro Ranellucci
a4b6075600 Fixed regression and ambiguity about multiple-value placeholders like [first_layer_temperature_1]. Includes several unit tests covering regression. #1899 2014-04-29 17:06:31 +02:00
Alessandro Ranellucci
913ab54a2b Bugfix: gap fill was not inserted in the correct order before leaving island. Includes regression test. #1907 2014-04-29 15:25:14 +02:00
Alessandro Ranellucci
0b0ec7be37 Fixed regression causing bad loading of multi-extruder values in GUI. #1984 2014-04-28 22:31:29 +02:00
Alessandro Ranellucci
f7421053cc Improvements to bridge angle detection: use coverage test for all cases (including two-sided bridges and C-shaped bridges) and check for all angles equal to directions of bridge sides 2014-04-28 22:15:40 +02:00
Alessandro Ranellucci
24571612c7 Some minor changes to the newly-ported Extruder class 2014-04-28 22:02:34 +02:00
Alessandro Ranellucci
4c330b6c59 Merge pull request #1968 from sapir/extrudercpp
Translate Extruder class to C++
2014-04-28 21:45:53 +02:00
Alessandro Ranellucci
2720000a17 New get_trapezoids() implementation. Maybe heavier but it doesn't fail with some versions of GCC like the one provided by Boost.Polygon. #1965 2014-04-28 20:14:20 +02:00
Y. Sapir
ad03a88733 Add xsp wrapper for Pointf class. 2014-04-28 01:13:50 +03:00
Y. Sapir
e005ff32c4 Replace Extruder::config accessor with Perl wrapper, with C++ option accessors. 2014-04-28 00:49:05 +03:00
Y. Sapir
2565d80679 Replace multitude of Extruder fields with querying a PrintConfig object by id. 2014-04-27 23:43:44 +03:00
Y. Sapir
66d23a2416 Convert Extruder object (mostly) to C++ with lots of fields. 2014-04-27 23:42:59 +03:00
Alessandro Ranellucci
2738a304e8 Update credits. Mention Gary Hodgson, Petr Ledvinap, Y. Sapir 2014-04-27 20:04:02 +02:00
Alessandro Ranellucci
ce9cf4d964 Don't put supports under bridges and potential bridges 2014-04-26 17:19:50 +02:00
Alessandro Ranellucci
148c773319 Exclude support from bridged areas 2014-04-26 16:07:43 +02:00
Alessandro Ranellucci
073b7fca1f One more fix after recent fix to default extrusion width 2014-04-25 20:19:02 +02:00
Alessandro Ranellucci
9ee3868f92 Removed debugging line left 2014-04-25 20:05:08 +02:00
Alessandro Ranellucci
6780e930cb Update the [timestamp] placeholder(s) at every G-code export. #1957 2014-04-25 19:47:13 +02:00
Alessandro Ranellucci
7ac0095018 Fix regression causing default extrusion width to be ignored. #1958 2014-04-25 19:39:27 +02:00
Alessandro Ranellucci
f6897a346a Fix islands not being ordered efficiently with the logic that completes each of them before moving to the next one (which is now the default behavior). #1137 2014-04-25 19:11:17 +02:00
Alessandro Ranellucci
2a2ba15665 Use a slider for the cutting GUI 2014-04-25 18:36:08 +02:00
Alessandro Ranellucci
8db4913b04 New option for rotating the lower part resulting from the cut so that the flat surface lies on the print bed 2014-04-25 17:50:03 +02:00
Alessandro Ranellucci
4f17c2b7d1 First working implementation of a GUI for cutting 2014-04-25 17:14:39 +02:00
Alessandro Ranellucci
882a98ed44 Initial work for a GUI for the cut feature 2014-04-25 14:54:08 +02:00
Alessandro Ranellucci
fe1691c151 New --cut feature 2014-04-25 10:20:30 +02:00
Alessandro Ranellucci
6201aacf88 New coverage detection for bridges. Includes implementation of ExPolygon::get_trapezoids() 2014-04-24 13:44:39 +02:00
Petr Ledvina
802ebfb0d6 Fix bridge detector
Test line direction is changed to reflect 0=east angle system
Test patern rotation direction is reversed - $angle represents infill direction
Angle test is changed to avoid returning negative value (this does happen otherwise - adding increments to $angle
creates ~ 1e-15 rounding error)
2014-04-23 11:35:58 +02:00
Alessandro Ranellucci
3a49dccf69 Bugfix: version check caused crash 2014-04-22 11:59:01 +02:00
Alessandro Ranellucci
9989ebaabd Refactored the BridgeDetector class to expose a cleaner API and make it stateful 2014-04-22 00:59:14 +02:00
Alessandro Ranellucci
bc101bd93e Assume bridge angle is stored in radians in infill generation. #1917 2014-04-21 23:21:15 +02:00
Alessandro Ranellucci
f7e8a99078 More tests and related fixes to bridge detection. #1917 2014-04-21 20:44:21 +02:00
Alessandro Ranellucci
7041ebdd22 Workaround for upstream module bug causing command line option parsing for multi-boolean options like retract-layer-change and wipe 2014-04-19 19:14:41 +02:00
Alessandro Ranellucci
5d10ef514f Workaround wxWidgets not allowing SetValue() inside a EVT_COMBOBOX handler on Windows. #1865 2014-04-19 18:42:52 +02:00
Alessandro Ranellucci
a49e786b04 Handle EVT_TEXT on wxSpinCtrl too 2014-04-19 18:29:40 +02:00
Alessandro Ranellucci
6e6fb427fb Fixes for the last commit about kill focus. #1873 2014-04-19 18:16:34 +02:00
Alessandro Ranellucci
10a5a061d4 Bugfix: wxWidgets on Windows needs Skip() on kill focus to prevent nasty focus bugs. #1873 2014-04-19 18:05:01 +02:00
Alessandro Ranellucci
a248c98192 Fixed regression when concentric infill was used as solid infill. Includes regression test. #1650 2014-04-19 16:53:37 +02:00
Alessandro Ranellucci
c3bb8a69db Bugfix: crash when extending an array option by 2+ positions. #1908 2014-04-19 16:38:28 +02:00
Alessandro Ranellucci
f6e99f1467 Bugfix: [filament_preset] was not replaced in filename when using Quick Slice. #1870 2014-04-19 12:10:15 +02:00
Alessandro Ranellucci
1e5dcd8154 Always do one island at time instead of doing that only when avoid_crossing_perimeters is enabled. #1907 2014-04-19 11:57:01 +02:00
Alessandro Ranellucci
f51921a11a Default extruder wasn't applied to perimeter extruder. Includes regression test. #1868 2014-04-19 11:43:41 +02:00
Alessandro Ranellucci
0c50ab5323 Removed duplicated method added to Slic3r::Line in caf20664cd. #1945 2014-04-19 10:52:12 +02:00
Alessandro Ranellucci
caf20664cd Bugfix: ExPolygon::contains_line() was called with a Polyline object but didn't throw any error. Thanks ledvinap #1945 2014-04-19 01:26:21 +02:00
Alessandro Ranellucci
62e19469bc Fixed regression in --infill-only-where-needed. Includes a minimal test suite for such feature. #1871
Conflicts:

	t/fill.t
2014-04-18 21:48:32 +02:00
Alessandro Ranellucci
15628a90ed Regression test for numerical issues causing thin gaps between perimeters and infill. #1803 2014-04-18 17:30:35 +02:00
Alessandro Ranellucci
93f4fe05e1 Better logic for gap fill: don't subtract from fill surfaces those gaps that medial axis was unable to fill. Thanks ledvinap for the idea and proof of concept implementation. Includes a tolerance factor for avoiding being too strict when collapsing loops (allow some overlap if that helps avoiding triggering medial axis). #1803 2014-04-15 01:41:40 +02:00
Alessandro Ranellucci
e02d33bbce Remove weak test. #1803 2014-04-15 00:57:43 +02:00
Alessandro Ranellucci
43ffb7d3e8 Bugfix: sometimes a tiny gap was left between infill and perimeters. Includes regression test. #1803 2014-04-15 00:22:31 +02:00
Alessandro Ranellucci
f9661b02a6 Bugfix in utils/pdf-slices.pl, wrong shift caused slices to be outside the media box 2014-04-11 19:55:15 +02:00
Alessandro Ranellucci
8e5ca0ab76 Fixed a couple typos 2014-04-09 00:36:13 +02:00
Alessandro Ranellucci
627f23d5fe Make angle increment (i.e. angle resolution) configurable 2014-04-08 16:53:32 +02:00
Alessandro Ranellucci
38f6e3b643 More unit tests for bridge angle detection 2014-04-08 15:18:37 +02:00
Alessandro Ranellucci
9be57f750d Some fixes to bridge direction detection. Includes regression tests 2014-04-08 14:51:55 +02:00
Alessandro Ranellucci
23e6abff49 Added first unit test for bridge direction 2014-04-08 13:08:42 +02:00
Alessandro Ranellucci
119778caa9 Refactoring: move bridge angle detection to a separate class for easier unit testing 2014-04-07 23:18:11 +02:00
Alessandro Ranellucci
93a7d87fc6 Bugfix: pillars support material crashed when no overhangs were detected 2014-04-07 16:59:22 +02:00
Alessandro Ranellucci
1c020eda78 Merge pull request #1911 from sapir/speed
Rewriting the extrusion path gcode generation in C++
2014-04-07 09:38:21 +02:00
Alessandro Ranellucci
33ade1328f Fix regression causing profile names to be listed in random order. #1864 2014-04-06 22:45:40 +02:00
Alessandro Ranellucci
e4709068b9 Some more unit tests for arc fitting 2014-04-06 22:32:53 +02:00
Alessandro Ranellucci
1d35701f99 Incomplete work on arc fitting. Results are still incomplete. More unit tests are needed 2014-04-06 22:10:34 +02:00
Alessandro Ranellucci
c7a96a3113 Merge pull request #1881 from sapir/master
Disable some calls to on_presets_changed to speed up switching profiles
2014-04-06 12:52:05 +02:00
Alessandro Ranellucci
20df1023a6 Fixed broken command line scaling. Regression test was in previous commit. #1889 2014-04-05 11:22:05 +02:00
Alessandro Ranellucci
e9e23119fc Failing test for broken command line scaling. #1889 2014-04-05 11:21:26 +02:00
Alessandro Ranellucci
fc4ac5ded4 Re-enable the threads config option. #1882 2014-04-05 10:58:03 +02:00
Alessandro Ranellucci
d6d6a51e0d Fix for incomplete extrusion on solid surfaces 2014-04-05 10:54:24 +02:00
Alessandro Ranellucci
6f3844c1ba Fix crash when using multiple skirts with a single, non-zero, extruder. Includes regression test 2014-04-05 10:09:05 +02:00
Alessandro Ranellucci
a6dd68a2a6 Bugfix: crash when setting number of extruders. #1876 2014-04-05 09:54:43 +02:00
Alessandro Ranellucci
45559f87f3 Save the vector used for aligning object volumes to origin and apply it to additional parts added from the object part panel in order to make them coincide 2014-04-02 20:23:26 +02:00
Y. Sapir
4deeff995a Move extrusion path gcode generation to C++ for speed. 2014-04-01 21:11:43 +03:00
Y. Sapir
f56206cac3 Precache gcode_comments flag before path loop. 2014-04-01 21:11:43 +03:00
Y. Sapir
9f71ea15cf Precompute X and Y offsets before path loop. 2014-04-01 21:11:43 +03:00
Y. Sapir
576d02a20d Make set_dirty ignore changes that don't do anything. 2014-03-30 00:23:35 +03:00
Y. Sapir
09d7d9b034 Remove call to on_presets_changed from Tab Page's on_change.
(set_dirty is called which handles it anyway.)
2014-03-30 00:21:57 +03:00
Alessandro Ranellucci
017158c877 Update year to 2014 in about dialog 2014-03-27 15:33:17 +01:00
Alessandro Ranellucci
071097d3f1 Fix extruder assignment and tests 2014-03-27 00:01:33 +01:00
Alessandro Ranellucci
10bf334a58 Added one more failing test to address bad option priority hierarchy 2014-03-26 19:42:01 +01:00
Alessandro Ranellucci
0ff33f47f1 Fix the extruder override logic. All role-based extruder options now default to 0, meaning no override is defined and the default (inherited) extruder is used. The default extruder option does not use the shortcut logic anymore (it was thus moved to be a CLI-specific logic) 2014-03-26 00:08:15 +01:00
Alessandro Ranellucci
2e6213fea6 Prevent crash when changing number of extruders 2014-03-25 19:21:44 +01:00
Alessandro Ranellucci
d1bb69434e Handle non existing STL files gracefully 2014-03-25 19:06:51 +01:00
Alessandro Ranellucci
9b2445f0f5 Assign default material to OBJ files too 2014-03-25 15:39:13 +01:00
Alessandro Ranellucci
25191bd405 Prevent circular event handlers on Windows. #1856 2014-03-25 15:30:56 +01:00
Alessandro Ranellucci
f6f1517f58 Bugfix: the Add button in plater wasn't working anymore. #1856 2014-03-25 15:07:21 +01:00
Alessandro Ranellucci
7e3425d433 Bugfix: wizard wasn't run when user supplied an existing empty directory as --datadir 2014-03-25 14:07:03 +01:00
Alessandro Ranellucci
fed8783e30 New commands for exporting/importing full config bundles. Useful for printer vendors. #1365 2014-03-25 14:04:01 +01:00
Alessandro Ranellucci
c98c992b4d Revert wrong fix, applied because of bad understanding of the issue about deserialization of extruder_offset = 0x0 2014-03-25 01:20:46 +01:00
Alessandro Ranellucci
432a87e73d New option for forcing the generation of interface shells. #1847 2014-03-25 01:11:28 +01:00
Alessandro Ranellucci
6feff7fe53 Test that stacked cubes with distinct extruders don't generate any internal interface shells. #1847 2014-03-24 23:44:47 +01:00
Alessandro Ranellucci
72a6848f1b Fixed regression causing wrong relative positions of objects after splitting in plater. #1758 2014-03-24 21:42:38 +01:00
Alessandro Ranellucci
5ce4de0544 Bugfix: wrong inwards moves were calculated for 2+ copies because ExtrusionLoop objects were modified in place. Includes regression test. #1842 2014-03-24 20:01:14 +01:00
Alessandro Ranellucci
b4ac63d749 Error in previous commit: Bugfix: prevent crash when user entered Unicode characters in notes. #1590 2014-03-24 17:52:50 +01:00
Alessandro Ranellucci
ce984ef78c Revert "Error in previous commit: Bugfix: prevent crash when user entered Unicode characters in notes. #1590"
This reverts commit e355e521d4.
2014-03-24 17:52:14 +01:00
Alessandro Ranellucci
e355e521d4 Error in previous commit: Bugfix: prevent crash when user entered Unicode characters in notes. #1590 2014-03-24 17:02:25 +01:00
Alessandro Ranellucci
d9d2f3b3ab Bugfix: prevent crash when user entered Unicode characters in notes. #1590 2014-03-24 16:37:20 +01:00
Alessandro Ranellucci
7a58457add Prevent GUI from crashing when invalid values were written in numeric fields. Includes basic validation. #1709 2014-03-24 01:07:30 +01:00
Alessandro Ranellucci
67f3e9962b Prevent user from saving a preset with the "- default -" name. #1717 2014-03-23 21:40:45 +01:00
Alessandro Ranellucci
5d3c8575c5 Bugfix: holes were not sorted using the nearest-neighbor search, resulting in inefficient paths. #1785 2014-03-23 19:55:31 +01:00
Alessandro Ranellucci
ea3266c6e9 Fix modifiers 2014-03-23 16:56:41 +01:00
Alessandro Ranellucci
fec41d6dfd Update plater and print upon changing object parts and their settings 2014-03-23 16:45:55 +01:00
Alessandro Ranellucci
67ef3f1799 Assign a default extruder for newly added parts too 2014-03-23 15:25:26 +01:00
Alessandro Ranellucci
d75417601e Make the override panel prettier and prevent the default extruder setting from being deleted since it can't be readded manually 2014-03-23 15:18:08 +01:00
Alessandro Ranellucci
bf8c388568 Use a popup menu for part settings 2014-03-23 13:46:05 +01:00
Alessandro Ranellucci
21e6de0e59 Only expand shortcut options in StaticConfig objects. This way we can keep a default extruder value in the parts panel 2014-03-22 20:12:54 +01:00
Alessandro Ranellucci
61db9530d9 Fix AMF settings not being correctly propagated to plater and parts panel 2014-03-22 18:02:58 +01:00
Alessandro Ranellucci
6a157c22c2 Fixed minor fatal error 2014-03-22 17:44:42 +01:00
Alessandro Ranellucci
f71ac8cd65 Merge the Object Settings tab into the Parts tab 2014-03-22 17:41:14 +01:00
Alessandro Ranellucci
b5b735c988 ComboBox for fill density values 2014-03-22 17:01:48 +01:00
Alessandro Ranellucci
7421a7bf63 Turn fill_density into percentage 2014-03-22 16:23:33 +01:00
Alessandro Ranellucci
30aa255bb5 Correctly disable and reset the override settings panel 2014-03-21 22:15:33 +01:00
Alessandro Ranellucci
bf352de224 Replaced icon for modifier meshes and fixed delete button not being disabled when no part was selected 2014-03-21 22:06:47 +01:00
Alessandro Ranellucci
34f1511e0c Better fix for non-global options not being replaced in filename placeholders. Includes refactoring and a new PlaceholderParser class. Also includes regression tests. #1831 2014-03-17 00:39:07 +01:00
Alessandro Ranellucci
bc054e613c Fix regression causing non-global config options to be ignored when replacing placeholders in output filename format. #1831 2014-03-15 20:45:10 +01:00
Alessandro Ranellucci
96c2c21707 Minor bugfix for preventing wrong extruder numbers from being assigned 2014-03-15 18:24:56 +01:00
Alessandro Ranellucci
52de292a48 Fixed wrong refactoring of perimeter tree traversal. #1832 2014-03-15 02:16:04 +01:00
Alessandro Ranellucci
b71d28bd5a Fix minor error and update MANIFEST 2014-03-11 19:19:34 +01:00
Alessandro Ranellucci
f344426873 Better linear gap fill, now with adaptive extrusion width 2014-03-11 19:08:14 +01:00
Alessandro Ranellucci
98b7ae0022 Initial implementation of linear gap fill 2014-03-09 21:26:03 +01:00
Alessandro Ranellucci
7f5442265e Include thin walls in general top-level perimeter sorting to get more efficient paths 2014-03-09 20:19:30 +01:00
Alessandro Ranellucci
2a73ab988f Recursive pruning. Some more unit tests 2014-03-09 17:46:02 +01:00
Alessandro Ranellucci
04d80ca392 Some improvements to pruning and some additions here and there 2014-03-05 18:43:01 +01:00
Alessandro Ranellucci
c2ed6090d3 Fix the max width supplied to medial axis code: it's up to two extrusions 2014-03-05 00:53:51 +01:00
Alessandro Ranellucci
4a894b1e20 Add safety offset to thin wall regions to prevent overlapping geometry and corrupt Voronoi diagram 2014-03-05 00:45:17 +01:00
Alessandro Ranellucci
3c77b301a7 Promising approach to medial axis pruning 2014-03-04 23:33:13 +01:00
Alessandro Ranellucci
8644440070 Minor improvements to SVG debug output for medial axis 2014-03-03 14:20:15 +01:00
Alessandro Ranellucci
eadffe4a9e Merge branch 'master' into boost-medialaxis
Conflicts:
	lib/Slic3r/Layer/Region.pm
	xs/src/ExPolygon.cpp
	xs/src/Point.cpp
	xs/src/Point.hpp
	xs/src/TriangleMesh.cpp
	xs/t/01_trianglemesh.t
2014-03-02 22:36:20 +01:00
Alessandro Ranellucci
0f9e143ba1 Removed debugging line 2014-03-02 00:44:16 +01:00
Alessandro Ranellucci
2295d48947 Better pruning of thin walls to avoid unwanted extra extrusions. Includes regression test. #1794
Conflicts:

	lib/Slic3r/Layer/Region.pm
2014-03-02 00:31:17 +01:00
Alessandro Ranellucci
a344d68257 Use bridge speed for first solid layer above sparse infill. Includes unit test. #1792 2014-03-01 20:35:44 +01:00
Mark Hindess
59ebdebf72 Revert "Fix crash reported by Simooon on #Slic3r."
It turns out this helped on the version of stable I was using
but not on master.

This reverts commit 8df6e2d930.
2014-02-16 14:00:28 +00:00
Mark Hindess
8df6e2d930 Fix crash reported by Simooon on #Slic3r.
Error was:

  Argument "" isn't numeric in subroutine entry at
    lib/Slic3r/GUI/OptionsGroup.pm line 392
2014-02-16 12:05:01 +00:00
Alessandro Ranellucci
e837183327 Fixed regression when using --infill-only-where-needed. Includes regression test. #1721 2014-02-16 12:48:07 +01:00
Alessandro Ranellucci
878deb8183 Write material config to AMF files. Remove the old Materials tab. Update custom settings when a part is selected 2014-02-15 00:36:52 +01:00
Alessandro Ranellucci
691db31da0 Some incomplete work for per-region config 2014-02-14 22:26:00 +01:00
Alessandro Ranellucci
2e7b29fbdd Minor layout changes to the Parts editor 2014-02-14 22:25:59 +01:00
Alessandro Ranellucci
bf307371f4 Use a plain list instead of a tree to display object parts 2014-02-14 22:25:59 +01:00
Alessandro Ranellucci
df508551d0 Refresh plater canvas when switching presets 2014-02-14 22:25:58 +01:00
Alessandro Ranellucci
4c650a6d80 Fix regression about percent extrusion width not being validated. Includes regression test 2014-02-13 18:42:49 +01:00
Alessandro Ranellucci
49d290accf Fixed spiral vase regressions. Includes regression tests. #1773 2014-02-13 16:11:12 +01:00
Alessandro Ranellucci
0060873f1c Regression test and incomplete fix for bug affecting wrong spiral vase output. #1773
Conflicts:

	lib/Slic3r/GCode/Layer.pm
2014-02-13 16:11:02 +01:00
Alessandro Ranellucci
94cb298eec Make OpenGL optional for the new parts dialog. #1731 2014-02-11 01:09:10 +01:00
Alessandro Ranellucci
b961849c38 Bugfix: crashing when concentric infill produced very narrow loops. #1740
Conflicts:

	lib/Slic3r/Fill/Concentric.pm
2014-02-10 16:05:40 +01:00
Alessandro Ranellucci
3d483722c6 Perform additional checks before merging solid surfaces (i.e. take flow and fill pattern into account) 2014-02-10 13:19:44 +01:00
Alessandro Ranellucci
634ccb33ab Fix regression in Config->setenv affecting post-processing scripts. Includes regression test 2014-02-09 23:14:32 +01:00
Alessandro Ranellucci
bba69ed22f Merge pull request #1742 from treygreer/master
fixed simple config load bug
2014-02-07 02:12:42 +01:00
Alessandro Ranellucci
ffc891d885 Bugfix: when processing with fill_density = 0, top/bottom solid shells were missing regions thinner than 3 * extrusion width. Includes regression test. #1602
Conflicts:

	lib/Slic3r/Print/Object.pm
	t/fill.t
2014-02-07 02:07:21 +01:00
Trey Greer
0dba3dee58 fixed simple config load bug 2014-01-28 19:05:20 -05:00
Alessandro Ranellucci
42519174cd New erase() method for DynamicConfig objects 2014-01-22 21:15:19 +01:00
Alessandro Ranellucci
b5b8fb606f Basic functionality of the Parts tab is complete 2014-01-22 21:15:19 +01:00
Alessandro Ranellucci
7387e60706 More incomplete work 2014-01-22 21:15:19 +01:00
Alessandro Ranellucci
b20caa4e31 Completed parts visualization with highlighting 2014-01-22 21:15:19 +01:00
Alessandro Ranellucci
3f4f27fa5d Some incomplete work for interactive part editor 2014-01-22 21:15:18 +01:00
Alessandro Ranellucci
fd43ada293 Remove duplicated "Generating skirt" status message 2014-01-18 16:36:13 +01: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
86f91bb3c4 New TriangleMeshSlicer::cut() method 2014-01-16 11:25:26 +01:00
Alessandro Ranellucci
dfd9bc8958 Bugfix: prevent fatal error in the rare case that no bridge anchors are found. #1607 2014-01-15 00:24:37 +01:00
Alessandro Ranellucci
a40556ab56 Repair meshes after splitting 2014-01-14 22:06:28 +01:00
Alessandro Ranellucci
79a2bab261 Revert stupid change that broke plater and provide the correct fix for --info 2014-01-14 21:46:39 +01:00
Alessandro Ranellucci
51af10da4f Some fixes to config API 2014-01-12 12:35:13 +01:00
Alessandro Ranellucci
12b661e877 Adapt skirt logic to the potential situation of objects with different layer heights 2014-01-12 11:06:21 +01:00
Alessandro Ranellucci
a51743a8c1 Bugfix: lack of strong type checking when passing arrayref objects to XS caused random lack of infill. Now added strong type checking for all XS entities. Also fixes a potential issue with bridges caused by the same error. #1652
Conflicts:

	lib/Slic3r/Layer/Region.pm
2014-01-12 00:54:10 +01:00
Alessandro Ranellucci
e68cbede6e Add scale rotate duplicate_grid to @Ignore and fix @Ignore which was ignored 2014-01-11 23:46:20 +01:00
Alessandro Ranellucci
89d3dbaa5a Bugfix: incorrect number of raft layers was generated when too few were requested. #1678
Conflicts:

	lib/Slic3r/Print/Object.pm
2014-01-11 23:26:48 +01:00
Alessandro Ranellucci
e7349622a2 Removed dependency on Storable; some fixes in Build.PL. #1693 2014-01-11 21:46:22 +01:00
Alessandro Ranellucci
c99b9d91db Fix bug in regression infill causing bad clipping at very low layer heights. Includes regression test. #1669
Conflicts:

	lib/Slic3r/Fill/Rectilinear.pm
2014-01-11 21:34:26 +01:00
Alessandro Ranellucci
3084876e60 Fixed --info 2014-01-11 18:05:14 +01:00
Alessandro Ranellucci
ea173cf815 Bugfix: ambiguous semantics of the layers_count() method caused M73 to go beyond 100%. #1670
Conflicts:

	lib/Slic3r/GCode.pm
	lib/Slic3r/Print.pm
	lib/Slic3r/Print/Object.pm
2014-01-11 17:40:09 +01:00
Alessandro Ranellucci
c0a74780cb The ratio_over parameter was missing in the definition of first_layer_extrusion_width 2014-01-11 14:48:13 +01:00
Alessandro Ranellucci
ed3a6349c7 Adapt the new gcode.t test to master (and subtract final retraction from used filament length) 2014-01-11 14:42:31 +01:00
Alessandro Ranellucci
9515acf527 Put a hard limit on manually configured extrusion widths (10 * the largest nozzle diameter configured) to prevent confusion when a bad value is entered. #1691
Conflicts:

	lib/Slic3r/Config.pm
2014-01-11 14:32:42 +01:00
Alessandro Ranellucci
7b0decbeb1 Finished implementing Boost.Polygon medial axis. Some cleanup needed 2014-01-10 16:18:55 +01:00
Alessandro Ranellucci
07a4c37c4c Semi-working Boost.Polygon medial axis. Hangs after perimeters, though. Needs pruning and chaining 2014-01-10 11:47:16 +01:00
Alessandro Ranellucci
bf91f3096a Incomplete work for using Boost.Polygon to compute medial axis 2014-01-09 17:26:39 +01:00
Alessandro Ranellucci
11f065ca5e New object dialog tab with list of materials and volumes 2014-01-08 19:36:41 +01:00
Alessandro Ranellucci
6da98a6ecc Fix GUI 2014-01-07 19:08:37 +01:00
Alessandro Ranellucci
c8a48b4527 Implement modifier volumes and port _merge_loops() to XS 2014-01-07 15:40:38 +01:00
Alessandro Ranellucci
b17d06f9d1 Finished porting BoundingBox to XS 2014-01-07 12:48:09 +01:00
Alessandro Ranellucci
9c0a6a79d3 Incomplete work for porting BoundingBox to XS 2014-01-06 18:29:10 +01:00
Alessandro Ranellucci
3e93a14912 New support material pattern: pillars! 2014-01-05 16:51:16 +01:00
Alessandro Ranellucci
499b34dea1 Catch any click inside thumbnail's contour for easier selection of thin-walled objects 2014-01-05 15:02:12 +01:00
Alessandro Ranellucci
0bdea60b53 Merge branch 'region-config'
Conflicts:
	lib/Slic3r/Format/AMF/Parser.pm
2014-01-05 14:59:36 +01:00
Alessandro Ranellucci
2754ddf215 Fix positioning of loded AMF plates 2014-01-05 14:04:32 +01:00
Alessandro Ranellucci
036badf932 Ported Flow to XS 2014-01-05 13:16:13 +01:00
Alessandro Ranellucci
87342d324c Fix typo 2014-01-05 01:25:39 +01:00
Alessandro Ranellucci
4e76a9e4c9 Parse options from AMF metadata 2014-01-05 01:24:31 +01:00
Alessandro Ranellucci
07b9b12475 Make tests pass 2014-01-05 00:36:33 +01:00
Alessandro Ranellucci
a2cbb261cb More work for refactoring Flow/Extruder 2014-01-03 20:02:00 +01:00
Alessandro Ranellucci
8ed738d3f7 More incomplete work for Flow/Extruder refactoring 2014-01-03 18:27:46 +01:00
Alessandro Ranellucci
52ce6e4a7b Some initial work for refactoring Print->extruders 2014-01-03 10:44:36 +01:00
Alessandro Ranellucci
b9793b3f12 Moved first_layer_extrusion_width to PrintConfig 2014-01-03 00:34:30 +01:00
Alessandro Ranellucci
81663215c5 Adapt plater to the new split config 2014-01-02 22:06:58 +01:00
Alessandro Ranellucci
bfa2ee2770 Remove scale, rotate, duplicate, duplicate_grid from config (but leave them in CLI) 2014-01-02 18:01:21 +01:00
Alessandro Ranellucci
385e0e0974 Refactoring: new Slic3r::Print::Simple class for non-interactive slicing (used in CLI and Quick Slice) 2014-01-02 17:54:18 +01:00
Alessandro Ranellucci
5bf0942f45 Satisfy test suite and CLI 2014-01-02 17:24:23 +01:00
Alessandro Ranellucci
e2f1040a76 More work 2014-01-02 10:44:54 +01:00
Alessandro Ranellucci
0883d0f4eb More work here and there 2014-01-01 17:29:15 +01:00
Alessandro Ranellucci
83326845dd More incomplete work 2013-12-31 14:33:03 +01:00
Alessandro Ranellucci
d29e341a8b Parse options from AMF metadata 2013-12-30 19:00:32 +01:00
Alessandro Ranellucci
beb1baa096 Incomplete work for refactoring regions and flows 2013-12-30 18:28:41 +01:00
Alessandro Ranellucci
ca2952060d Draw more detailed thumbnails in plater and turn cursor to hand also when moving inside holes (otherwise objects with thin walls would not be easy to select) 2013-12-29 01:28:06 +01:00
Alessandro Ranellucci
13d7b39072 Fix random crashes on 32-bit. Thank you Valgrind 2013-12-28 15:37:04 +01:00
Alessandro Ranellucci
57e4e5c8e1 One more fix for ooze_prevention and skirt_height == -1 2013-12-24 15:33:54 +01:00
Alessandro Ranellucci
f9d38f6655 Allow value -1 for skirt_height with the meaning of: as tall as the object. This might fix an overflow on 32-bit systems when ooze_prevention is enabled 2013-12-24 15:16:10 +01:00
Alessandro Ranellucci
bd133d9434 Update Clipper to 6.1.2 2013-12-24 12:40:46 +01:00
Alessandro Ranellucci
1a690589a8 Satisfy test suite 2013-12-24 12:03:30 +01:00
Alessandro Ranellucci
2956c1a2e5 More work for removing references to $Slic3r::Config 2013-12-24 11:58:36 +01:00
Alessandro Ranellucci
1157a7f859 Remove package variable $Slic3r::Config 2013-12-24 11:29:31 +01:00
Alessandro Ranellucci
7ddf4f3ddf Fixes to complete_objects to make t/gcode.t pass 2013-12-24 01:13:02 +01:00
Alessandro Ranellucci
c5ead0f2a6 Fixes to Config and plater; also refactored the arrange() code 2013-12-24 00:30:51 +01:00
Alessandro Ranellucci
87c5427010 Fixed regression causing incomplete gap fill when all configured perimeters were successfully generated. #1589 2013-12-23 21:23:26 +01:00
Alessandro Ranellucci
7389bf3953 Partially revert cacbaa7319: no need for it in master branch 2013-12-23 20:40:44 +01:00
Alessandro Ranellucci
cacbaa7319 Fix regression causing thin walls to come out as zigzag paths. #1573 #1575 2013-12-23 20:37:46 +01:00
Alessandro Ranellucci
20f1f3d2b4 Fix regression preventing raft from being generated for the entire object footprint. #1614 #1567 2013-12-23 20:31:50 +01:00
Alessandro Ranellucci
fc5aac0ff6 Bugfix: fan wasn't turned on for bridges when vibration limit or another internal post-processor was enabled. Includes regression test. #1533 2013-12-23 01:19:53 +01:00
Alessandro Ranellucci
4f58a1c401 Rewrite avoid_crossing_perimeters() to fix a regression and get better performance by choosing regular points along contours. #1531
Conflicts:

	lib/Slic3r/GCode/MotionPlanner.pm
2013-12-22 19:07:07 +01:00
Alessandro Ranellucci
ab25cc4940 Merge branch 'xs-config'
Conflicts:
	lib/Slic3r/Config.pm
	xs/MANIFEST
2013-12-22 01:41:55 +01:00
Alessandro Ranellucci
c0070a8d54 Satisfy test suite with new XS based config 2013-12-22 01:38:10 +01:00
Alessandro Ranellucci
9fb62e671f Adapt GUI to new XS Config 2013-12-22 01:27:09 +01:00
Alessandro Ranellucci
4515d90052 Finished porting Config and option definition to XS 2013-12-22 00:39:03 +01:00
Alessandro Ranellucci
9836e963a5 Incomplete work for adapting the application to the new XS-based Config 2013-12-21 21:06:45 +01:00
Alessandro Ranellucci
1b9079ffbe Merge branch 'xs-model' 2013-12-20 01:41:13 +01:00
Alessandro Ranellucci
1cee992604 Temporarily disabled step-based slicing 2013-12-20 01:38:00 +01:00
Alessandro Ranellucci
a6a6a6888b Ported Slic3r::Print::State to XS 2013-12-20 01:36:42 +01:00
Alessandro Ranellucci
d2295cdf70 New Slic3r::Print::State class 2013-12-19 18:54:24 +01:00
Alessandro Ranellucci
685e8e4dfa More work for step-based slicing 2013-12-19 15:23:10 +01:00
Alessandro Ranellucci
5280b05ebb Initial work for step refactoring 2013-12-19 12:11:02 +01:00
Alessandro Ranellucci
38ea5f79d7 Merge branch 'xs-model' 2013-12-18 19:20:23 +01:00
Alessandro Ranellucci
266673213d New option for turning autocentering off. #404 2013-12-18 19:11:20 +01:00
Alessandro Ranellucci
15235699e4 Completed adapting plater behavior to new Print object API 2013-12-18 18:54:11 +01:00
Alessandro Ranellucci
916a0a0e58 Fix compilation and test suite 2013-12-18 16:34:31 +01:00
Alessandro Ranellucci
a12b1765d6 Fixed wrong commit f495136. Thanks pdbogen for the report. #1623 2013-12-18 10:21:17 +01:00
Alessandro Ranellucci
0591eecab7 Lazy mesh generation so that we only keep it in model object 2013-12-18 00:13:41 +01:00
Alessandro Ranellucci
f4951367ea Fixed fatal error about missing method thin_walls(). #1607 #1615 2013-12-17 16:17:15 +01:00
Alessandro Ranellucci
e4c9171890 Handle read_from_file() exceptions in GUI. #1619 2013-12-17 16:14:00 +01:00
Alessandro Ranellucci
94743d3af0 Handle read_from_file() exceptions in GUI. #1619 2013-12-17 16:11:42 +01:00
Alessandro Ranellucci
2d045d1f39 Removed extra line 2013-12-17 16:01:25 +01:00
Alessandro Ranellucci
02df73c94b More refactoring to clean up the Print object API 2013-12-16 00:54:59 +01:00
Alessandro Ranellucci
d3171b1eea More work for updating the embedded Print object when Model is changed in plater 2013-12-16 00:36:53 +01:00
Alessandro Ranellucci
fcbd62f07c Finished updating plater to the new centering logic 2013-12-15 23:50:05 +01:00
Alessandro Ranellucci
4993b12799 Some initial work for adapting plater to the new centering workflow 2013-12-15 18:00:44 +01:00
Alessandro Ranellucci
250608aa52 Move centering outside the Print object 2013-12-15 16:17:12 +01:00
Alessandro Ranellucci
2eff7c238e Some initial work for stateful Print object 2013-12-13 14:02:01 +01:00
Alessandro Ranellucci
14c97978c7 Use 0,0 for default instance 2013-12-13 12:24:23 +01:00
Alessandro Ranellucci
21ca1901c1 Merge branch 'xs-model'
Conflicts:
	lib/Slic3r/Model.pm
2013-12-13 12:22:17 +01:00
Alessandro Ranellucci
5470fbbebc Make quick_slice() work with new model handling 2013-12-13 12:18:30 +01:00
Alessandro Ranellucci
0e8a0ef1ca Refactoring. Use Model class for representing the plate in GUI 2013-12-12 20:19:33 +01:00
Alessandro Ranellucci
f55e057504 More work for refactoring add_model() to add_model_object(). Tests pass 2013-12-09 01:12:37 +01:00
Alessandro Ranellucci
a02ce3257e Merge branch 'stable' 2013-12-07 21:03:57 +01:00
Alessandro Ranellucci
0afee63e84 Fixed regression in object placement in STL export. #1552 2013-12-07 21:03:10 +01:00
Alessandro Ranellucci
12db58c9d0 Merge branch 'stable' 2013-12-07 14:54:07 +01:00
Alessandro Ranellucci
00e8ba4781 Fix regression causing complete_objects to skip Z moves after first object is complete. Includes regression test. #1582 #1541 2013-12-07 14:52:59 +01:00
Alessandro Ranellucci
0339d5423d Merge branch 'master' into xs-model 2013-12-06 22:48:42 +01:00
Alessandro Ranellucci
f4d12b5930 Don't return the cached bounding box but clone it 2013-12-06 22:48:12 +01:00
Alessandro Ranellucci
72fe6d903c Don't return the cached bounding box but clone it 2013-12-06 19:34:50 +01:00
Alessandro Ranellucci
7871673bf6 Initial work for new model handling 2013-11-27 12:18:24 +01:00
Alessandro Ranellucci
57fd6ad563 Removed dependency on ->object from Region.pm 2013-11-26 18:46:48 +01:00
Alessandro Ranellucci
bd8c430afd Merge branch 'stable'
Conflicts:
	lib/Slic3r/Geometry/Clipper.pm
	lib/Slic3r/Layer/Region.pm
2013-11-24 22:48:31 +01:00
Alessandro Ranellucci
3fca0956bc Adapt plater to new convex hull 2013-11-24 22:42:52 +01:00
Alessandro Ranellucci
bed1625d6b Split objects could not be repositioned in plater. 3D preview and stats were not available too. #1543 2013-11-24 14:28:17 +01:00
Alessandro Ranellucci
22605418ba Removed recursion warning in brim 2013-11-24 13:08:13 +01:00
Alessandro Ranellucci
387df3b900 Fix regression causing toolchange_gcode to crash Slic3r. Includes regression test. #1545 2013-11-24 13:04:16 +01:00
Alessandro Ranellucci
5217bc370a Fix regression causing retraction restarts to ignore extrusion_axis. Includes regression test. #1547 2013-11-24 12:37:36 +01:00
Alessandro Ranellucci
9cf138574c New TriangleMesh::convex_hull() 2013-11-24 01:15:52 +01:00
Alessandro Ranellucci
a29eeb7789 Fix t/geometry.t 2013-11-24 00:59:45 +01:00