Commit Graph

3728 Commits

Author SHA1 Message Date
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
Alessandro Ranellucci
a93c862338 Ported traverse_pt() to XS 2013-11-23 23:21:59 +01:00
Alessandro Ranellucci
b47b8ee34f Adapt new code to contains_point() 2013-11-23 22:45:17 +01:00
Alessandro Ranellucci
fc4483d09c Do perimeters one island at time instead of doing all holes before all contours 2013-11-23 22:45:00 +01:00
Alessandro Ranellucci
97c65bac90 Do perimeters one island at time instead of doing all holes before all contours 2013-11-23 22:43:30 +01:00
Alessandro Ranellucci
30297ee4dc Removed chained_path_items() 2013-11-23 21:47:33 +01:00
Alessandro Ranellucci
0045f84ed2 Removed chained_path_points() 2013-11-23 21:42:01 +01:00
Alessandro Ranellucci
0516aac715 Ported chained_path() to XS 2013-11-23 21:39:05 +01:00
Alessandro Ranellucci
4d5d003ba7 Ported horizontal_projection() to XS 2013-11-23 19:41:40 +01:00
Alessandro Ranellucci
e75dbf37fa Never scale TriangleMesh objects 2013-11-23 19:25:33 +01:00
Alessandro Ranellucci
46e3b3180e Ported Surface->offset() to XS 2013-11-23 18:29:25 +01:00
Alessandro Ranellucci
a331f4d27a Finished porting group() to XS 2013-11-23 18:15:59 +01:00
Alessandro Ranellucci
878d587196 Ported is_solid() and is_bridge() to XS. Also ported (but not used yet) group() to SurfaceCollection::group() 2013-11-23 00:07:04 +01:00
Alessandro Ranellucci
de9d5403e8 Finished porting convex_hull() to XS and removed dependency on Math::ConvexHull::MonotoneChain 2013-11-22 22:48:07 +01:00
Alessandro Ranellucci
4577f0725c Incomplete work for XS-based convex_hull 2013-11-22 21:43:35 +01:00
Alessandro Ranellucci
a950fbe0c2 Removed more unused functions and fixed tests 2013-11-22 16:19:15 +01:00
Alessandro Ranellucci
132d170f73 Ported simplify() to XS and removed dependency on Boost::Geometry::Utils 2013-11-22 16:01:50 +01:00
Alessandro Ranellucci
df8d889481 More unfinished work 2013-11-22 02:16:10 +01:00
Alessandro Ranellucci
518798beb3 Incomplete work for porting simplify() to XS 2013-11-21 20:25:24 +01:00
Alessandro Ranellucci
7475762a27 Remove residual uses of Boost for line clipping 2013-11-21 18:47:25 +01:00
Alessandro Ranellucci
3aef663f7f Removed clip_with_polygon() and clip_with_expolygon() 2013-11-21 18:16:03 +01:00
Alessandro Ranellucci
ac88fbcbb0 Ported clip_end(), length(), is_perimeter(), is_fill(), is_bridge() to XS 2013-11-21 18:03:40 +01:00
Alessandro Ranellucci
761f261a68 Ported intersect_expolygons() and subtract_expolygons() to XS 2013-11-21 17:53:50 +01:00
Alessandro Ranellucci
5f81292f3f Ported encloses_point() to XS and renamed to contains_point() 2013-11-21 16:21:42 +01:00
Alessandro Ranellucci
a225a8b2ef Ported contains_line() to XS 2013-11-21 15:12:06 +01:00
Alessandro Ranellucci
bd62de7653 Renamed encloses_line() to contains_line() and implemented it using diff_pl() 2013-11-21 14:35:28 +01:00
Alessandro Ranellucci
3025c77675 Use Clipper for line clipping 2013-11-21 14:15:38 +01:00
Alessandro Ranellucci
c5f7318fc9 Removed debugging statement 2013-11-20 15:38:51 +01:00
Alessandro Ranellucci
50c0081d25 Update Clipper to 6.0.0 2013-11-20 11:35:58 +01:00
Alessandro Ranellucci
d49052779f Remove useless code (thin walls and gaps are detected by the same logic now, so no need for additional checks) 2013-11-19 15:55:22 +01:00
Alessandro Ranellucci
b1ca0f30f2 Version number was not correctly saved 2013-11-18 18:48:06 +01:00
Alessandro Ranellucci
583fc767d8 Fix regression in Avoid Crossing Perimeters. #1531 2013-11-18 17:20:48 +01:00
Alessandro Ranellucci
abe56f96da Cleaner logic for perimeters, thin walls and gaps. More correct results and faster processing 2013-11-18 17:06:08 +01:00
Alessandro Ranellucci
d4d8045905 Put standby_temperature into options cemetery. #1523 2013-11-16 12:45:43 +01:00
Alessandro Ranellucci
beb7939e22 Rename standby_temperature to ooze_prevention. #1523 2013-11-15 16:01:15 +01:00
Alessandro Ranellucci
5e78f8a0b0 Make sure all extruders are outside skirt at toolchange when standby_temperature is enabled 2013-11-15 15:52:11 +01:00
Alessandro Ranellucci
f733ef5f6b Handle non-thread-safe Math::Geometry::Voronoi. #1527 2013-11-15 12:55:53 +01:00
Alessandro Ranellucci
ab3e5b5a2c No support when --support-material-interface-layers was set to 1. #1515 2013-11-14 18:13:57 +01:00
Alessandro Ranellucci
bb37048c35 Added missing encoding in STL repair 2013-11-13 11:12:06 +01:00
Alessandro Ranellucci
4be1e5702a Free memory after closing the preview and the setting windows 2013-11-12 21:49:34 +01:00
Alessandro Ranellucci
2c416cc4ac Reduce width of text/spin controls because they're too large on Windows 2013-11-12 17:14:37 +01:00
Alessandro Ranellucci
85232bb6fd Fix a minor visualization glitch on Windows 2013-11-12 14:34:03 +01:00
Alessandro Ranellucci
faa54ced52 Share the thumbnail object instead of returning it from thread 2013-11-12 14:30:13 +01:00
Alessandro Ranellucci
76213fb5b7 Save the last used Slic3r version and display a notice to encourage legacy users to revert their support material settings to the defaults 2013-11-11 22:20:25 +01:00
Alessandro Ranellucci
004517ad04 Automatically copy Simple Mode settings into a 'Simple Mode' preset in Expert Mode 2013-11-11 22:02:12 +01:00
Alessandro Ranellucci
33e160c1ed Automatically save presets after running the wizard 2013-11-11 21:45:58 +01:00
Alessandro Ranellucci
885ab5844e Ported regular_points() to XS and renamed it to equally_spaced_points() 2013-11-11 20:59:58 +01:00
Alessandro Ranellucci
6bb425e88d Minor fix about raft and support after previous commit 2013-11-11 20:50:22 +01:00
Alessandro Ranellucci
9f41f0279e Some work to reduce recursive dependencies between classes 2013-11-11 20:37:06 +01:00
Alessandro Ranellucci
bad8afdcda Fix regression causing incomplete output filepath expansion. #1514 2013-11-11 00:08:50 +01:00
Alessandro Ranellucci
655a546b04 Add .ngc to G-code file name suffixes 2013-11-10 23:37:59 +01:00
Alessandro Ranellucci
8d9361280e Bugfix: expert mode was crashing when home path contained non-ASCII
characters on Windows. #1478
2013-11-10 17:06:59 +01:00
Alessandro Ranellucci
928c4741c2 Fix regression in t/shells.t due to things ported to XS 2013-11-08 11:35:02 +01:00
Alessandro Ranellucci
c133a33ed2 Ported point_line_distance() and removed same_point() 2013-11-06 23:08:03 +01:00
Alessandro Ranellucci
09be25a156 Removed useless functions 2013-11-06 21:09:28 +01:00
Alessandro Ranellucci
d8e098ab0e Ported same_line() to XS 2013-11-06 19:38:10 +01:00
Alessandro Ranellucci
b5aaeb9b12 More work on the clipping method for medial axis. Includes Polyline->is_valid() 2013-11-06 19:30:45 +01:00
Alessandro Ranellucci
849d69d178 Fix regression in chained_path() introduced in fb763b0187. Includes regression test. #1184 2013-11-02 18:00:55 +01:00
Alessandro Ranellucci
4755e61d71 Bugfix: [input_filename] and [input_filename_base] were only available in the filename pattern and not in the custom G-code settings. #1507 2013-11-02 15:49:20 +01:00
Alessandro Ranellucci
0b63afb370 Fix complete_objects after XS port. Includes regression test. #1511 2013-11-02 14:44:30 +01:00
Alessandro Ranellucci
f491b7ba71 Fix t/support.t 2013-11-02 11:32:23 +01:00
Alessandro Ranellucci
3f7adfc07d Fix raft_layers according to the new support material logic 2013-11-02 11:16:44 +01:00
Alessandro Ranellucci
d7656f5fdc Use minimum extrusion width for support material too 2013-10-28 14:04:50 +01:00
Alessandro Ranellucci
ff25cc97fa Explicitely clip support material with object slices (test case from #1397) 2013-10-27 23:20:06 +01:00
Alessandro Ranellucci
29b83517cb Ported point_along_segment(), Polyline::length(), Polyline::clip_end() to XS 2013-10-27 22:57:25 +01:00
Alessandro Ranellucci
26a18a2a52 Temporarily revert to Voronoi-based medial axis 2013-10-27 22:02:57 +01:00
Alessandro Ranellucci
4f64e557d9 Typo 2013-10-27 21:38:32 +01:00
Alessandro Ranellucci
31f77748e7 Explain in the tooltip how is the threshold angle measured 2013-10-27 21:37:26 +01:00
Alessandro Ranellucci
a99d34a91a Bad memory access in regular_points() 2013-10-27 20:55:55 +01:00
Alessandro Ranellucci
58d92ac36a Support interface_layers == 0 2013-10-27 18:54:52 +01:00
Alessandro Ranellucci
bcc061176c New option to use G10/G11 for firmware-controlled retraction. #1494 2013-10-27 16:59:18 +01:00
Alessandro Ranellucci
0e3c9ebe52 Extend interface into base support when the latter is contained in a hole (for better interface anchoring) and fix contact loops when object is enclosed in a hole 2013-10-27 16:37:04 +01:00
Alessandro Ranellucci
4cba5111a3 Fix generation of contact loops 2013-10-27 15:22:44 +01:00
Alessandro Ranellucci
06e7a1ae68 Optimizations to regular_points(), clip_end(), clip_start() 2013-10-27 13:51:59 +01:00
Alessandro Ranellucci
28e9682d0e Several changes to support material, including a fix to prevent vertical overlapping and horizontal fusion of support and object 2013-10-27 10:19:26 +01:00
Alessandro Ranellucci
c08d4cc798 Fixed support unit tests and reduced dependency on $object 2013-10-26 17:56:59 +02:00
Alessandro Ranellucci
bdf825d078 Refactoring: split support material code into several methods 2013-10-26 17:20:54 +02:00
Alessandro Ranellucci
1741adaddf Removed debugging line 2013-10-26 09:53:32 +02:00
Alessandro Ranellucci
b653839e9a One more fix for Cancel button. #1461 2013-10-16 15:13:39 +02:00
Alessandro Ranellucci
127e38d4a4 Fix Cancel button. #1461 2013-10-14 22:07:41 +02:00
Alessandro Ranellucci
4c2c31b554 Fix speed math for wipe, which was causing too fast retraction. Includes regression test. #1468 2013-10-13 17:05:22 +02:00
Alessandro Ranellucci
bc0b9e1b72 Don't combine retract and travel anymore when using G0. #1289 2013-10-13 16:20:01 +02:00
Alessandro Ranellucci
e6b59aef4e Fix planepath fill patterns for very small regions. #1463 2013-10-13 16:07:14 +02:00
Alessandro Ranellucci
9918c1e97d Minor improvements in debug output 2013-10-13 12:12:03 +02:00
Alessandro Ranellucci
f603db5e84 Fix --export-svg 2013-10-13 11:45:22 +02:00
Alessandro Ranellucci
ac5e713323 Fix segfault when calling chained_path() on an ExtrusionPathCollection using no_sort. Includes regression test 2013-09-28 15:30:10 +02:00
Mark Hindess
f523c095b1 Trivial fix for support-related undefined sub errors. 2013-09-24 09:54:23 +01:00
Alessandro Ranellucci
0b526afb4e Change labels in wizard to avoid confusion 2013-09-21 20:25:34 +02:00
Alessandro Ranellucci
0ef6311ac3 Do not set first layer bed temperature if user set bed temperature to zero in wizard 2013-09-21 20:14:17 +02:00
Alessandro Ranellucci
197cd8e68b Typo 2013-09-19 16:09:47 +02:00
Alessandro Ranellucci
ed529b62f3 Fix threading issue with GUI. #1443 #1444 2013-09-19 16:00:47 +02:00
Alessandro Ranellucci
afdb490cf1 Fix STL export. #1448 2013-09-19 12:25:00 +02:00
Alessandro Ranellucci
032698fb07 Test that toolchanges happen outside skirt when standby-temperature is enabled 2013-09-19 10:44:29 +02:00
Alessandro Ranellucci
40fd7418cd Added test for standby_temperature 2013-09-19 01:29:34 +02:00
Alessandro Ranellucci
0dd3ab0662 Don't block while cooling extruder 2013-09-18 20:05:15 +02:00
Alessandro Ranellucci
0062c3b7fc Almost finished the implementation of --standby-temperature 2013-09-18 20:03:59 +02:00
Alessandro Ranellucci
9caf536aca Finished a basic implementation of --standby-temperature 2013-09-18 18:49:19 +02:00
Alessandro Ranellucci
991bc8ae3d Partial work for implementing a standby temperature option 2013-09-18 17:45:02 +02:00
Alessandro Ranellucci
4fe0675380 Removed ZTable code 2013-09-17 23:55:38 +02:00
Alessandro Ranellucci
a7989e382c Bugfix: enabling raft layers generated support for the whole model. Includes regression test. #1375 2013-09-17 23:51:30 +02:00
Alessandro Ranellucci
e0da81e8bf Introduce a ->count method for all collections to save time 2013-09-17 23:38:23 +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
bbbdae3952 Better name for "Detect overhangs" 2013-09-17 21:49:13 +02:00
Alessandro Ranellucci
ea0e136b45 Prevent superfluous extra perimeters added when a region has an acute angle 2013-09-17 20:18:54 +02:00
Alessandro Ranellucci
06fc1d1044 Fix minor bug causing some gaps to be infilled twice 2013-09-17 19:39:22 +02:00
Alessandro Ranellucci
f79ba8cec0 Update dump-stl.pl 2013-09-17 19:25:10 +02:00
Alessandro Ranellucci
39449f9245 Revert a recent change made to shells generation, causing too much solid infill. Includes regression test. #1431 2013-09-17 19:24:16 +02:00
Alessandro Ranellucci
2c1274e2d9 Updated/fixed SectionCut 2013-09-17 14:16:29 +02:00
Alessandro Ranellucci
7bd2ce21ca Fix wrong bridge flow used for overhangs and bridge perimeters. Includes regression test. #1407 2013-09-17 10:37:01 +02:00
Alessandro Ranellucci
d13e7b264a New experimental medial axis code (suboptimal but looks good) 2013-09-17 10:37:01 +02:00
Alessandro Ranellucci
78167f56ee Some cleanup for the Voronoi code 2013-09-17 10:37:01 +02:00
Alessandro Ranellucci
a88ce0cb5e Fix regression in start perimeters at non-overhangs. #1442 2013-09-17 10:37:01 +02:00
Alessandro Ranellucci
9a51964e98 Clean medial axis code and gap fill 2013-09-17 10:37:01 +02:00
Alessandro Ranellucci
c7db2cb10f Prune tiny shells to avoid random extra internal solid infill. #1431 2013-09-16 12:36:04 +02:00
Alessandro Ranellucci
aef5c05c57 Update brim generation code. Includes regression test. #1440 2013-09-16 10:33:30 +02:00
Alessandro Ranellucci
5a9c163a2e Meaningful error when user wants to use 3D preview but didn't install the required modules. 2013-09-16 10:18:42 +02:00
Alessandro Ranellucci
7d09f17810 Reflect max_fan_speed in cooling textual description. #1439 2013-09-16 10:09:39 +02:00
Alessandro Ranellucci
1aa5dbafd3 Update AMF export code 2013-09-16 09:58:53 +02:00
Alessandro Ranellucci
e2cb40766b Fix two more Boost calls after xsdata merge. #1429 2013-09-12 11:16:11 +02:00
Alessandro Ranellucci
5f54d0eb90 Fix concentric infill and add regression test. #1432 2013-09-12 11:14:54 +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
bc48e17dff Use precomputed normals in 3D preview 2013-09-11 20:15:42 +02:00
Alessandro Ranellucci
d4512a12df Make plater work with new XS code 2013-09-11 20:00:51 +02:00
Alessandro Ranellucci
4c96a52012 Read OBJ and AMF 2013-09-11 14:46:38 +02:00
Alessandro Ranellucci
a821eb7f3c More work to avoid working with vertices outside XS 2013-09-11 11:55:08 +02:00
Alessandro Ranellucci
11e18f681d Incomplete work to store TriangleMesh objects in Model objects instead of extracting vertices and facets 2013-09-11 09:49:28 +02:00
Alessandro Ranellucci
78ee6e5d6d Calls to ->repair where needed 2013-09-10 19:25:53 +02:00
Alessandro Ranellucci
566d38a472 Replace TriangleMesh with the XS port 2013-09-10 00:40:46 +02:00
Alessandro Ranellucci
5e34a9cf21 Make Repair() idempotent and lowercase 2013-09-09 23:18:33 +02:00
Alessandro Ranellucci
1b9d2e2ef8 Use the XS slicing code 2013-09-09 18:21:10 +02:00
Alessandro Ranellucci
873762491b Fix a bad access after recent change about ->p returning objects by reference 2013-09-09 17:10:54 +02:00
Alessandro Ranellucci
5adb187dd2 More porting work 2013-09-07 21:08:53 +02:00
Alessandro Ranellucci
8607c559c7 Minor tidying 2013-09-07 00:42:56 +02:00
Alessandro Ranellucci
09684c67c2 Optimization: Remove useless calls to union() 2013-09-07 00:28:53 +02:00
Alessandro Ranellucci
10ab3bbb86 Fix Only infill where needed putting insufficient material. #1412 2013-09-07 00:02:58 +02:00
Alessandro Ranellucci
907ba55aab Some minor fixes needed after the xsdata merge. #1421 2013-09-06 22:52:56 +02:00
Alessandro Ranellucci
f104659020 Optimization 2013-09-06 19:21:38 +02:00
Alessandro Ranellucci
4dd12b57a1 Fixed wipe (includes regression test). #1421 2013-09-06 19:14:06 +02:00
Alessandro Ranellucci
e02ae0d18a Return Surface objects by reference from SurfaceCollection objects and fix a bug in XS code causing some shell options to be ignored 2013-09-06 18:36:38 +02:00
Alessandro Ranellucci
cb677c45de Don't grow horizontal shells having acute angles. #1387 2013-09-06 17:43:40 +02:00
Alessandro Ranellucci
9484c377d9 Removed debugging line 2013-09-06 16:46:28 +02:00
Alessandro Ranellucci
a2cc54c9d0 Merge pull request #1424 from 4ZM/master
Changes to make slic3r build on Arch
2013-09-06 07:43:46 -07:00
Alessandro Ranellucci
2d3dae621a Minor typos preventing correct positioning after recent XS merge 2013-09-05 14:23:31 +02:00
Anders Sundman
73878e0218 The 'use' prevented the build.
There is probably a reason for this line though.
2013-09-04 22:45:19 +02:00
Alessandro Ranellucci
67aefdccc7 Fixed --avoid-crossing-perimeters and --support-material after the xsdata merge 2013-09-04 00:10:53 +02:00
Alessandro Ranellucci
a49dc603cc Many changes and fixes to remove leaks and return objects by reference 2013-09-03 19:26:58 +02:00
Alessandro Ranellucci
275422fac7 Don't return first_point() and last_point() by reference 2013-09-02 22:33:03 +02:00
Alessandro Ranellucci
0ffb0f6a58 Fix tests 2013-09-02 22:10:52 +02:00
Alessandro Ranellucci
c0789506e4 Return objects by reference instead of always cloning 2013-09-02 20:22:20 +02:00
Alessandro Ranellucci
1cfdf7e955 Ported Slic3r::Polyline::Collection 2013-08-30 00:06:10 +02:00
Alessandro Ranellucci
fb82de9aaf Removed more unused code 2013-08-29 11:52:25 +02:00
Alessandro Ranellucci
649ef6ce79 Removed unused code 2013-08-29 11:48:58 +02:00
Alessandro Ranellucci
bd7b0e2aed Ported ExtrusionPath::Collection->chained_path 2013-08-29 11:47:59 +02:00
Alessandro Ranellucci
ea1d138c95 Ported ExtrusionLoop->make_counter_clockwise() 2013-08-29 01:40:42 +02:00
Alessandro Ranellucci
5d6fd7f4d9 Optimizations for better usage of XS code 2013-08-29 01:36:42 +02:00
Alessandro Ranellucci
9254ff9704 Typo in merge 2013-08-28 20:43:23 +02:00
Alessandro Ranellucci
e19c6a1494 Ported Point->distance_to() and Line->length() 2013-08-28 20:41:41 +02:00
Alessandro Ranellucci
c9f68ed28a Refactor E code and keep track of per-extruder consumend filament 2013-08-28 20:40:13 +02:00
Alessandro Ranellucci
70d824c9a7 One minor optimization in GCode.pm 2013-08-28 20:40:13 +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
055273fbc8 Huge speed boost by reducing the number of method calls in GCode.pm 2013-08-28 20:38:22 +02:00
Alessandro Ranellucci
73c05a6092 Moved vibration limit to its own G-code filter 2013-08-28 20:37:56 +02:00
Alessandro Ranellucci
fb763b0187 Removed dependency on Math::Clipper 2013-08-27 01:26:44 +02:00
Alessandro Ranellucci
b11b595c97 Ported nearest_point() and nearest_point_index() 2013-08-27 00:52:20 +02:00
Alessandro Ranellucci
f1e9216c70 Save some time in GCode.pm method calls 2013-08-27 00:02:24 +02:00
Alessandro Ranellucci
9fb14f2119 Ported (and used) ExtrusionPath->first_point 2013-08-26 23:42:00 +02:00
Alessandro Ranellucci
fe42427a54 Ported Polygon->is_valid() and ExPolygon->is_valid() 2013-08-26 23:27:51 +02:00
Alessandro Ranellucci
da0b85c0d9 Ported ExPolygon->contour and ExPolygon->holes 2013-08-26 23:09:18 +02:00
Alessandro Ranellucci
85011dfef3 Ported Surface->p 2013-08-26 23:03:00 +02:00
Alessandro Ranellucci
494ed5c5ad Minor optimization (group offset_ex calls) 2013-08-26 22:54:06 +02:00
Alessandro Ranellucci
706851f836 Ported ExPolygon->area() 2013-08-26 22:50:26 +02:00
Alessandro Ranellucci
792fcba7be Ported Polygon->area 2013-08-26 22:44:40 +02:00
Alessandro Ranellucci
1f734807b9 Ported Polygon->split_at() 2013-08-26 22:39:35 +02:00
Alessandro Ranellucci
9cf831b9c5 Ported union_pt() to XS 2013-08-26 18:37:19 +02:00
Alessandro Ranellucci
443d4e52cb Fixed everything in the XS port 2013-08-26 17:58:37 +02:00
Alessandro Ranellucci
49040db9a3 Fixes to pass all tests 2013-08-26 16:25:42 +02:00
Alessandro Ranellucci
d786dd6c1c Merge branch 'master' into xsdata 2013-08-25 22:34:03 +02:00
Alessandro Ranellucci
4bf08cbdec Minor fix (still no thumbnail) 2013-08-25 22:33:50 +02:00
Alessandro Ranellucci
94a7d6b941 Validate config before launching the object settings dialog 2013-08-25 22:24:43 +02:00
Alessandro Ranellucci
fc9cec9d81 Merge branch 'master' into xsdata
Conflicts:
	lib/Slic3r/Layer/Region.pm
	lib/Slic3r/Print/Object.pm
2013-08-25 19:59:42 +02:00
Alessandro Ranellucci
026e0c06e4 Ability to customize how materials are mapped to extruders. #1020 2013-08-25 19:52:32 +02:00
Alessandro Ranellucci
cb0ee9729f A couple fixes for Windows 2013-08-25 18:08:56 +02:00
Alessandro Ranellucci
ae9f13ed54 Minor fix to font size 2013-08-25 18:04:45 +02:00
Alessandro Ranellucci
ae21a45886 Distinct dialogs for 3D preview and object settings 2013-08-25 18:03:26 +02:00
Alessandro Ranellucci
b55d4a4e4b Merge branch 'master' into plater2 2013-08-25 17:52:21 +02:00
Alessandro Ranellucci
e96d7b1d6a Show facets, materials and manifoldness in info panel 2013-08-25 17:26:55 +02:00
Alessandro Ranellucci
fde6e371a9 Use multiple colors for multimaterial models in 3D preview 2013-08-25 16:35:21 +02:00
Alessandro Ranellucci
5b734f4a13 Merge branch 'master' into plater2
Conflicts:
	lib/Slic3r/GUI/Plater.pm
2013-08-25 16:10:53 +02:00
Alessandro Ranellucci
2fb725405f GUI fixes for Windows 2013-08-25 15:45:22 +02:00
Alessandro Ranellucci
3d6fb1b05c New feature: ability to override specific settings for individual objects in the plater. #344 2013-08-25 14:37:50 +02:00
Alessandro Ranellucci
87b54ba2a0 Plater rearrange experiment 2013-08-25 12:22:05 +02:00
Alessandro Ranellucci
2dd6325bf8 Expose an Open button in the plater 2013-08-25 03:21:20 +02:00
Alessandro Ranellucci
945250c8c2 Show axes and ground 2013-08-25 02:58:50 +02:00
Alessandro Ranellucci
6f1fd51c2e Keep objects vertical in 3D preview 2013-08-25 02:07:51 +02:00
Alessandro Ranellucci
097912755b Fix handling of dirty models with overlapping facets, where some holes became filled because of wrong slice nesting 2013-08-19 16:53:54 +02:00
Alessandro Ranellucci
da1b6117df Minor fix in debug code 2013-08-19 12:16:19 +02:00
Alessandro Ranellucci
94ca28644e Ported union() to XS 2013-08-17 12:24:04 +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
314f377d7b Debugging code 2013-08-13 20:17:17 +02:00
Alessandro Ranellucci
ef8ce1b5ba Improvements to SVG debug tools: honor input order and support all colours 2013-08-13 10:34:49 +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
36596bf569 Bugfix: alignment code for rectilinear infill caused lack of infill (regression in 948b43f). #1387 2013-08-12 20:27:25 +02:00
Alessandro Ranellucci
f1922ce7b3 Fix regression causing lack of contact infill 2013-08-12 19:19:22 +02:00
Alessandro Ranellucci
e5fe04ea7a Make sure teeth are not too tight 2013-08-12 19:10:40 +02:00
Alessandro Ranellucci
9513fa7600 Enforce some horizontal margin between object and interface/support (contact not affected) 2013-08-12 18:55:11 +02:00
Alessandro Ranellucci
ca7d4163d7 Remove jitter and overlaps in interface infill 2013-08-12 18:45:03 +02:00
Alessandro Ranellucci
7062d028d2 Bugfix: top layers were not detected correctly, causing overlap of support material and object in some situations where there were contact regions having the same Z as some top regions 2013-08-12 18:12:53 +02:00
Alessandro Ranellucci
8d413eda44 Refactoring: generate interface and support in different cycles 2013-08-11 19:25:51 +02:00
Alessandro Ranellucci
5f07d39509 Reapply perimeter only to support 2013-08-10 21:30:50 +02:00
Alessandro Ranellucci
5380b6cb33 Incomplete work to improve support material by avoiding thin columns and making sure everything is supported correctly 2013-08-10 19:39:35 +02:00
Alessandro Ranellucci
abb5d1256f Added some debugging code 2013-08-09 21:27:57 +02:00
Alessandro Ranellucci
4862d832b5 Simplify layer change code now that we have distinct support layers 2013-08-09 19:46:20 +02:00
Alessandro Ranellucci
548b301432 Offset projection of facets before the final union 2013-08-09 16:34:55 +02:00
Alessandro Ranellucci
b956faa153 Adapt avoid_crossing_perimeters code to the recent changes 2013-08-09 16:30:40 +02:00
Alessandro Ranellucci
3751e3813c Fix regression causing too much collapsing of infill regions 2013-08-09 16:18:21 +02:00
Alessandro Ranellucci
5d80c26b29 Adjust collision detection for brim and include support islands inside the only_retract_when_crossing_perimeters logic 2013-08-09 15:04:14 +02:00
Alessandro Ranellucci
67f5b7ab14 Require --default-acceleration when other acceleration settings are used 2013-08-09 14:33:20 +02:00
Alessandro Ranellucci
99816e07a6 New --first-layer-acceleration option 2013-08-09 14:30:43 +02:00
Alessandro Ranellucci
cde662cb51 Fix collision detection for brim 2013-08-09 14:22:41 +02:00
Alessandro Ranellucci
3427b29a93 Fix wrong slices when many overlapping facets were present in the model 2013-08-08 16:27:41 +02:00
Alessandro Ranellucci
f6569cf359 Minor error causing support material to fail when first_layer_height was expressed in % (caught by regression test). #1371 2013-08-08 14:41:23 +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
4438aec12c Revert "Remove thumbnail simplification because it caused loss of very thin parts. #1327"
This reverts commit 1210b89893.

Conflicts:

	lib/Slic3r/GUI/Plater.pm
2013-08-05 20:48:09 +02:00
Alessandro Ranellucci
0ce7ebc4b8 Integerize plater thumbnails 2013-08-05 20:21:08 +02:00
Alessandro Ranellucci
d8e2cde962 Avoid problems caused in support material by layer heights being specified in configuration without the leading 0 (like .25). #1366 2013-07-31 23:44:17 +02:00
Alessandro Ranellucci
528595c7f7 Automatically ignore per-role extruders if they're not configured in Printer Settings (only in GUI expert mode) - CLI mode continues to autogenerate extruder settings. #1236 2013-07-31 20:43:19 +02:00
Alessandro Ranellucci
d83b14655a Better tooltip for raft layers 2013-07-31 20:02:24 +02:00
Alessandro Ranellucci
6ddeb2fa07 Initialize support material interface extruder explicitely. #1364 2013-07-31 19:52:25 +02:00
Alessandro Ranellucci
415a2d165a Cleaner code for first layer temperatures 2013-07-31 18:55:23 +02:00
Alessandro Ranellucci
60e5e2166a Include support contact layers in skirt/brim generation 2013-07-31 16:29:44 +02:00
Alessandro Ranellucci
3b47e1a492 New --info option to show file info (size, volume, repair stats). Removed utils/file_info.pl 2013-07-31 15:10:11 +02:00
Alessandro Ranellucci
1b4878f305 Fix hang in new support material caused by numerical approximation leaving small polygons, as usual 2013-07-30 15:44:08 +02:00
Alessandro Ranellucci
4e13d61aed Fix retraction/Z/lift problems after recent changes 2013-07-30 12:15:40 +02:00
Alessandro Ranellucci
913f401280 Merge new-support2 2013-07-29 20:50:26 +02:00
Alessandro Ranellucci
a2cc230bb5 Add note about a bug caused by the disabled optimization about splitting meshes before avoid_crossing_perimeters. #1315 2013-07-29 19:50:47 +02:00
Alessandro Ranellucci
10a8f479f9 Bugfix: lift was not working correctly with multiple extruders and multiple skirt layers. Also, we now ignore all lift settings except the one of the first extruder. Includes regression tests. #1332 #1338 2013-07-29 19:43:57 +02:00
Alessandro Ranellucci
b5907dc734 Bugfix: z_offset was not applied in spiral_vase. Includes regression test #1343 2013-07-29 17:28:30 +02:00
Alessandro Ranellucci
1210b89893 Remove thumbnail simplification because it caused loss of very thin parts. #1327 2013-07-29 16:43:48 +02:00
Alessandro Ranellucci
dc766f9f73 Bugfix: the tangent edge removal algorithm was refactored the wrong way and wasn't used anymore 2013-07-29 14:56:37 +02:00
Alessandro Ranellucci
8fe38d9b71 Bugfix: fatal error when failed loops were included in slices. #1358 2013-07-29 14:17:36 +02:00
Alessandro Ranellucci
9adac636b8 Avoid G92 E0 with sailfish. #1034 2013-07-29 14:17:30 +02:00
Alessandro Ranellucci
80676f358a Keep edge lines in rectilinear infill even when the sides are not perfectly straight 2013-07-29 13:36:22 +02:00
Alessandro Ranellucci
2a2d15e422 Fix error after recent change about bridges 2013-07-29 12:15:30 +02:00
Alessandro Ranellucci
1f36406a62 Bugfix: thin bridge anchors were ignored. #304 2013-07-29 11:54:32 +02:00
Alessandro Ranellucci
948b43fe0d Don't try to align rectilinear infill if solid, otherwise there will be a gap at one side 2013-07-29 11:05:04 +02:00
Alessandro Ranellucci
51de3ce14f Switch print_z to unscaled coordinates 2013-07-29 00:27:53 +02:00
Alessandro Ranellucci
3bcb2f04ed Add spiral vase test for hollow models 2013-07-28 15:02:03 +02:00
Alessandro Ranellucci
91cade7e8f Make sure there are no gaps in spiral vase. Includes regression test. #1251 2013-07-28 13:39:15 +02:00
Alessandro Ranellucci
691c45d57f Smarter handling of hollow prints. Optimization included 2013-07-28 10:56:41 +02:00
Alessandro Ranellucci
25af3eb35f Proper fix for preventing shells to propagate too much 2013-07-27 19:41:36 +02:00
Alessandro Ranellucci
6bd4803612 Failing test case about spurious infill in hollow objects, caused by shells being correctly generated even for hollow objects - however sometimes we don't want that 2013-07-26 20:17:33 +02:00
Alessandro Ranellucci
0a8872ca6c Extend utils/dump-stl.pl to also write STL files 2013-07-26 19:25:15 +02:00
Alessandro Ranellucci
debe540018 Better name for wipe 2013-07-26 16:23:43 +02:00
Alessandro Ranellucci
aa194c8125 Fix little regression causing object height not to be updated when object in plater was scaled 2013-07-26 14:30:00 +02:00
Alessandro Ranellucci
c1c1416838 Scale layer height ranges too when scaling object in plater. #1284 2013-07-26 14:26:59 +02:00
Alessandro Ranellucci
a145f1b6aa Don't merge adjacent bridges so that more correct angles can be detected for each one 2013-07-26 12:31:44 +02:00
Alessandro Ranellucci
c69edf27e9 Bugfix: only_retract_when_crossing_perimeters was not triggering retraction when moving between islands that are covered/bridged on the above layer. #1308 2013-07-26 10:52:22 +02:00
Alessandro Ranellucci
37bf0fa53b Bugfix: medial axis thin wall detection was triggered when not needed 2013-07-26 00:13:24 +02:00
Alessandro Ranellucci
8fe228fcee Smarter ordering of gap fill 2013-07-26 00:03:28 +02:00
Alessandro Ranellucci
b1147861dd Implement lower_bound() and upper_bound() methods for ZTable 2013-07-20 21:19:59 +02:00
Alessandro Ranellucci
e29aca3553 Reapply correct optimization for simplifiying fill_surfaces before performing the offset. #1325 2013-07-20 12:22:41 +02:00
Alessandro Ranellucci
1b285f3f46 Thread-safe integration of ExtrusionPath::Collection 2013-07-18 22:29:12 +02:00
Alessandro Ranellucci
c030e38908 Ported ExtrusionPath::Collection 2013-07-18 19:09:07 +02:00
Alessandro Ranellucci
0efea9e442 Ported diff() and intersection() 2013-07-17 01:21:30 +02:00
Alessandro Ranellucci
c7b6818ccf Ported offset() and offset2() 2013-07-17 00:48:29 +02:00
Alessandro Ranellucci
bf8c799685 Ported diff_ex, intersection_ex, union_ex, xor_ex 2013-07-17 00:29:09 +02:00
Alessandro Ranellucci
f7ada2b5db Ported make_clockwise() and make_counter_clockwise() 2013-07-16 21:09:29 +02:00
Alessandro Ranellucci
fe061b19ad Ported Polygon->is_counter_clockwise() and rearranged code in .cpp files 2013-07-16 21:04:14 +02:00
Alessandro Ranellucci
79db996696 Ported diff_ex() to XS 2013-07-16 20:29:15 +02:00
Alessandro Ranellucci
898007fc36 Port offset_ex() and offset2_ex() to XS 2013-07-16 20:09:53 +02:00
Alessandro Ranellucci
9458c7db97 Fix integration of XS containers 2013-07-16 17:13:01 +02:00
Mark Hindess
b5426ad297 Revert "Optimization: simplify fill_surfaces before the offset operation"
To workaround issue #1325 and possibly #1320.

This reverts commit 3a046e3411.
2013-07-16 10:44:52 +01:00
Alessandro Ranellucci
9b582a11ff Adopt XS containers everywhere (incomplete work) 2013-07-16 09:49:34 +02:00
Alessandro Ranellucci
ab6b3d41a7 XS interface completed, including new Line class 2013-07-15 22:57:22 +02:00
Alessandro Ranellucci
9af2a1c007 Use XS Point everywhere 2013-07-15 20:31:43 +02:00
Alessandro Ranellucci
d0701cdcd4 Implemented Slic3r::ExtrusionLoop 2013-07-15 16:21:09 +02:00
Alessandro Ranellucci
c9749ca3b3 More integration of Slic3r::Point::XS 2013-07-15 16:04:49 +02:00
Alessandro Ranellucci
159a009f96 Fix tests here and there 2013-07-15 15:26:56 +02:00
Alessandro Ranellucci
f612d4c64e Ported ExtrusionPath to XS. Failing test for Surface 2013-07-15 12:14:22 +02:00
Alessandro Ranellucci
13e3a9129c Use Slic3r::ExPolygon::Collection for Layer->slices 2013-07-14 15:06:49 +02:00
Alessandro Ranellucci
7534c1e6d9 Use Slic3r::Surface::Collection for Layer::Region->slices 2013-07-14 15:03:45 +02:00
Alessandro Ranellucci
5885be881c New Slic3r::Surface::Collection class 2013-07-14 14:56: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
7f4dc4e248 Fix merging error 2013-07-14 00:20:03 +02:00
Alessandro Ranellucci
31809d473f Merge branch 'master' into xsdata
Conflicts:
	lib/Slic3r/GCode.pm
	xs/src/Point.hpp
2013-07-13 21:00:19 +02:00
Alessandro Ranellucci
027f8d1e53 Optimizations in the algorithm that builds loops 2013-07-13 20:56:13 +02:00
Alessandro Ranellucci
69a8bac9c9 Show a warning if we repaired the input file 2013-07-13 20:34:57 +02:00
Alessandro Ranellucci
6affa23297 Show repair stats in object info dialog 2013-07-13 20:23:03 +02:00
Alessandro Ranellucci
89fae9ee15 Make threaded perls work with XS data in plater thumbnails. Includes cleaner ->arrayref implementation 2013-07-11 19:34:37 +02:00
Alessandro Ranellucci
fb7cea3cb9 Make plater work with XS data in single-thread environment 2013-07-11 19:13:43 +02:00
Alessandro Ranellucci
87a5de193d ExPolygon::XS->rotate() 2013-07-11 18:55:51 +02:00
Alessandro Ranellucci
1506907212 More incomplete work to make the plater work with XS data 2013-07-11 16:48:44 +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
6f6ee40dae Small optimization in case no overhang logic is required at all 2013-07-07 19:12:44 +02:00
Alessandro Ranellucci
c57a88c943 start_perimeters_at_non_overhang was still partially enforced 2013-07-07 19:11:23 +02:00
Alessandro Ranellucci
5409c27852 Partial GUI compatibility with XS data 2013-07-07 18:43:04 +02:00
Alessandro Ranellucci
8380ca812b One more arrayref conversion 2013-07-07 17:10:22 +02:00
Alessandro Ranellucci
a1e4bda670 Have Clipper.pm only return ExPolygon::XS objects 2013-07-07 15:17:09 +02:00
Alessandro Ranellucci
53e4532f9c Merge branch 'master' into xsdata 2013-07-07 12:58:06 +02:00
Alessandro Ranellucci
3a046e3411 Optimization: simplify fill_surfaces before the offset operation 2013-07-07 12:57:26 +02:00
Alessandro Ranellucci
f7967414e0 Store layer slices and region slices as XS data to save memory and make them shared across threads 2013-07-07 12:54:20 +02:00
Alessandro Ranellucci
cca25c9950 Fix a numerical issue causing failure to detect some bridge anchors 2013-07-06 14:38:53 +02:00
Alessandro Ranellucci
532ff3cde9 Apply the Polyline constructor refactoring to the newslice code 2013-07-06 12:18:58 +02:00
Alessandro Ranellucci
985af5ee56 Merge branch 'newslice' 2013-07-06 12:16:54 +02:00
Alessandro Ranellucci
0bb4a5649a Merge branch 'master' into xs 2013-07-06 12:15:17 +02:00
Alessandro Ranellucci
8d1069766b Workaround dclone() not being thread-safe 2013-07-06 12:14:49 +02:00
Alessandro Ranellucci
9dbf21235c Fixed missing change in recent refactoring, causing plater crash. #1298 2013-07-06 11:50:41 +02:00
Alessandro Ranellucci
ab584babf6 Encode Windows paths for the C STL reader 2013-07-06 11:39:28 +02:00
Alessandro Ranellucci
28f8083ab7 Merge branch 'master' into xs 2013-07-06 11:38:40 +02:00
Alessandro Ranellucci
f455ecb7da Rename adjust_overhang_flow to overhangs 2013-07-06 11:35:40 +02:00
Alessandro Ranellucci
606d856af8 Lower case option group titles 2013-07-06 02:46:09 +02:00
Alessandro Ranellucci
b857d79604 Move spiral_vase to vertical shells section 2013-07-05 22:23:45 +02:00
Alessandro Ranellucci
f8ae8d3e8d New option to disable overhang flow 2013-07-05 22:12:58 +02:00
Alessandro Ranellucci
282c751b0f New option for disabling thin wall detection 2013-07-05 22:10:43 +02:00
Alessandro Ranellucci
0a7e0ffecf New options: start_perimeters_at_concave_points start_perimeters_at_non_overhang 2013-07-05 22:06:58 +02:00
Alessandro Ranellucci
362232ada4 New Quality section in GUI 2013-07-05 21:57:56 +02:00
Alessandro Ranellucci
f0440bede4 Move infill_every_layers infill_only_where_needed into their own "Reducing Printing Time" section 2013-07-05 21:55:01 +02:00
Alessandro Ranellucci
eb2d20d062 Merge branch 'master' into xs 2013-07-05 17:29:28 +02:00
Alessandro Ranellucci
339c487077 Fix starting point after overhang clipping is performed 2013-07-05 17:25:56 +02:00
Alessandro Ranellucci
b3b2a1e891 One more fix in overhang starting point detection 2013-07-05 17:08:26 +02:00
Alessandro Ranellucci
df4612a209 Prefer starting points that are NOT in overhangs 2013-07-05 17:00:14 +02:00
Alessandro Ranellucci
d074b98aba Optimization: don't store wipe path if wipe is not requested 2013-07-05 15:03:08 +02:00
Alessandro Ranellucci
be4eb3762f Use dclone() in Point class too 2013-07-05 14:48:03 +02:00
Alessandro Ranellucci
72f77a3420 Use dclone() in Polyline and ExPolygon too 2013-07-05 14:46:32 +02:00
Alessandro Ranellucci
8061cc6e30 Optimization in Polyline instantiation 2013-07-05 14:44:41 +02:00
Alessandro Ranellucci
27c421c27f Slight optimization 2013-07-05 14:21:20 +02:00
Alessandro Ranellucci
b266d6217a Skip slow gap detection if we aren't going to fill gaps anyway 2013-07-05 14:17:54 +02:00
Alessandro Ranellucci
4d46ebc6cb Removed useless, slow, code 2013-07-05 14:17:09 +02:00
Alessandro Ranellucci
f26f084064 New freeze.t test 2013-07-03 15:42:01 +02:00
Alessandro Ranellucci
bb656ea72c Merge branch 'master' into xs 2013-07-03 10:52:13 +02:00
Alessandro Ranellucci
71057b54a9 Allow negative values in validation... 2013-07-03 10:51:44 +02:00
Alessandro Ranellucci
63ba894260 Add some comments to OpenGL code 2013-07-01 12:23:44 +02:00
Alessandro Ranellucci
8ec3ec6bda Cosmetic changes to the new OpenGL code by iXce 2013-07-01 10:58:30 +02:00
Alessandro Ranellucci
dcc2b7f4ff Enable PreviewCanvas 2013-07-01 01:51:11 +02:00
Alessandro Ranellucci
7c4b1bc736 Merge pull request #1283 from iXce/master
Panning/rotation/zooming support for 3D viewer
2013-06-30 16:50:16 -07:00
Guillaume Seguin
b2e0c1ab42 Use max of all dimensions instead of max of first 2 2013-07-01 00:08:02 +02:00
Guillaume Seguin
1f229f3233 Cleanup 2013-06-30 23:54:13 +02:00
Guillaume Seguin
e92fefb6ff Working rotation for mesh viewer 2013-06-30 23:51:06 +02:00
Alessandro Ranellucci
1b6a9c0c3b Added validation on all settings. #611 2013-06-30 15:39:03 +02:00
Guillaume Seguin
6668a81c64 Start work on rotation handling 2013-06-29 18:31:06 +02:00
Guillaume Seguin
dd7830b1b7 Add panning support 2013-06-29 15:12:57 +02:00
Guillaume Seguin
43d764feff Implement zoom to point 2013-06-29 14:16:56 +02:00
Guillaume Seguin
317c911c67 Remove leftover from 47b2c13c 2013-06-29 14:16:38 +02:00
Guillaume Seguin
bb3ebb0244 Switch to orthographic projection 2013-06-29 10:43:35 +02:00
Guillaume Seguin
47b2c13c99 Get rid of demo timer in PreviewCanvas 2013-06-29 10:43:21 +02:00
Alessandro Ranellucci
1f50d9c7e8 https -> http in manual URL 2013-06-24 20:38:20 +02:00
Alessandro Ranellucci
5975145426 Automatically repair any input STL file 2013-06-24 20:34:57 +02:00
Alessandro Ranellucci
ecdc2f077b Merge branch 'master' into xs
Conflicts:
	Build.PL
2013-06-24 19:37:07 +02:00
Alessandro Ranellucci
f29faf0548 New Slic3r::TriangleMesh::XS class 2013-06-24 19:35:49 +02:00
Alessandro Ranellucci
f5cc446853 Menu item for launching the manual 2013-06-24 18:07:33 +02:00
Alessandro Ranellucci
a15884dac9 Remove useless algorithm in loop merging code 2013-06-24 00:08:39 +02:00
Alessandro Ranellucci
3622193c3f Rewrite the algorithm that closes loops in order. We now tolerate the case when more than two facets share a common edge 2013-06-24 00:02:01 +02:00
Alessandro Ranellucci
86c4f5c5b0 Merge branch 'master' into newslice 2013-06-23 22:23:25 +02:00
Alessandro Ranellucci
de45b823e1 Merge branch 'master' into xs 2013-06-23 21:12:19 +02:00
Alessandro Ranellucci
2a2633da0a New automatic built-in STL repair 2013-06-23 21:11:46 +02:00
Alessandro Ranellucci
625a300822 New [layer_num] placeholder in layer change G-code 2013-06-23 19:25:32 +02:00
Alessandro Ranellucci
8ea4ed3b5e Allow to supply custom G-code via command line if file is not found 2013-06-23 19:25:02 +02:00
Alessandro Ranellucci
2d687cd0a0 Only combine internal infill and leave internal-solid as it is. #1248 2013-06-23 18:21:47 +02:00
Alessandro Ranellucci
f3a9d41c70 Cache a Z table for layer range search 2013-06-23 17:07:12 +02:00
Alessandro Ranellucci
37105e8237 Ported get_layer_range() to C 2013-06-23 15:33:07 +02:00
Alessandro Ranellucci
9a904dc88d Lighter implementation of the slicing algorithm to save memory and time 2013-06-23 12:26:40 +02:00
Alessandro Ranellucci
cd1a39397b Optimize concentric loops 2013-06-23 00:50:44 +02:00
Alessandro Ranellucci
78f1527ab7 Compensate perimeter/infill overlap for concentric infill 2013-06-23 00:37:04 +02:00
Alessandro Ranellucci
5c7b447f07 Ensure there's no numerical error when searching for concave points 2013-06-23 00:21:19 +02:00
Alessandro Ranellucci
1e3ce9b8c4 Complete retraction if the wipe path was too short for the full retract. #1264 2013-06-23 00:10:57 +02:00
Alessandro Ranellucci
c03f9f0197 Fixed regression causing wrong direction for inwards move in holes. Includes regression test. #1265 2013-06-23 00:05:08 +02:00
Alessandro Ranellucci
0bd3d958e2 More optimizations in slice_facet() 2013-06-22 20:48:56 +02:00
Alessandro Ranellucci
1565560b55 One more little optimization 2013-06-22 20:37:15 +02:00
Alessandro Ranellucci
db266cde9f Little optimizations in slicing 2013-06-22 20:32:39 +02:00
Alessandro Ranellucci
398e66572d Optimization: remove overkill sort 2013-06-22 19:59:27 +02:00
Alessandro Ranellucci
82fbdb603f Optimization: cache model bounding box 2013-06-22 19:36:50 +02:00
Alessandro Ranellucci
4774b0e910 Be tolerant with STL files without the "normal" word 2013-06-22 16:15:07 +02:00
Alessandro Ranellucci
64a21276e3 Add regression test for concave starting points. #135 2013-06-22 15:22:58 +02:00
Alessandro Ranellucci
aba7641fe4 Avoid starting loops on convex vertices and/or overhangs. #296 #135 2013-06-21 19:43:15 +02:00
Alessandro Ranellucci
90d8da0e0d Limit fan speed to 100% :-) 2013-06-21 16:08:16 +02:00
Alessandro Ranellucci
19b40baf55 Add regression test to ensure fan is enabled when printing overhangs. #432 2013-06-21 15:38:58 +02:00
Alessandro Ranellucci
c707073a73 Some fixes about overhang detection. Includes regression tests 2013-06-21 14:52:35 +02:00
Alessandro Ranellucci
f5322596d9 Note to self in code 2013-06-20 20:16:15 +02:00
Alessandro Ranellucci
7e875393f5 New algorithm for overhang detection 2013-06-20 20:11:46 +02:00
Alessandro Ranellucci
015580629b Removed wrong optimization causing possible extra retractions while moving in infill space 2013-06-20 19:43:53 +02:00
Alessandro Ranellucci
4474595629 Removed useless code 2013-06-20 19:21:35 +02:00
Alessandro Ranellucci
b414c50b68 Optimization: use Boost.Geometry for point in polygon 2013-06-20 18:48:11 +02:00
Alessandro Ranellucci
f7be746599 Disable overhang detection for now 2013-06-19 20:09:58 +02:00
Alessandro Ranellucci
fcd4de00e5 One more fix for --complete-objects working on single-object plates 2013-06-19 18:01:24 +02:00
Alessandro Ranellucci
5843f5df6c Fix regression in --complete-objects causing fatal error and/or wrong warnings about object heights 2013-06-19 17:34:37 +02:00
Alessandro Ranellucci
b71bc37111 Remove a couple cases of dangerous aliasing, causing crashes. #1257 2013-06-17 19:27:08 +02:00
Alessandro Ranellucci
799aeedd97 Fixed wrong refactoring in ac4a0bcdd8 2013-06-17 13:32:53 +02:00
Alessandro Ranellucci
c4036470af Fix one thing leftover from bounding box refactoring 2013-06-17 12:11:28 +02:00
Alessandro Ranellucci
c6ef81fb91 Modify overhang detection algorithm 2013-06-16 18:08:17 +02:00
Alessandro Ranellucci
45611d6742 Fix connection algorithm for rectilinear infill as sometimes it wasn't connecting segments correctly 2013-06-16 18:05:56 +02:00
Alessandro Ranellucci
0ad78eaf55 Return explicit 0 from have_version_check() to avoid wxMenuItem->Enable errors 2013-06-16 16:07:47 +02:00
Alessandro Ranellucci
3bcf1da702 Disable avoid_crossing_perimeters optimization until we can detect nested shells. #1254 2013-06-16 16:04:19 +02:00
Alessandro Ranellucci
32aafd2eb9 Temporary workaround until Boost::Geometry::Utils 0.14 is available 2013-06-16 15:11:39 +02:00
Alessandro Ranellucci
258842b845 New logic for connecting honeycomb loops 2013-06-16 13:31:10 +02:00
Alessandro Ranellucci
9ff85898b1 New logic for connecting honeycomb paths 2013-06-16 13:26:57 +02:00
Alessandro Ranellucci
961586fe8f Rewrite honeycomb infill so that it only generates the pattern for the bounding box of the region instead of the full print, so reduce complexity of the clipping routine 2013-06-16 13:13:52 +02:00
Alessandro Ranellucci
ac4a0bcdd8 Refactoring: use Slic3r::Geometry::BoundingBox objects everywhere 2013-06-16 12:21:25 +02:00
Alessandro Ranellucci
07407e5dbd Merge branch 'master' into overhang
Conflicts:
	lib/Slic3r/GCode.pm
2013-06-16 10:49:33 +02:00
Alessandro Ranellucci
d0eac88ff9 Reduce vibrations when doing gap fill 2013-06-15 21:27:36 +02:00
Alessandro Ranellucci
8b48d79563 Improve zigzag gap fill. #1234 2013-06-15 21:10:04 +02:00
Alessandro Ranellucci
cb75b1e47b Fix plater crash on threaded perls 2013-06-15 19:15:24 +02:00
Alessandro Ranellucci
8d9d023dd7 Merge branch 'honeycomb-clipping' 2013-06-15 18:10:16 +02:00
Alessandro Ranellucci
20158aac0d Merge branch 'issue1161' 2013-06-15 18:08:01 +02:00
Alessandro Ranellucci
7560d5f131 Merge branch 'perl-518' 2013-06-15 18:06:36 +02:00
Alessandro Ranellucci
8b6afb61d9 Fix little error in tests 2013-06-15 17:17:48 +02:00
Alessandro Ranellucci
7bf308c08f Fix one more centering problem caused by wrong bounding box implementation 2013-06-15 15:50:02 +02:00
Alessandro Ranellucci
a8981b8b35 Bugfix: infill was clipped badly. Includes regression test. #1245 2013-06-15 12:10:57 +02:00
Alessandro Ranellucci
878d17605c Ignore solid_infill_every_layers when fill_density is 0. Includes regression test. #1240 2013-06-14 16:48:24 +02:00
Alessandro Ranellucci
145fe08203 More fixes for plater positioning. #1171 2013-06-13 20:05:32 +02:00
Alessandro Ranellucci
962a51cc80 Some cleanup for the plater code 2013-06-13 14:33:10 +02:00
Alessandro Ranellucci
def013ba91 Use _transform_thumbnail when rescaling thumbnails 2013-06-13 11:28:27 +02:00
Alessandro Ranellucci
0a74e45432 Scale and recenter thumbnails when bed size and/or print center is changed 2013-06-13 11:27:15 +02:00
Alessandro Ranellucci
5dcf277563 Rotate cw when using free rotation button to be consistent with icon. #1171 2013-06-13 10:27:47 +02:00
Alessandro Ranellucci
aee7b70d79 Bugfix: the order of transformations was not consistent in plater and actual G-code generation. #1171 #1191 2013-06-12 16:53:19 +02:00
Alessandro Ranellucci
8e0e03247d Bugfix: ineffective scale() method in recently created BoundingBox objects caused wrong positioning for scaled objects in plater. Includes regression test. #1171 2013-06-10 15:34:45 +02:00
Alessandro Ranellucci
8b2c13cc6f Regression test for top solid surfaces in V-shaped object. #1161 2013-06-08 20:01:26 +02:00
Alessandro Ranellucci
d5a9320587 Bugfix: narrow top surfaces didn't generate solid layers. #1161 2013-06-08 17:48:34 +02:00
Alessandro Ranellucci
b12a09ed71 Rename makerbot G-code flavor to makerware; also mention Repetier among RepRap firmwares. #1034 2013-06-07 23:24:53 +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
9ea55497c2 Prevent crash when user deleted object from plater before thumbnail was generated in the other thread. #1207 2013-06-07 13:54:40 +02:00
Alessandro Ranellucci
f991e3bc10 Fixed SVG export and added regression test 2013-06-07 12:00:03 +02:00
Alessandro Ranellucci
fcc442882c Fix plater defect causing misalignment 2013-06-06 20:53:56 +02:00
Alessandro Ranellucci
43814e99f6 Remove smart match and lexical $_ for compatibility with perl 5.18. #1216 2013-06-06 10:46:58 +02:00
Alessandro Ranellucci
8c40cefe1e Also use G1 when traveling with avoid_crossing_perimeters enabled 2013-06-05 17:12:34 +02:00
Alessandro Ranellucci
532ae53d0b Use G1 instead of G0 for restart after retraction to avoid blending with the previous travel move. #1212 2013-06-05 16:58:30 +02:00
Alessandro Ranellucci
b3f1795cb4 Reduce wipe feedrate a bit 2013-06-03 22:49:47 +02:00
Alessandro Ranellucci
8b3aa32a7e Update tooltip for only_retract_when_crossing_perimeters 2013-06-03 22:40:29 +02:00
Alessandro Ranellucci
230367b383 Order objects using a nearest neighbor search instead of relying on the order in plater. #1184 2013-06-03 21:54:55 +02:00
Alessandro Ranellucci
3ffe98f0c3 Use actual Z to order objects in sequential printing rather than layer count, as layer heights might be different 2013-06-03 21:40:13 +02:00
Alessandro Ranellucci
09b81ad027 Fix typo causing regression in island ordering. #1211 2013-06-03 21:27:09 +02:00
Alessandro Ranellucci
c95245f143 Some G-code flavor logic simplification 2013-06-03 18:01:14 +02:00
Alessandro Ranellucci
167ec7a4e7 Use M135 for makerbot toolchange; also disable any G90 and G21 command. #1034 2013-06-03 16:21:22 +02:00
Alessandro Ranellucci
974379c955 Add M103 after retraction and M101 before restart when Makerbot G-code flavor is selected. #1119 2013-06-03 15:37:32 +02:00
Alessandro Ranellucci
71608e799e Keep per-extruder E absolute value for Makerbot flavour to avoid any G92 E0. #950 2013-06-03 15:27:58 +02:00
Alessandro Ranellucci
48d5d6de58 Typo 2013-06-03 12:29:45 +02:00
Alessandro Ranellucci
81bae56e92 Limit only_retract_when_crossing_perimeters to travel moves that are completely enclosed in the upper layer's slices so that we avoid visible traces on top layers. #1091 2013-06-03 12:25:32 +02:00
Alessandro Ranellucci
7134df4638 Only skip objects with no layers without stopping the whole job 2013-06-03 11:39:23 +02:00
Alessandro Ranellucci
8c74d2f41e New --autosave option for better toolchain integration. #837 2013-06-02 20:03:22 +02:00
Alessandro Ranellucci
895e0bbfcd Include M82/M83 for Teacup too. #1206 2013-06-02 19:58:29 +02:00
Alessandro Ranellucci
6bb2e593a7 Avoid potential fatal error when processing models with empty layers. #1127 2013-06-02 19:49:21 +02:00
Alessandro Ranellucci
8a01cb9e96 Generate a better error when input file is too thin and no layers could be generated. #1127 2013-06-02 19:44:59 +02:00
Alessandro Ranellucci
086ec4af9c Fixed yet one more regression in Quick Slice caused by recent Model refactoring. #1208 2013-06-02 19:32:53 +02:00
Alessandro Ranellucci
28a01e7c5e Fix past participle 2013-06-02 16:58:23 +02:00
Alessandro Ranellucci
655d528d92 Fixed recent regression causing a spike when avoid_crossing_perimeters was used on split objects 2013-06-02 16:56:08 +02:00
Alessandro Ranellucci
da36df65a4 Warning removed when exporting config 2013-06-02 11:15:57 +02:00
Alessandro Ranellucci
30ce7dc745 Bugfix: wizard crashing in Simple Mode. #1077 #1122 2013-06-01 18:56:23 +02:00
Alessandro Ranellucci
d801876ee9 Revert "Bugfix: configuration wizard crash 2 #1077"
This reverts commit 55c413627f.
2013-06-01 18:54:07 +02:00
Alessandro Ranellucci
973d30a2b4 Merge pull request #1148 from hroncok/patch-1
Bugfix: configuration wizard crash 2 #1077
2013-06-01 09:46:17 -07:00
Alessandro Ranellucci
49531f6f78 Fixed regression causing rotation from plater to also translate the resulting G-code. #1191 2013-05-31 19:41:31 +02:00
Alessandro Ranellucci
c62b49d1af Optimization of extra perimeters detection 2013-05-31 14:30:07 +02:00
Alessandro Ranellucci
917915d68e Bugfix: superfluous extra perimeters were generated. #1170 2013-05-31 14:23:42 +02:00
Alessandro Ranellucci
5f06cea821 Prevent --extrusion-multiplier <= 0. #1183 2013-05-31 12:45:18 +02:00
Alessandro Ranellucci
5c7dd2cf78 Some fixes to the cooling logic and new test suite for cooling 2013-05-31 12:18:33 +02:00
Alessandro Ranellucci
da76496988 Store config in Slic3r::GCode object 2013-05-31 11:19:36 +02:00
Alessandro Ranellucci
7baaf6bf5d Fixed regression causing skirt_height to he honored incorrectly when printing more than one object. Includes regression test #1200 2013-05-30 20:06:05 +02:00
Alessandro Ranellucci
8f5a958948 Rename do_slice() to quick_slice() 2013-05-20 11:02:12 +02:00
Alessandro Ranellucci
71d6f428ca Apparent fix for "Attempt to free unreferenced scalar" 2013-05-20 10:57:27 +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
f13d4e4e66 Restore skirt preview and extrude clearance after recent usage of int_offset() 2013-05-19 18:03:18 +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
48e37f97b4 Fixed bad copy and paste causing multiple extruders to throw an error 2013-05-19 15:33:54 +02:00
Alessandro Ranellucci
bbb190dc68 Generate infill using each object's bounding_box instead of full print. #1177 2013-05-19 11:35:41 +02:00
Alessandro Ranellucci
627debf284 Scale bounding_box by sqrt(2) in honeycomb too to ensure it will cover the object even after rotation, like we already did for Rectilinear 2013-05-19 11:25:41 +02:00
Alessandro Ranellucci
b5b0c2cc89 Bad copy and paste in commit from yesterday causing loss of perimeters. #1178 2013-05-19 10:47:00 +02:00
Alessandro Ranellucci
7180e7cb30 Speed optimization in avoid_crossing_perimeters 2013-05-19 10:35:11 +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
08a0bbd7f0 Optimization: split meshes automatically when avoid_crossing_perimeters is enabled, so that we reduce the complexity of the MotionPlanner graphs. This commit includes a very large refactoring of the Model class which is now responsible for duplication and arrangement 2013-05-18 16:48:26 +02:00
Alessandro Ranellucci
e33ca54943 Some code cleanup in MotionPlanner 2013-05-17 20:03:38 +02:00
Alessandro Ranellucci
ba433822b6 Disable OpenGL code in master branch for now 2013-05-17 15:44:23 +02:00
Alessandro Ranellucci
8f77d3b945 Increase spacing for bridge traces. #1090 2013-05-17 15:03:42 +02:00
Alessandro Ranellucci
8e2063397a Merge branch 'opengl' 2013-05-17 14:17:02 +02:00
Alessandro Ranellucci
5c74fd095b Very basic implementation of 3D preview - install Wx::GLCanvas to get it working 2013-05-17 14:14:33 +02:00
Alessandro Ranellucci
61c1045331 Merge branch 'master' into overhang 2013-05-16 18:36:11 +02:00
Alessandro Ranellucci
228c84ddc1 Use glDrawArrays() 2013-05-16 13:42:19 +02:00
Alessandro Ranellucci
09989ab8bd Fix regression in --gcode-arcs 2013-05-16 12:54:38 +02:00
Alessandro Ranellucci
521d668712 Reduce overlap for bridges. #1090 2013-05-16 12:34:24 +02:00
Alessandro Ranellucci
55071e544f Fix brim spacing. #1174 2013-05-16 12:29:46 +02:00
Alessandro Ranellucci
fc1a23f5b0 Quick and dirty OpenGL mockup 2013-05-16 12:09:01 +02:00
Alessandro Ranellucci
bff31d7002 Fix split_mesh() not working anymore since analyze() is lazy 2013-05-16 11:25:15 +02:00
Alessandro Ranellucci
a94d26b1ce Fix overhang detection for contours 2013-05-15 10:50:38 +02:00
Alessandro Ranellucci
575127151b New algorithm for overhang detection 2013-05-14 20:19:42 +02:00
Alessandro Ranellucci
90280fe63b Little fix for bridge rendering in SectionCut 2013-05-14 20:11:05 +02:00
Alessandro Ranellucci
967d567db0 Fix bridge rendering in SectionCut 2013-05-14 19:48:52 +02:00
Alessandro Ranellucci
632652d924 Unfinished work for displaying bridge paths in section cuts 2013-05-14 19:48:47 +02:00
Alessandro Ranellucci
06ad6b70f8 Bugfix: scaling object from the plater applied scale factor over the factor used in the previous slicing job. #1075 2013-05-14 16:31:50 +02:00
Alessandro Ranellucci
7eff002e21 Memory and speed optimization: only study meshes when needed 2013-05-14 14:47:00 +02:00
Alessandro Ranellucci
e51dbb994d One more speed optimization in STL.pm 2013-05-14 14:17:46 +02:00
Alessandro Ranellucci
745cea8e6c One more little speed optimization in STL.pm 2013-05-14 14:12:32 +02:00
Alessandro Ranellucci
25bafe7ff1 Memory (and maybe speed?) optimization in STL reader 2013-05-14 13:54:25 +02:00
Alessandro Ranellucci
4121a7ece5 Set support material enforce layers to 0 when spiral printing 2013-05-14 13:54:24 +02:00
Mark Hindess
7979dd9e9c Avoid expensive TriangleMesh BUILD method during clone.
Gives 6% speedup and uses less memory when slicing yoda.stl and should
give significantly bigger speedup on more complex models and plates.
2013-05-13 21:27:55 +01:00
Alessandro Ranellucci
a86c48d85c Disable retract on layer change when doing spiral vase; also check that we're printing a single-material object 2013-05-13 21:55:34 +02:00
Alessandro Ranellucci
a73020c10e Faster implementation of concentric infill, with loop order reversed so that smaller loops will be printed at the end. #898 2013-05-13 21:22:57 +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
ece6dd8a0b Only make the inwards move when we have more than one perimeter 2013-05-13 19:35:42 +02:00
Alessandro Ranellucci
7c89476602 Move fan_always_on in the Enable options group. #1166 2013-05-13 18:33:44 +02:00
Alessandro Ranellucci
1aae311148 Fix menus for --no-plater. #1112 2013-05-13 18:30:12 +02:00
Alessandro Ranellucci
f6dc712158 Bugfix: most of the File menu items didn't work with --no-plater. #1112 2013-05-13 18:22:47 +02:00
Alessandro Ranellucci
d2425748a3 Code cleanup and remove arc compensation code 2013-05-13 13:18:58 +02:00
Alessandro Ranellucci
5efa409c7c Move gap fill to its own method 2013-05-13 13:07:22 +02:00
Alessandro Ranellucci
1d94618c5e Correctly detect external hole perimeters 2013-05-13 12:52:57 +02:00
Alessandro Ranellucci
ca549cd2fe Perimeters refactoring complete 2013-05-11 21:30:26 +02:00
Alessandro Ranellucci
67b24efd49 Incomplete work - still wrong order 2013-05-11 21:05:29 +02:00
Alessandro Ranellucci
df62c25c8f One more offset_ex() optimization 2013-05-11 09:39:38 +02:00
Alessandro Ranellucci
0e100827f8 Avoid useless looping and usage of ExPolygons 2013-05-11 09:35:33 +02:00
Alessandro Ranellucci
6e216e2fd9 New traverse_pt() 2013-05-11 09:24:48 +02:00
Alessandro Ranellucci
7953dcfb12 Merge branch 'better-brim'
Conflicts:
	lib/Slic3r/Geometry/Clipper.pm
	lib/Slic3r/Print.pm
2013-05-11 09:19:23 +02:00
Alessandro Ranellucci
bac5093de4 Alwyas apply disable_fan_first_layers, even if cooling is disabled, since fan_always_on is applied in that case as well. Update descriptive text and have it appear in case of disabled auto cooling. #1166 2013-05-10 15:09:27 +02:00
Alessandro Ranellucci
6b8894cf9a Rename ex_int_offset2 to offset2_ex 2013-05-10 13:56:29 +02:00
Alessandro Ranellucci
993fcd9182 Revert "Smarter ordering of brim loops. #687" until new Math::Clipper is out
This reverts commit 4aad2f6243.
2013-05-10 13:51:28 +02:00
Alessandro Ranellucci
5bf3f5f5e4 Make sure brim paths don't overlap 2013-05-10 13:47:40 +02:00
Alessandro Ranellucci
4aad2f6243 Smarter ordering of brim loops. #687 2013-05-09 14:52:56 +02:00
Alessandro Ranellucci
855ba90332 New script to generate vertical section cuts from any given G-code file 2013-05-02 11:42:51 +02:00
Alessandro Ranellucci
dde3e6e870 Disable Net::DBus. #1015 2013-04-29 15:57:07 +02:00
Alessandro Ranellucci
c2301c5796 Don't extend solid layers when fill density is 0 2013-04-29 15:55:50 +02:00
Alessandro Ranellucci
f7153d67d0 Make preset placeholders available in Quick Slice too. #921 2013-04-28 23:26:50 +02:00
Alessandro Ranellucci
bde730a611 Little fix in SectionCut.pm 2013-04-28 11:31:03 +02:00
Alessandro Ranellucci
6db8afe36d New option to remember last output directory. #698 2013-04-27 21:07:30 +02:00
Alessandro Ranellucci
f5bda326b8 Version check. #1006 2013-04-27 20:55:43 +02:00
Alessandro Ranellucci
bc9ff47d3f New module to output SVG vertical sections of extrusion paths with real width and height. The commit includes a bugfix to the Polyline->grow() method and some simplification in the Line class which is now child of Polyline 2013-04-27 15:02:13 +02:00
Alessandro Ranellucci
6842114d3d Fix for rectilinear infill failing in plates with new caching 2013-04-26 17:14:30 +02:00
Alessandro Ranellucci
24fd152ce4 Bugfix: cooling buffer was broken. #1149 2013-04-24 11:19:08 +02:00
Miro Hrončok
55c413627f Bugfix: configuration wizard crash 2 #1077 2013-04-23 16:17:43 +03:00
Mark Hindess
8c26f0da30 Avoid memory leaks by breaking reference cycle: Print -> Fill -> Print 2013-04-18 22:49:43 +01:00
Mark Hindess
aac2c45450 Avoid merging meshes when there is only one mesh to merge.
When slicing yoda.stl it reduces peak memory usage by 5% and speeds up
slicing by 13%.
Further optimization using a simple proxy to implement the two methods
(size/extends) needed on the merge meshes is also possible and
undoubtedly worthwhile.
2013-04-18 19:50:05 +01:00
Mark Hindess
407de02fe4 Use binary search for get_layer_range.
Gives a 13% speed up on Teethy_Tiki.stl (thing:49334) with default settings
on my laptop.
When $self->layers->[0]->slice_z == $min_z the returned $min_layer value is
0 rather than the (incorrect?) -1 returned by the old code.
2013-04-18 19:29:05 +01:00
Alessandro Ranellucci
4e6c58f749 TYpo 2013-04-18 19:49:02 +02:00
Alessandro Ranellucci
17f76c4951 Move bridge detection to its own method 2013-04-18 18:43:46 +02:00
Alessandro Ranellucci
e088d9b3f7 Cache Slic3r::Fill object 2013-04-18 18:40:59 +02:00
Alessandro Ranellucci
312bb285a0 Fix initialization of Rectilinear filler 2013-04-18 18:37:46 +02:00
Alessandro Ranellucci
c46bfc71b4 Merge branch 'master' into boost-optimizations 2013-04-18 17:48:46 +02:00
Alessandro Ranellucci
01bd9040f5 Fix syntax for ex_int_offset2() 2013-04-18 17:46:13 +02:00
Alessandro Ranellucci
b160feacfd Merge branch 'master' into clipper-optimizations 2013-04-18 17:36:42 +02:00
Alessandro Ranellucci
850690cf79 Minor optimization 2013-04-18 17:36:06 +02:00
Alessandro Ranellucci
430c825918 Align rectilinear and line infill across layers (new implementation). #712 2013-04-18 17:34:21 +02:00
Alessandro Ranellucci
bd3384525e Revert "Align rectilinear and line infill across layers. #712"
This reverts commit a0a54ea706.
2013-04-15 11:33:24 +02:00
Alessandro Ranellucci
a0a54ea706 Align rectilinear and line infill across layers. #712 2013-04-11 19:36:49 +02:00
Alessandro Ranellucci
94ed6cd239 Always move Z at travel speed. #1093 2013-04-08 22:23:51 +02:00
Jesse Vincent
7ec6332141 split apart the math in nearest_point_index and short-circuit if we know the candidate is no good 2013-04-07 19:53:15 -04:00
Jesse Vincent
e8ca1e59a6 no functional change. only return from one place for clarity 2013-04-07 19:44:32 -04:00
Jesse Vincent
da0e67a891 Only look up $point's X and Y once, rather than once on every pass through the loop.
(Those lookups are expensive)
2013-04-07 18:28:08 -04:00
Jesse Vincent
3e8c5804fe Inline comparable_distance_between_points
It was called on an incredibly hot codepath from a single place. At 12313276 calls
on my test .stl, the sub call overhead alone was a significant perf hit.
2013-04-07 18:13:40 -04:00
Jesse Vincent
060d2da7fe Small optimization on an incredibly hot codepath. 2013-04-07 18:01:15 -04:00
Alessandro Ranellucci
7e51cbcf69 Allow 0.1mm slots. #959 #1056 2013-04-04 01:24:40 +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
a563801304 Merge branch 'master' of github.com:alexrj/Slic3r 2013-04-04 01:15:46 +02:00
Alessandro Ranellucci
3afeb5c7b5 Second layer commands were written multiple times 2013-04-04 00:52:11 +02:00
Alessandro Ranellucci
b725847a51 Bugfix: configuration wizard led to crash with simple mode. #1077 2013-04-03 19:26:59 +02:00
Alessandro Ranellucci
88e70a59c7 Don't wipe if option is disabled 2013-04-03 19:08:12 +02:00
Alessandro Ranellucci
d089d2b2d4 Bugfix: crash introduced by wipe 2013-04-03 19:06:33 +02:00
Devin Grady
e602aad998 inspired by f5e48a3, a seems to work to fix 1076 2013-04-01 22:12:51 -05:00
Alessandro Ranellucci
bf809d1fd0 Use linestring_length() from Boost 2013-03-31 19:50:22 +02:00
Alessandro Ranellucci
1187f4846d Some Clipper optimizations 2013-03-31 19:40:25 +02:00
Alessandro Ranellucci
0d6ff22e19 Merge branch 'wipe' 2013-03-31 11:36:04 +02:00
Alessandro Ranellucci
04d2231901 Bugfix: is_printable() wasn't discarding narrow ring-shaped top/bottom surfaces because it was only considering the contour. This caused extra shell material even in hollow prints. #1049 2013-03-30 11:22:12 +01:00
Alessandro Ranellucci
7f23e72a10 Display preview for small files too. #929 2013-03-30 00:52:45 +01:00
Alessandro Ranellucci
33a4ec660d better handling of too-small and too-short models #929.
These changes handle small models better in the plater preview.
Extremely small thumbnails are preserved instead of culled,
allowing the model to be scaled up. The scale range is extended to
100000% to allow mm-scale objects expressed in meters to be opened
and scaled to mm.
Original coding by mesheldrake
2013-03-30 00:47:13 +01:00
Alessandro Ranellucci
ac2356f66a Don't crash at the end of empty prints. #1042 2013-03-30 00:36:14 +01:00
Alessandro Ranellucci
7b7c9f6330 Launch even if config is corrupted. #1067 2013-03-30 00:30:21 +01:00
Alessandro Ranellucci
f5e48a306d Bugfix: support material and brim didn't work correctly. Includes unit test. #1074 2013-03-30 00:21:09 +01:00
Alessandro Ranellucci
d4119b0eb1 Better bridge direction detection. #1068 2013-03-29 23:49:58 +01:00
Alessandro Ranellucci
5beb2187d3 Bugfix: infill direction wasn't correctly alternated when infilling every 2 layers. #1068 2013-03-29 19:24:08 +01:00
Alessandro Ranellucci
1b79b1cb20 Refactoring: use the clone() method for inflating Surface objects 2013-03-29 19:18:06 +01:00
Alessandro Ranellucci
e563c62094 Replace SetValue with ChangeValue to avoid wxWidgets to fire useless events 2013-03-29 18:56:34 +01:00
Alessandro Ranellucci
d2b451d9a1 Merge branch 'master' into wipe 2013-03-26 16:28:01 +01:00
Alessandro Ranellucci
aae9625a13 Bugfix: solid-infill-below-area wasn't ignored when fill_density = 0, causing solid layers here and there. #1049 2013-03-26 15:47:40 +01:00
Alessandro Ranellucci
2f046799f2 Removed offset() method from Slic3r::Polygon because it only works with ccw polygons 2013-03-26 14:03:24 +01:00
Alessandro Ranellucci
4c41f6c462 Safer safety_offset() for ExPolygons 2013-03-26 13:57:37 +01:00
Alessandro Ranellucci
769ec0cb03 Better clipping of honeycomb paths 2013-03-26 13:04:57 +01:00
Alessandro Ranellucci
843a700e96 Fixes for wipe 2013-03-25 23:06:18 +01:00
Alessandro Ranellucci
4cb36fcbe2 Remove cooling checkbox from simple mode 2013-03-24 21:28:16 +01:00
Alessandro Ranellucci
6bc5de0b5d Allow custom ranges with layer_height = 0 2013-03-24 15:26:55 +01:00
Alessandro Ranellucci
b7cd362820 Remove scale from G-code comments 2013-03-19 19:16:13 +01:00
Alessandro Ranellucci
7ec6c6ffba Lower 0.5*w to 0.4*w to fill finer gaps. #1057 2013-03-19 16:08:19 +01:00
Alessandro Ranellucci
34b192fde3 Merge pull request #1059 from cakeller98/Universal_File_Visibility
Added "known" as a valid model file type
2013-03-19 08:05:19 -07:00
Alessandro Ranellucci
9c122bda5e Fix memory leak in avoid_crossing_perimeters. #1044 2013-03-19 16:02:03 +01:00
Alessandro Ranellucci
813aa5b307 Allow drag and drop for OBJ files 2013-03-19 12:25:10 +01:00
Alessandro Ranellucci
fd2a5e894a Respect perimeter/infill order when multiple extruders are configured but only one is used 2013-03-19 11:58:03 +01:00
Christopher Keller
8bbaafd830 Added "known" as a valid model file type
=> 'Known files (*.stl, *.obj, *.amf)|*.stl;*.STL;*.obj;*.OBJ;*.amf;*.AMF;*.xml;*.XML',

When dialog pops up, it can see ALL known file types instead of only stl.
2013-03-18 20:52:55 -07:00
Alessandro Ranellucci
ec5f0635f7 Add wipe in GUI 2013-03-18 21:20:32 +01:00
Alessandro Ranellucci
96f1b7ab57 Merge branch 'master' into wipe 2013-03-18 21:18:24 +01:00
Alessandro Ranellucci
1abd8c9a9e Remove the 'simplify' handle in ExtrusionPath after the recent refactoring. #1054 2013-03-18 18:03:14 +01:00
Alessandro Ranellucci
f0ac1c704e Fix test framework detecting dE=0 as retraction 2013-03-18 18:01:01 +01:00
Alessandro Ranellucci
0b81911cff Bugfix: artifacts near walls. #1049 2013-03-18 17:55:16 +01:00
Alessandro Ranellucci
8ce31c2a2b Don't exclude any infill under internal bridges; revert infill pattern to rectilinear for internal bridges. #240 2013-03-18 13:32:19 +01:00
Alessandro Ranellucci
7f917671ab Bugfix: horizontal projection for high-res models might show corrupted result 2013-03-17 15:39:51 +01:00
Alessandro Ranellucci
8d2c651ef2 $surface->thickness was erroneously defaulting to 1 mm 2013-03-17 14:58:10 +01:00
Alessandro Ranellucci
1064c9bb2a Merge branch 'master' into grow-narrow
Conflicts:
	lib/Slic3r/Fill.pm
	lib/Slic3r/Print/Object.pm
2013-03-17 02:30:20 +01:00
Alessandro Ranellucci
7de8b20bc4 New wipe feature 2013-03-17 02:22:50 +01:00
Alessandro Ranellucci
83065b0789 Bugfix: wrong flow and bad pattern rotation when infill-every-layers was set to an arbitrary high value 2013-03-17 01:10:40 +01:00
Alessandro Ranellucci
04c0caad0b Fix honeycomb infill overlap with perimeters 2013-03-17 00:57:58 +01:00
Alessandro Ranellucci
537fca47c5 Use solid infill speed for internal bridges; apply slowdown if any; don't use bridge fan settings. #240 2013-03-17 00:42:53 +01:00
Alessandro Ranellucci
700fee14aa Set honeycomb as default fill pattern, as it works better at low layer heights and makes stronger parts 2013-03-17 00:24:53 +01:00
Alessandro Ranellucci
c999d0c44f Set default value for first_layer_height to 0.35mm so that first_layer_extrusion_width = 200% works fine even when user sets layer_height to 0.1. A first layer height of 0.35mm works fine for both 0.35 and 0.5 nozzles so it should be fine for most users 2013-03-17 00:22:53 +01:00
Alessandro Ranellucci
78a4ae4835 Use full flow for sparse infill by default 2013-03-17 00:21:17 +01:00
Alessandro Ranellucci
35bd5a3423 New --solid-infill-extrusion-width option 2013-03-17 00:02:31 +01:00
Alessandro Ranellucci
c13d9e9fb3 Don't collapse overhangs too early 2013-03-16 21:51:38 +01:00
Alessandro Ranellucci
0f5064dd32 Untested fix for incomplete honeycomb support material. #1032 2013-03-16 21:10:12 +01:00
Alessandro Ranellucci
25554a345f Reorder object copies using a nearest neighbor search 2013-03-16 20:56:14 +01:00
Alessandro Ranellucci
cf5adca928 New --resolution option to simplify input models 2013-03-16 19:58:34 +01:00
Alessandro Ranellucci
10b6bc9d15 Removed keep_meshes 2013-03-16 19:39:00 +01:00
Alessandro Ranellucci
f4b8185698 Fixed typo preventing support material to work with new simplify() syntax 2013-03-16 19:11:49 +01:00
Alessandro Ranellucci
db2e76a0df New option to change perimeter order. #534 2013-03-16 18:56:49 +01:00
Alessandro Ranellucci
33b40eda18 Always fix self-intersecting polygons that Douglas-Peucker might return 2013-03-16 18:42:56 +01:00
Alessandro Ranellucci
0f8ca6191a Merge branch 'master' into grow-narrow 2013-03-16 16:22:03 +01:00
Alessandro Ranellucci
dc0f706789 Bugfix: simplification of support areas could lead to complex polygons with bad orientation, thus causing wrong pattern clipping. #1032 2013-03-14 14:27:08 +01:00
Alessandro Ranellucci
f528088d31 Merge branch 'master' into grow-narrow 2013-03-13 16:39:57 +01:00
Alessandro Ranellucci
9713b9f524 Fix narrow fills growing 2013-03-13 14:55:58 +01:00
Alessandro Ranellucci
0feef890b1 Use Class::XSAccessor 2013-03-13 01:29:45 +01:00
Alessandro Ranellucci
cab51d4581 One more slight optimization 2013-03-13 01:14:47 +01:00
Alessandro Ranellucci
a412291690 Little optimization 2013-03-13 01:07:06 +01:00
Alessandro Ranellucci
d9b82c79da Grow narrow infill regions into void - to be tested more 2013-03-13 01:03:54 +01:00
Alessandro Ranellucci
6058384978 Fixed regression causing crash when support material threshold angle was defined. #1048 2013-03-12 19:39:43 +01:00
Alessandro Ranellucci
5c1336d2de Clarify that min Z, max Z and layer height are supposed to be expressed in mm 2013-03-12 10:28:51 +01:00
Alessandro Ranellucci
a5e6340004 Workaround for HideRowLabels() missing in wxWidgets 2.8. #770 2013-03-11 20:00:12 +01:00
Alessandro Ranellucci
999af84c54 Don't make internal bridges when fill_density == 1. #1045 2013-03-11 18:41:12 +01:00
Alessandro Ranellucci
0df8398a39 Use concentric infill for internal bridges. #240 2013-03-11 18:38:32 +01:00
Alessandro Ranellucci
0eecf33198 Bugfix: narrow solid shells were collapsed when spacing was added before generating infill, so we grow them 2013-03-11 18:37:01 +01:00
Alessandro Ranellucci
b73c301c55 Bugfix: double lift at toolchange. #953 2013-03-11 17:06:05 +01:00
Alessandro Ranellucci
0326962d11 Merge branch 'new-extra-perimeters' 2013-03-11 14:24:02 +01:00
Alessandro Ranellucci
e809a5bdcc Added support for expolygons in Slic3r::SVG 2013-03-11 14:23:45 +01:00
Alessandro Ranellucci
b7945ac790 Finished new extra perimeters implementation 2013-03-11 14:23:16 +01:00
Alessandro Ranellucci
428cd7867d Missing bit 2013-03-11 12:47:27 +01:00
Alessandro Ranellucci
74e21d7a04 New implementation of extra perimeters - to test 2013-03-10 19:08:36 +01:00
Alessandro Ranellucci
964accb588 Typo 2013-03-10 19:07:41 +01:00
Alessandro Ranellucci
2942485a94 New option to make infill before perimeters. #1039 2013-03-10 18:15:44 +01:00
Alessandro Ranellucci
ab3d1ac820 Give priority to infill extruder if it was used last. #940 2013-03-10 17:40:19 +01:00
Alessandro Ranellucci
107f48d894 Reduce toolchanges by giving priority to last extruder on layer change. #940 2013-03-10 17:28:03 +01:00
Alessandro Ranellucci
dac168eff0 Do each island completely if avoid_crossing_perimeters is enabled. #278 2013-03-10 16:09:03 +01:00
Alessandro Ranellucci
f10a4787b2 Fix layer ordering when printing objects with different layer heights 2013-03-10 15:36:52 +01:00
Alessandro Ranellucci
f670acb4b1 Slice a single object with multiple layer heights. :-) 2013-03-10 14:58:49 +01:00
Alessandro Ranellucci
d1acc511b3 Refactor ObjectDialog into a tab panel 2013-03-10 12:46:54 +01:00
Alessandro Ranellucci
6a0ba97f0e Move ObjectDialog to a separate file 2013-03-10 12:33:10 +01:00
Alessandro Ranellucci
d2152a53a0 Missing tooltip for extra perimeters 2013-03-10 12:30:43 +01:00
Alessandro Ranellucci
17cbca5e06 Factor out layer height in support material generation 2013-03-10 12:22:40 +01:00
Alessandro Ranellucci
2ab5fa9c72 Factor out layer height from combine_infill() 2013-03-10 12:08:18 +01:00
Alessandro Ranellucci
2275de9f0d Factored out the layer height logic 2013-03-10 11:37:16 +01:00
Alessandro Ranellucci
e9c7460c11 New --bridge-acceleration option 2013-03-09 20:31:09 +01:00
Alessandro Ranellucci
2acda9973e Don't apply acceleration settings to travel moves 2013-03-09 20:28:03 +01:00
Alessandro Ranellucci
b7b89ff7f2 Bugfix: *-acceleration options didn't work in CLI 2013-03-09 20:21:05 +01:00
Alessandro Ranellucci
460e169c67 New option to disable retraction on layer change 2013-03-09 20:05:43 +01:00
Alessandro Ranellucci
e71bf48463 Add a command to lift nozzle in default start G-code 2013-03-09 19:51:09 +01:00
Alessandro Ranellucci
d50e0af548 Make sure the inwards move after last perimeter loop doesn't exceed object boundary 2013-03-09 17:15:45 +01:00
Alessandro Ranellucci
caa79583ff Tiny optimization 2013-03-09 17:08:17 +01:00
Alessandro Ranellucci
fa41e15c68 Fixed regression causing thin walls to be processed twice, thus producing overlapping straight paths and zigzag. #1035 2013-03-09 17:07:11 +01:00
Alessandro Ranellucci
a2702082b2 Merge pull request #962 from scottp/issue_885b
Add defaults into Tooltips from #885
2013-03-09 07:48:20 -08:00
Alessandro Ranellucci
9247b3e9f4 New --no-plater and --gui-mode options. #604 2013-03-09 16:43:09 +01:00
Alessandro Ranellucci
af50272b3b Refactor simple mode definitions to dedicated SimpleTab classes 2013-03-09 16:27:18 +01:00
Alessandro Ranellucci
5477d66902 Advertise the expert mode in simple mode 2013-03-09 14:55:07 +01:00
Alessandro Ranellucci
46f35e39f6 Some more tweaks 2013-03-08 23:34:57 +01:00
Alessandro Ranellucci
0748e088a0 Reorder options in simple mode 2013-03-08 23:07:14 +01:00
Alessandro Ranellucci
84f4f098ca Fix cooling and load in simple-mode. #1001 2013-03-08 22:58:28 +01:00
Alessandro Ranellucci
b901e1f6c8 Merge branch 'master' into simple-mode 2013-03-08 22:28:13 +01:00
Alessandro Ranellucci
4fc435f0fd Bugfix: retract speed was applied to travel 2013-03-08 17:52:33 +01:00
Alessandro Ranellucci
f494335f77 Bugfix: not all the calls to travel_to() were updated 2013-03-08 13:50:50 +01:00
Alessandro Ranellucci
2f192bddca Make tests happy 2013-03-07 16:24:25 +01:00
Alessandro Ranellucci
97e864699e New top-infill-extrusion-width option 2013-03-07 16:00:58 +01:00
Alessandro Ranellucci
36d24ccb0b Infill refactoring and cleanup complete 2013-03-07 15:47:32 +01:00
Alessandro Ranellucci
d928f005e6 Some incomplete work for cleaner infill logic 2013-03-05 20:03:46 +01:00
Alessandro Ranellucci
a9df56670f Bugfix: internal-bridge regions were not touching perimeters 2013-03-05 19:33:06 +01:00
Alessandro Ranellucci
37810f777f Make only_retract_when_crossing_perimeters work with avoid_crossing_perimeters 2013-03-05 17:30:27 +01:00
Alessandro Ranellucci
72613ae2b4 Enable only_retract_when_crossing_perimeters by default 2013-03-05 15:01:45 +01:00
Alessandro Ranellucci
70092a9cf5 Apply only_retract_when_crossing_perimeters to all infills 2013-03-04 23:37:58 +01:00
Mike Sheldrake
28467b68e0 typo - fix wrong bridge direction #621
fixes two out of three reported in #621 (but not the first one)
likely the same issue in #706 and #1003
2013-02-27 15:16:07 -08:00
Alessandro Ranellucci
a6243124a9 Merge pull request #984 from giseburt/origin_master
Fix for Replicator 1 not finishing builds.
2013-02-27 02:37:45 -08:00
Alessandro Ranellucci
fafad0fd81 Code for memory usage statistics 2013-02-27 11:26:52 +01:00
Alessandro Ranellucci
919d1131f8 Use nearest-neighbor search for internal perimeters too. #1025 2013-02-27 11:04:14 +01:00
Alessandro Ranellucci
c3d90a1ff8 Rename $layer to $layerm in Slic3r::Fill too for consistency 2013-02-27 10:44:42 +01:00
Alessandro Ranellucci
a9090688f9 Refactor bridge flow to Slic3r::Flow::Bridge class 2013-02-27 10:43:50 +01:00
Alessandro Ranellucci
d00c2882c4 Remove debug line slipped into last commit 2013-02-27 10:30:05 +01:00
Alessandro Ranellucci
bf9fe1b505 Bugfix: internal bridge surfaces were incorrectly merged with other internal solid surfaces, causing suboptimal results 2013-02-27 01:30:32 +01:00
Alessandro Ranellucci
8ce7b13db5 Fixed regression in is_printable() - needs unit test 2013-02-26 20:54:40 +01:00
Alessandro Ranellucci
37be4f7319 Some cleanup for detect_surfaces_type() 2013-02-26 20:52:13 +01:00
Alessandro Ranellucci
f4e8cdbf36 Better logic for extra perimeters 2013-02-26 20:00:05 +01:00
Alessandro Ranellucci
038737abe6 Bugfix: minimum flow for low layer heights was still too low 2013-02-26 14:15:05 +01:00
Alessandro Ranellucci
7412d4a687 Bugfix: manifoldness error triggered with multi-volume AMF files. #1019 2013-02-24 18:17:08 +01:00
Alessandro Ranellucci
bd76e7677c Adjust extra perimeters 2013-02-24 17:04:19 +01:00
Alessandro Ranellucci
c3dde74776 Fix brim and extra perimeters after recent changes to ->slices 2013-02-24 16:40:14 +01:00
Alessandro Ranellucci
de0c2febd9 Remove useless lines 2013-02-23 23:50:46 +01:00
Alessandro Ranellucci
08a72c0824 Use bridge math for the first solid infill layer above sparse infill. #240 2013-02-23 21:39:13 +01:00
Alessandro Ranellucci
3b1e921171 Slight changes to the defaults 2013-02-23 19:14:41 +01:00
Alessandro Ranellucci
0634437364 Keep the full geometries in $layer->slices, including thin walls 2013-02-23 18:21:29 +01:00
Alessandro Ranellucci
504962712b Bugfix: when using low layer heights and support material, the contact regions were generated with a negative height. #1013 2013-02-23 17:40:38 +01:00
Alessandro Ranellucci
3eedd4bbed Fixed regression in support material after recent flow refactoring. #1012 2013-02-23 16:08:29 +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
28638019ae Bugfix: perimeter/infill overlap was calculated regardless of the infill extrusion width. #994 2013-02-22 18:23:23 +01:00
Alessandro Ranellucci
bec2371604 Fix regression introduced in 91bcfc8a74 2013-02-22 16:56:43 +01:00
Alessandro Ranellucci
5eade0f9e1 Don't validate the number of layers for infill combination, just limit it automatically. #993 2013-02-22 16:24:24 +01:00
Alessandro Ranellucci
91bcfc8a74 Remove $Slic3r::flow and $Slic3r::first_layer_flow 2013-02-22 16:08:11 +01:00
Alessandro Ranellucci
b9c84490b8 Get rid of most calls to $Slic3r::flow 2013-02-19 12:37:26 +01:00
Alessandro Ranellucci
6dc62d3cf2 Disable extra perimeters if fill density is zero as they wouldn't be supported by anything and would just float inside the object. infill_only_where_needed should be the method of choice for hollow objects 2013-02-19 12:37:26 +01:00
Mike Sheldrake
c2f04f2861 avoid overlap of single layer and multilayer fill
A single-layer rectilinear or honeycomb fill under a low slope
wall/ceiling or extra perimeter will stick out from under the
overhang, because those fills get extended beyond their fill_surface
boundaries to purposely overlap perimeters. This causes interference
with multil-layer fills. This commit clips the single layer fill
boundaries a bit more where they interface with multi-layer fill
boundaries, to avoid overlap.
2013-02-18 07:26:19 -08:00
Mike Sheldrake
9a86edc70c account for extrusion width when clearing layers for combined infill
Otherwise you get extraneous fill up against sloped walls in regions
of layers that should not have fill, like in #834.
2013-02-16 07:53:47 -08:00
Alessandro Ranellucci
c9b506fa02 New simpler and more robust implementation of infill every 'n' layers 2013-02-10 12:40:43 +01:00
Alessandro Ranellucci
cac79c0575 New option to only infill where strictly needed for supporting ceilings 2013-02-09 23:36:32 +01:00
Alessandro Ranellucci
cf8cfc1380 Bugfix: angle threshold was considered even when enforcing support 2013-02-09 21:49:00 +01:00
Robert Giseburt
6c12bd32ad Fix for Replicator 1 not finishing builds.
If the progress reaches 100% before last layer, the firmware erroneously stops reading the file.
2013-02-06 22:32:37 -06:00
Alessandro Ranellucci
26a3cd5542 Refactor chained_path(), add chained_path_items() and chained_path_points() 2013-02-06 12:03:53 +01:00
Alessandro Ranellucci
e593a30fc7 Skip support material for one-layer objects 2013-02-06 10:40:08 +01:00
Alessandro Ranellucci
4f91bed904 Optimize cycling in get_layer_range() 2013-02-05 21:59:18 +01:00
Alessandro Ranellucci
73a661e6c1 shortest_path() in MotionPlanner was actually correctly named shortest_path() 2013-02-05 19:41:56 +01:00
Alessandro Ranellucci
090e3b1fe3 Rename shortest_path to chained_path, which reflects its algorithm more correctly 2013-02-05 17:27:45 +01:00
Alessandro Ranellucci
11637d527a Bugfix: avoid-crossing-perimeters was failing on layers only containing single walls. #978 2013-02-04 19:33:30 +01:00
Alessandro Ranellucci
8efe46e58d New option to enforce support material on a given number of layers to improve adhesion of objects with poor footprint 2013-02-04 15:48:57 +01:00
Alessandro Ranellucci
c8100ed099 Disable randomize starting points by default 2013-02-04 15:05:56 +01:00
Alessandro Ranellucci
7d08796b0a Remove sporadic duplicate useless lines. #772 2013-02-04 14:27:23 +01:00
Alessandro Ranellucci
9222526e03 Customizable number of interface layers for support material and raft 2013-02-03 17:23:50 +01:00
Alessandro Ranellucci
acada05068 Merge branch 'raft' 2013-02-02 16:17:05 +01:00
Alessandro Ranellucci
c7b4d99d7e Generate raft automatically even when support material is disabled 2013-02-02 16:16:43 +01:00
Alessandro Ranellucci
02c0f3658f Use 50% density for support base flange 2013-02-02 15:37:09 +01:00
Alessandro Ranellucci
d3727a1699 Add ability to have cross-hatched rectilinear support material. #509 2013-02-02 00:14:45 +01:00
Alessandro Ranellucci
547dfb857d Workaround for Boost clipping not being idempotent and causing lack of support material 2013-02-01 23:45:46 +01:00
Alessandro Ranellucci
eae1e7adc2 Make a solid base below support material on first layer 2013-02-01 22:13:12 +01:00
Alessandro Ranellucci
1de0169910 Multithreaded perimeter generation. #154 2013-01-31 15:44:55 +01:00
Scott Penrose
9d086f027a Add defaults into Tooltips from #885 2013-01-30 09:53:22 +11:00
Alessandro Ranellucci
177f1a9bf0 New raft_layers option. #123 2013-01-28 14:12:01 +01:00
Alessandro Ranellucci
a016a06fa6 Merge branch 'avoid-crossing-perimeters'
Conflicts:
	lib/Slic3r/GCode.pm
2013-01-28 10:43:58 +01:00
Alessandro Ranellucci
e8cb1f4528 Slight addition to avoid_crossing_perimeters tooltip 2013-01-28 10:42:24 +01:00
Alessandro Ranellucci
2963e54d21 Use the faster polygon_multi_linestring_intersection() 2013-01-28 00:32:19 +01:00
Alessandro Ranellucci
ae201c8f41 Optimization: avoid calculating square roots if not needed 2013-01-28 00:18:55 +01:00
Alessandro Ranellucci
6cb891f2db Use Boost::Geometry::Utils for Douglas-Peucker 2013-01-28 00:09:19 +01:00
Alessandro Ranellucci
4c8c725eec Add a wkt() method to ExPolygon 2013-01-28 00:02:34 +01:00
Alessandro Ranellucci
ddaeaa7591 Fix last_pos shifting and add unit test 2013-01-27 13:08:13 +01:00
Alessandro Ranellucci
50526dea5a Fix last_pos shifting and add unit test 2013-01-27 13:06:45 +01:00
Alessandro Ranellucci
ad48fdc7f9 Fix external motionplanner too 2013-01-27 12:48:16 +01:00
Alessandro Ranellucci
f1230312e3 Fixes for merge issues 2013-01-26 23:55:47 +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
4c62c1b570 Support .gco extension too. #957 2013-01-26 21:40:20 +01:00
Mike Sheldrake
bc61656057 harmless misplaced semicolon 2013-01-26 09:31:28 -08:00
Mike Sheldrake
599d76b70b avoid DBus related crash on Ubuntu #954
An undocumented feature of Net::DBus->session() is that it returns
the same connection object it creates the first time it's called for
all subsequent calls. Somehow this exposes us to a bug where unref()
is called on that object too many times, causing a segfault.
Undefining the cached object after we've used it once avoids this.
2013-01-25 12:29:44 -08:00
Alessandro Ranellucci
18280da1b3 Bugfix: the non-manifold warning was spitting out wrong coordinates 2013-01-25 18:02:01 +01:00
Alessandro Ranellucci
f555a1ecc2 Replace 'Less' with 'Fewer' in plater. #944 2013-01-23 19:16:57 +01:00
Alessandro Ranellucci
94bb1e54bb Raise max temperatures (in GUI) to 400°C 2013-01-23 11:10:46 +01:00
Mike Sheldrake
65ef3b35d9 limit layer requests to object->layer_count when preparing skirt #901
Each object on the plater was being queried for points for
producing the skirt for all skirt layers, even when the object was
shorter than the skirt.

layers of the print
2013-01-18 08:36:01 -08:00
Alessandro Ranellucci
73c70021df Change toolchange and G92 E0 order for makerbot and sailfish G-code flavors. #855 2013-01-17 15:02:40 +01:00
Alessandro Ranellucci
177347137f New G-code flavor for Sailfish (thanks to fros1y for working on it). #826 2013-01-17 14:56:31 +01:00
Alessandro Ranellucci
8001059390 Add Mike Sheldrake in the About window 2013-01-17 14:13:25 +01:00
Alessandro Ranellucci
92feebf5fe Fixed regression introduced in 4d8757bf5d causing crash during support material generation 2013-01-17 12:32:57 +01:00
Alessandro Ranellucci
4d8757bf5d Interface support layers were clipped badly. Also, reduce simplification of the clipping boundaries. #583 2013-01-17 11:59:14 +01:00
Alessandro Ranellucci
4fc6fc5ab6 Increase default value for retract_length_toolchange 2013-01-17 11:51:00 +01:00
Alessandro Ranellucci
0ddd6d9e55 Require Math::Clipper 1.17 2013-01-17 11:11:22 +01:00
Alessandro Ranellucci
954520cba5 Enable cooling by default 2013-01-17 10:40:45 +01:00
Alessandro Ranellucci
ecc7e4560e Don't fill gaps if fill density is 0. #915 2013-01-17 10:39:05 +01:00
Mike Sheldrake
f3a1221039 per-thread clipper object for parallel support generation #888 2013-01-16 06:00:04 -08:00
Mike Sheldrake
241dff00e2 Merge branch '834-every-n-fill-frags' #834 2013-01-16 02:24:47 -08:00
Mike Sheldrake
85934e1738 use infill flow spacing, not perimeter, for combine_infill() clip offsets 2013-01-15 22:13:11 -08:00
Alessandro Ranellucci
4bff4d0d50 Ignore perimeter_acceleration and infill_acceleration if their values are 25 and 50 to handle legacy configs gracefully. 2013-01-15 12:52:22 +01:00
Mike Sheldrake
bce3e96210 extraneous fill against sloped walls with fill every N layers #834
Polygons used for N x depth fill surfaces need to be offset
by flow spacing before they are reused to clip lower fill surfaces.
Otherwise thin fill sections remain on clipped layers against sloping
walls, and the N x depth fill collides with them.
2013-01-14 21:18:31 -08:00
Mike Sheldrake
68fc91d854 offset miter limit to 3 - 801 828 836 851 875 - spikes and pimples
Was set to 10 to address 801. Setting to 3 has the same effect for 801,
and avoids spike artifacts that are likely causing "spike and pimple"
problems in the referenced issues.
2013-01-13 02:50:49 -08: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
Mike Sheldrake
73aae07e74 842, 847 slightly enlarge a clip polygon to counteract integer truncation
Geomery in referenced issues triggered Clipper problems, but also
pointed to a situation where integer truncation (as coordinates pass
into Clipper) might be shrinking a clip polygon in a way that leaves
degenerate or unwanted thin clip results. Growing the clip polygon by 2
is expected to overcome any issues caused by truncation of floats.
2013-01-11 10:15:42 -08:00
Alessandro Ranellucci
3d03faf0b2 Remove leftover M501 2013-01-10 17:19:38 +01:00
Alessandro Ranellucci
32fd58d531 Acceleration control. #185 2013-01-10 15:29:40 +01:00
Alessandro Ranellucci
7239ca18c1 Simple mode 2013-01-03 15:49:20 +01:00
Alessandro Ranellucci
cf4c090208 Added Preferences dialog 2013-01-02 20:30:48 +01:00
Alessandro Ranellucci
34e047205a Automatic detection of support material threshold angle 2013-01-02 19:40:48 +01:00
Alessandro Ranellucci
cbd298bc36 Alter extrusion width automatic calculation to take "native flow" into account 2013-01-02 19:22:51 +01:00
Alessandro Ranellucci
30d9b2e508 Refactoring: initialize all layers at once and avoid duplication of slicing height math. #637 2013-01-01 23:28:48 +01:00
Alessandro Ranellucci
1774143011 Bugfix: PlanePath fill patterns were not working anymore. #880 2012-12-31 14:11:36 +01:00
Alessandro Ranellucci
141a8d3989 Bugfix: some holes being closed incorrectly. #858 2012-12-30 17:57:30 +01:00
Alessandro Ranellucci
6e6bc74636 Added failing test case for troubleshooting unexpected filled holes. #858 2012-12-30 16:27:20 +01:00
Alessandro Ranellucci
0da71dbdfa Fix regression causing wrong number of solid shells when using fill_density = 0 (includes regression test) 2012-12-23 20:20:17 +01:00
Alessandro Ranellucci
e59ed7efb7 New toolchange_gcode option. #547 2012-12-23 16:29:08 +01:00
Alessandro Ranellucci
15f07197d8 Don't store ->surfaces anymore. Save memory, save time 2012-12-22 23:57:39 +01:00
Alessandro Ranellucci
5930267de9 Bugfix: some top/bottom solid shells are not treated as solid. #689 2012-12-21 20:25:48 +01:00
Alessandro Ranellucci
8cd8e8b209 Merge branch 'test-dual-retraction' 2012-12-21 15:23:07 +01:00
Alessandro Ranellucci
dc4ada2374 Fix retraction tests and fix retract_extra_length and lift in multiple extruders environments 2012-12-21 15:14:44 +01:00
Alessandro Ranellucci
701c98c5a7 Export Slic3r::Test::_eq() 2012-12-21 13:25:03 +01:00
Alessandro Ranellucci
d5537e7797 Enable retraction for support material too, but only when moving away from support islands. #831 2012-12-20 18:47:40 +01:00
Alessandro Ranellucci
bf603b0221 Fixed regression causing inefficient paths during infill 2012-12-20 18:10:20 +01:00
Alessandro Ranellucci
dcc0ce78db Fix warning 2012-12-20 17:03:50 +01:00
Alessandro Ranellucci
ea304a4803 Bugfix: custom layer G-code was applied before Z change, and not after like it was documented. #869 2012-12-20 17:01:01 +01:00
Alessandro Ranellucci
b70404bb23 Disable gap filling if gap fill speed is set to zero 2012-12-17 19:55:25 +01:00
Alessandro Ranellucci
1a3497b71d Add tests for vibration limiting and fix implementation. Also includes a fix in set_shift() 2012-12-09 18:33:25 +01:00
Alessandro Ranellucci
4078bb0476 Fix error when vibration limit is disabled 2012-12-06 10:54:28 +01:00
Alessandro Ranellucci
142a6cc4eb Add --vibration-limit back to CLI usage and disable it by default 2012-12-05 17:57:35 +01:00
Alessandro Ranellucci
ca0aa5c287 Apply vibration limit to every move except perimeters 2012-12-05 16:32:50 +01:00
Alessandro Ranellucci
25960a33e0 Put vibration limit back in GUI 2012-12-05 15:08:17 +01:00
Alessandro Ranellucci
cf32cd6510 Implement vibration limit using G4 pauses 2012-12-05 15:03:36 +01:00
Alessandro Ranellucci
f001374c6e New implementation of the little inwards move before leaving a loop. #186 2012-12-05 11:31:35 +01:00
Alessandro Ranellucci
283809f5c2 No need for a role to identify small perimeters 2012-12-05 10:47:41 +01:00
Alessandro Ranellucci
ac6dc67e6a Tidy 2012-12-05 01:12:50 +01:00
Alessandro Ranellucci
accc598eb5 Revert "Experimental feature: make a little move inwards by 45° after finishing the external perimeter and before retracting. #186"
This reverts commit c57e94c065.

Conflicts:

	lib/Slic3r/GCode.pm
2012-11-29 19:16:07 +01:00
Alessandro Ranellucci
b495e15d7f Fix plater slowness after the introduction of the vertical projection 2012-11-29 19:13:52 +01:00
Alessandro Ranellucci
93310a6a81 Fix bounding_box_center() 2012-11-24 00:15:02 +01:00
Alessandro Ranellucci
116ab446e3 Show vertical projection instead of convex hull for objects with <= 2000 facets. #780 2012-11-24 00:13:04 +01:00
Alessandro Ranellucci
12873e973b One more missing bit for gap_fill_speed 2012-11-23 18:37:47 +01:00
Alessandro Ranellucci
556e59bbe4 Last commit erroneously reverted gap fill speed 2012-11-23 17:41:15 +01:00
Alessandro Ranellucci
0f0992e39a Speed for support material. #813 2012-11-23 17:20:26 +01:00
Alessandro Ranellucci
d6d96391a9 Avoid overextrusion when support material spacing is configured to < the extrusion spacing. #821 2012-11-23 17:15:52 +01:00
Alessandro Ranellucci
e7b307df02 Expose gap_fill_speed in GUI 2012-11-23 17:09:59 +01:00
Alessandro Ranellucci
5dba02fdeb New separate speed setting for gap fill. #785 2012-11-23 11:25:02 +01:00
Alessandro Ranellucci
68e302fe27 Fix exporting G-code 2012-11-23 11:24:04 +01:00
Alessandro Ranellucci
21a6219b62 Disable vibration limit. #785 2012-11-23 11:14:06 +01:00
Alessandro Ranellucci
2abf2be781 New testing framework 2012-11-21 20:41:14 +01:00
Alessandro Ranellucci
8ae96a8868 Only apply vibration limit to gaps fill while it's not very mature to work with long segments 2012-11-21 19:27:38 +01:00
Alessandro Ranellucci
fc399d60e2 Raise the miter limit to avoid squaring corners too easily. #801 2012-11-20 17:43:20 +01:00
Alessandro Ranellucci
cd892fdce8 Connect zigzag gaps fill paths to benefit from simplification 2012-11-19 18:57:42 +01:00
Alessandro Ranellucci
e91320e031 Fix rotation for threaded perls 2012-11-19 18:31:41 +01:00
Alessandro Ranellucci
124a1fd84e Raise default frequency limit to 25Hz 2012-11-19 18:03:49 +01:00
Alessandro Ranellucci
de8a845d81 Disable retraction for support material 2012-11-19 18:03:20 +01:00
Alessandro Ranellucci
5678cd562c Fix preview after rotation in plater 2012-11-19 17:39:16 +01:00
Alessandro Ranellucci
99c942b5ea Merge branch 'vibration-limit' 2012-11-19 15:54:50 +01:00
Alessandro Ranellucci
3c7321ab80 Bugfix: some retractions between objects/copies were skipped. #786 2012-11-19 15:34:52 +01:00
Alessandro Ranellucci
300734db38 Emit M106 S0 instead of M107 for Teacup 2012-11-19 15:30:55 +01:00
Alessandro Ranellucci
183736dd9a Infill flow for bottom layer was calculated incorrectly when first_layer_height != layer_height 2012-11-19 12:37:05 +01:00
Alessandro Ranellucci
de0640603a Append full config when --gcode-comments is enabled 2012-11-18 19:53:52 +01:00
Alessandro Ranellucci
a66e8e547d Apply Douglas-Peucker to all paths before generating G-code 2012-11-18 18:00:33 +01:00
Alessandro Ranellucci
e119cee66c Don't emit warnings on unknown options 2012-11-18 17:42:52 +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
08700aa942 Keep bridge flow unchanged even with the new overlapping spacing 2012-11-18 15:44:47 +01:00
Alessandro Ranellucci
427e3c1720 Keep bridge flow unchanged even with the new overlapping spacing 2012-11-18 15:42:59 +01:00
Alessandro Ranellucci
7a87a76391 Refactor frequency limit to avoid processing G-code 2012-11-18 15:28:13 +01:00
Alessandro Ranellucci
008633f013 Working implementation of frequency limit 2012-11-18 12:23:11 +01:00
Alessandro Ranellucci
f3164594eb More incomplete work 2012-11-18 11:33:53 +01:00
Alessandro Ranellucci
72007c4f6a Rewrite frequency limiting code 2012-11-17 18:07:13 +01:00
Alessandro Ranellucci
600e951fd8 Completed vibration limit 2012-11-17 12:08:19 +01:00
Alessandro Ranellucci
96dd106f61 Initial work for limiting vibrations 2012-11-17 10:40:15 +01:00
Alessandro Ranellucci
8d557bee8c Bugfix: AMF export was not working anymore. #799 2012-11-16 22:41:54 +01:00
Alessandro Ranellucci
7310cec087 Remove one more unused line 2012-11-16 22:09:32 +01:00
Alessandro Ranellucci
ed50aefa71 Remove unused code 2012-11-16 22:08:14 +01:00
Alessandro Ranellucci
ac5be309e3 Do not call merge_continuous_lines() anymore 2012-11-16 19:20:46 +01:00
Alessandro Ranellucci
aff0898f35 Typo 2012-11-16 18:24:09 +01:00
Alessandro Ranellucci
86f5cb8654 Previous commit about bridge spacing was incomplete 2012-11-16 18:10:09 +01:00
Alessandro Ranellucci
a81377d684 Apply overlap factor to bridges too 2012-11-16 13:18:06 +01:00
Alessandro Ranellucci
1c2bc94d5a Bugfix: only_retract_when_crossing_perimeters might cause some missed retractions when printing multiple copies of the same object. #786 2012-11-16 12:39:55 +01:00
Alessandro Ranellucci
a1a12ffe8e Allow setting top-solid-layers and bottom-solid-layers to 0 independently 2012-11-16 12:37:47 +01:00
Alessandro Ranellucci
06b475a4ed Clone last_pos before storing it otherwise it will be translated. #786 2012-11-16 11:05:45 +01:00
Alessandro Ranellucci
b625c3b2b2 Simplify gaps fills to avoid some shaking 2012-11-16 10:47:42 +01:00
Alessandro Ranellucci
a5a0f32e19 Expose all SLIC3R_* environment variables as placeholders. #781 2012-11-16 10:07:30 +01:00
Alessandro Ranellucci
580e36eb25 Raise offset scale factor back to 100000 now that Clipper was updated 2012-11-15 10:09:29 +01:00
Alessandro Ranellucci
d3629a3a44 Require Math::Clipper 1.15. #779 2012-11-13 11:53:02 +01:00
Alessandro Ranellucci
93bb2c1056 Bugfix: fatal error when using brim and no skirt. #784 2012-11-07 23:06:32 +01:00
Alessandro Ranellucci
2e3110d2e4 Possible (or at least partial) workaround for the current Clipper segfault. #779 2012-11-07 15:23:01 +01:00
Alessandro Ranellucci
2ef90562ce Fixed regression causing first two layers to be infilled with parallel lines 2012-11-06 22:16:01 +01:00
Alessandro Ranellucci
e21c806ee9 New wkt() method for debugging 2012-11-06 20:31:50 +01:00
Alessandro Ranellucci
1db614a5a9 Revert "Use G92 to apply Z offset. #486" #778 2012-11-06 20:04:44 +01:00
Alessandro Ranellucci
ab2b31672f Fixed regression causing a long string between copies 2012-11-06 19:54:21 +01:00
Alessandro Ranellucci
0bff8ad576 Bugfix: some multimaterial files generated a fatal error 2012-11-05 15:59:31 +01:00
Alessandro Ranellucci
0a912c6316 Only apply min_skirt_length on bottom layer 2012-11-05 14:26:55 +01:00
Alessandro Ranellucci
68e1edab80 Require Math::Clipper 1.14 and increase scale factor for offset(). #720 2012-11-05 00:17:46 +01:00
Mark Hindess
705d6b3179 Quick fix for support material. 2012-11-02 22:39:08 +00:00
Alessandro Ranellucci
d67c07bd47 Fix typo causing incomplete honeycomb infill after recent refactoring 2012-11-01 18:32:35 +01:00
Alessandro Ranellucci
93a8391e18 Alternate gaps fill direction 2012-11-01 11:53:18 +01:00
Alessandro Ranellucci
37c0b45187 Detect gaps even after the desired number of perimeters has been generated 2012-11-01 11:51:52 +01:00
Alessandro Ranellucci
cb4ede7f9e Do not pass the Print object to SVG::output anymore 2012-11-01 11:34:53 +01:00
Alessandro Ranellucci
554d10c854 Only put ExtrusionPath objects in ExtrusionPath::Collection (no ExtrusionLoop objects) 2012-10-31 19:08:29 +01:00
Alessandro Ranellucci
d4ccd39ad3 Minor code cleanup 2012-10-30 15:53:01 +01:00
Alessandro Ranellucci
92ab53868e Remove unused methods 2012-10-30 15:49:11 +01:00
Alessandro Ranellucci
44d91774a6 Get rid of useless Slic3r::Fill instances 2012-10-30 15:38:17 +01:00
Alessandro Ranellucci
cec7bf815c Get rid of the ExtrusionLoop objects in concentric filler 2012-10-30 15:29:13 +01:00
Alessandro Ranellucci
20e73face2 Get rid of max_print_dimension in filler objects 2012-10-30 15:09:54 +01:00
Alessandro Ranellucci
6c97e588b1 Don't require the print object in filler objects 2012-10-30 14:34:41 +01:00
Alessandro Ranellucci
5943114574 Only take layer_id instead of layer in filler objects 2012-10-30 14:25:48 +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
610862a97f Use the actual flow spacing for clipping concentric loops 2012-10-30 14:17:30 +01:00
Alessandro Ranellucci
0a5016a509 Cleaner usage of the PI constant 2012-10-30 14:15:48 +01:00
Alessandro Ranellucci
25d88bddff Remove the change_layer method 2012-10-30 14:11:32 +01:00
Alessandro Ranellucci
52ed2c6ea4 Make flow_spacing required for ExtrusionLoop objects too 2012-10-30 14:07:50 +01:00
Alessandro Ranellucci
be7e211bb6 Make flow_spacing required for ExtrusionPath objects 2012-10-30 14:07:01 +01:00
Alessandro Ranellucci
37637c34f5 Refactor shortest_path 2012-10-30 13:59:33 +01:00
Alessandro Ranellucci
4c6fe0b3d4 Fixed regression preventing lift to work correctly 2012-10-30 10:45:55 +01:00
Alessandro Ranellucci
887634e1e2 Use G92 to apply Z offset. #486 2012-10-29 19:54:04 +01:00
Alessandro Ranellucci
709cbc1c15 Fixed regression causing support material generation to fail under threaded perls 2012-10-29 19:38:40 +01:00
Alessandro Ranellucci
df4dcf0534 Move by 30° instead of 45° when completing an external loop. #186 2012-10-29 11:21:41 +01:00
Alessandro Ranellucci
9b94a661d9 Fixed regression causing too much clipping at the endpoints of loops 2012-10-29 11:20:27 +01:00
Alessandro Ranellucci
e9ae62a9d1 New --min-skirt-length option. #269 2012-10-29 11:17:57 +01:00
Alessandro Ranellucci
c25e54a830 Expose perimeter/infill/support material extrusion widths in G-code comments 2012-10-29 00:31:25 +01:00
Alessandro Ranellucci
f2389682b6 Factor out some hard-coded settings 2012-10-29 00:23:33 +01:00
Alessandro Ranellucci
1ecadc10fb Fixed regression causing one perimeter to be generated even when perimeters where set to 0. #759 2012-10-28 19:27:54 +01:00
Alessandro Ranellucci
8da4151c6d Fix regression causing skirt to be printed at Z = 0 after a recent commit 2012-10-28 19:24:24 +01:00
Alessandro Ranellucci
c57e94c065 Experimental feature: make a little move inwards by 45° after finishing the external perimeter and before retracting. #186 2012-10-28 19:15:34 +01:00
Alessandro Ranellucci
ecd054a57c Don't emit T0 at the beginning of the file, so that it's generated automatically just right before starting the print 2012-10-28 17:29:01 +01:00
Alessandro Ranellucci
935173047a Allow [print_center_X] and [print_center_Y] syntax for all coordinates settings (including bed_center etc.) and [temperature_0], [temperature_1] etc. for all index-based settings 2012-10-28 17:23:35 +01:00
Alessandro Ranellucci
ccb49a8439 Do a slightly thinner interface layer at the top of support material structures by taking into account the diameter of bridge extrudates (nophead's idea) 2012-10-28 16:59:20 +01:00
Alessandro Ranellucci
b5bd216f5c Do not combine infill for bottom layer 2012-10-28 14:23:47 +01:00
Alessandro Ranellucci
f35cdef2aa Renamed ExtrusionPath->depth_layers to height 2012-10-28 14:22:51 +01:00
Alessandro Ranellucci
2796041a6c Bugfix: --top-solid-layers was ignored. #769 2012-10-28 12:52:53 +01:00
Alessandro Ranellucci
deea02b444 Descriptive textual feedback for cooling settings 2012-10-28 12:43:41 +01:00
Alessandro Ranellucci
f9b6caaecb Bugfix, last commit was incomplete 2012-10-28 12:22:30 +01:00
Alessandro Ranellucci
a0fe93e8cf Bugfix: sometimes first layer extrusion width was not applied 2012-10-28 10:28:40 +01:00
Alessandro Ranellucci
49916b6178 Revert 2bcac88683 by setting the scale factor manually to 1. #720 2012-10-27 22:09:22 +02:00
Alessandro Ranellucci
d0bee4bf41 Fixed regression in Split. #766 2012-10-27 21:39:57 +02:00
Alessandro Ranellucci
bc9ff848dd Removed unused 'propgrid' import group from Wx. #764 2012-10-27 21:21:18 +02:00
Alessandro Ranellucci
f9e20db156 Update t/dynamic.t 2012-10-27 21:20:32 +02:00
Alessandro Ranellucci
b0f24a2666 Bugfix: unnecessary tool changes were generated when using the same tool for subsequent parts 2012-10-25 18:49:59 +02:00
Alessandro Ranellucci
667d88603e Reorder some options using the more compact layout 2012-10-25 12:37:02 +02:00
Alessandro Ranellucci
cee3864fc9 Independently set number of top/bottom solid layers. #676 2012-10-25 12:21:04 +02:00
Alessandro Ranellucci
bbd7765f40 Refactored the options group building to allow for more flexible layouts 2012-10-25 11:24:56 +02:00
Alessandro Ranellucci
31c2e50fc6 Bugfix: bed temperature wasn't being set after the first layer when first layer bed temperature was set to zero. #760 2012-10-24 22:57:19 +02:00
Alessandro Ranellucci
50f6909475 Don't apply slowdown factor to bridges. #640 2012-10-24 22:55:03 +02:00
Alessandro Ranellucci
392af5542b Show object information when double-clicking it in the plater 2012-10-24 22:44:08 +02:00
Alessandro Ranellucci
304676b6aa Use XML::SAX::ExpatXS if available 2012-10-24 20:36:32 +02:00
Alessandro Ranellucci
3c8ac435ad Remember last used filament presets when using multiple extruders too 2012-10-24 20:24:11 +02:00
Alessandro Ranellucci
355031fe2f Remove unnecessary retractions 2012-10-24 19:38:18 +02:00
Alessandro Ranellucci
44016b38c5 Distribute skirt loops across all extruders 2012-10-24 19:13:40 +02:00
Alessandro Ranellucci
f0d2b0e5ea Avoid overlapping regions (thanks Mike Sheldrake!). #726 2012-10-24 16:46:40 +02:00
Alessandro Ranellucci
1c50c8a401 Merge branch 'dynamic-flow' 2012-10-24 16:19:13 +02:00
Alessandro Ranellucci
6beaf5e597 New faster algorithm for filling gaps, while we work on a new medial axis implementation 2012-10-24 16:17:09 +02:00
Alessandro Ranellucci
1445820673 External perimeter first on bottom layer when brim is enabled. #761 2012-10-24 12:04:44 +02: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
19e77a28a1 Merge branch 'master' into dynamic-flow 2012-10-24 10:55:57 +02:00
Alessandro Ranellucci
28b56ae840 Force unfocusing of all input fields when saving a preset, otherwise the currently focused one might be ignored. #750 #624 2012-10-22 16:03:08 +02:00
Alessandro Ranellucci
c793a2657f Replace Math::ConvexHull with Math::ConvexHull::MonotoneChain. #722 2012-10-22 15:29:54 +02:00
Alessandro Ranellucci
68c3a0dd61 Make arcs.t happy. #721 2012-10-22 14:08:27 +02:00
Alessandro Ranellucci
33b1970b95 Incomplete commit broke the plater on threaded perls 2012-10-22 14:02:58 +02:00
Alessandro Ranellucci
0990a9418c Bugfix: honeycomb infill was overlapping too much with perimeters. #732 2012-10-22 13:38:37 +02:00
Alessandro Ranellucci
3c7785aaf3 Useless extra perimeters were generated sometimes. #444 #732 2012-10-22 13:21:11 +02:00
Alessandro Ranellucci
76f75db055 Always specify tool number in M104/M109 when printing with multiple extruders 2012-10-21 21:44:06 +02:00
Alessandro Ranellucci
4f1b56f004 Fix regression causing the plater to merge all materials into a single one, thus not producing multi-extrusion prints 2012-10-21 20:56:19 +02:00
Alessandro Ranellucci
f5f9574173 Merge pull request #722 from mesheldrake/remove-dups-before-hull
use remove_coinciding_points before convex_hull
2012-10-15 02:49:30 -07:00
Alessandro Ranellucci
149d9e737b Merge pull request #721 from mesheldrake/parallel-degrees-limit
parallel_degrees_limit decreased, 3 to 0.1, #704
2012-10-15 02:48:16 -07:00
Alessandro Ranellucci
50161497f3 Merge pull request #720 from mesheldrake/increase-offset-scale
Increase scale factor for Clipper::offset
2012-10-15 02:47:16 -07:00
Alessandro Ranellucci
6b4f038d17 Update copies number when decreasing parts. #747 2012-10-15 10:59:54 +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
8ac367bfa7 If brim overlaps with skirt, make brim around skirt too instead of just ignoring skirt on first layer 2012-10-14 22:10:49 +02:00
Alessandro Ranellucci
b92642459f Merge branch 'master' into dynamic-flow
Conflicts:
	lib/Slic3r/Flow.pm
	lib/Slic3r/Layer.pm
2012-10-04 15:23:19 +02:00
Alessandro Ranellucci
d1e0bcf113 Bugfix: tool numbers written in G-code were wrong 2012-10-01 18:22:35 +02:00
Alessandro Ranellucci
1a6eaeaa91 Bugfix: split wasn't working properly under threaded perls 2012-10-01 18:12:14 +02:00
Alessandro Ranellucci
2c400ee2b8 Removed useless warning 2012-10-01 16:49:02 +02:00
Alessandro Ranellucci
86e3508402 Add menu item pointing to documentation 2012-09-28 16:58:03 +02:00
Alessandro Ranellucci
22b312395a Fix SVG/DLP support material. #673 2012-09-28 16:32:53 +02:00
Alessandro Ranellucci
c68862582c Fix fatal error on empty layers caused by recent large refactorings 2012-09-28 15:48:32 +02:00
Alessandro Ranellucci
ab7697ec1c New option to force a solid layer every given number of layers. #617 2012-09-28 15:46:29 +02:00
Alessandro Ranellucci
f50b0040ef Bugfix: the grow() method wasn't working properly, causing bad brim/support material interface. #639 2012-09-28 15:27:33 +02:00
Alessandro Ranellucci
9ee9b54c73 Output an error if user tries to use 100% density with a non-solid fill pattern. #691 2012-09-28 14:13:06 +02:00
Alessandro Ranellucci
a49b045ce4 Do not call srand for each layer, to get better randomization of starting points. #694 2012-09-28 14:01:59 +02:00
Mike Sheldrake
4b91496edd use remove_coinciding_points before convex_hull
convex_hull returns polygons with sharp concaves sometimes when
duplicate points are present
2012-09-27 06:47:38 -07:00
Mike Sheldrake
5ee68aa916 $parallel_degrees_limit decreased, 3 to 0.1, #704
Geometry::lines_parallel() test used for collapsing adjacent colinear
lines was too loose in testing for colinearity, because of this constant
setting. Gradualy curving and high-res outer perimiters would
over-simplify into straight lines.
2012-09-27 06:14:54 -07:00
Mike Sheldrake
2bcac88683 Increase scale factor for Clipper::offset
A default scale of 1 was being calculated most of the time. That's too
low to avoid artifacts from offsetting concave curves. Setting scale to
a default of 100000 eliminates artifacts in the test cases in issues
#700, #702 and #703. There is a risk of large point proliferation with
this scale in combination with the JT_ROUND option, but in the four
places where that option is used, scale is already explicitly set to a
safer low value.
2012-09-27 05:50:54 -07:00
Alessandro Ranellucci
fd74577eae Fix typo in previous commit 2012-09-24 21:00:26 +02:00
Alessandro Ranellucci
d8c192ae05 Fix fatal error caused by recent refactorings 2012-09-23 18:07:44 +02:00
Alessandro Ranellucci
1f4706f02f [print_preset] and others were erroneously renamed to [print] etc. #675 2012-09-23 17:40:34 +02:00
Alessandro Ranellucci
77625894ff New command to combine multiple STL files into a single multi-material AMF file 2012-09-23 14:48:58 +02:00
Alessandro Ranellucci
bbe0a45b58 Optimization: cache scaled flow width and spacing 2012-09-23 03:03:08 +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
e2ab340edb Fix positioning and other things 2012-09-22 21:03:57 +02:00
Alessandro Ranellucci
d488afd243 More work (breaks centering and internal surfaces detection) 2012-09-22 19:38:25 +02:00
Alessandro Ranellucci
02356fd613 Large refactoring to allow processing multimaterial files 2012-09-22 19:04:36 +02:00
Alessandro Ranellucci
04be94023b Refactoring: move the 'copies' property to each Print::Object 2012-09-22 16:19:24 +02:00
Alessandro Ranellucci
82ac4722d2 Refactoring, new size_3D function 2012-09-22 16:12:54 +02:00
Alessandro Ranellucci
b5672de3ca Refactoring, new bounding_box_3D function 2012-09-22 16:10:24 +02:00
Alessandro Ranellucci
91e9f651b5 Bugfix: --avoid-crossing-perimeters was crashing when processing empty layers 2012-09-22 15:51:18 +02:00
Alessandro Ranellucci
35e449e891 Make new plater compatible with threaded perls 2012-09-21 17:45:54 +02:00
Alessandro Ranellucci
037be34b7b Bugfix: removed fatal error when generating SVG support material in some circumstances. #673 2012-09-21 16:52:05 +02:00
Alessandro Ranellucci
c6c7dd12da Silently ignore threads > 1 on non-threaded perls 2012-09-21 16:43:46 +02:00
Alessandro Ranellucci
27b71d8885 Little regressions after recent merge 2012-09-21 16:08:22 +02:00
Alessandro Ranellucci
392309a369 Little cleanup 2012-09-21 15:58:44 +02:00
Alessandro Ranellucci
e21fdf0b15 Little cleanup 2012-09-21 15:47:38 +02:00
Alessandro Ranellucci
2f1ae3f112 Restore non-manifold warnings 2012-09-21 15:46:40 +02:00
Alessandro Ranellucci
c95cd5ac38 Merge branch 'master' into avoid-crossing-perimeters 2012-09-21 15:36:45 +02:00
Alessandro Ranellucci
46cbdcdc4e Merge branch 'master' into dynamic-flow 2012-09-21 15:36:33 +02:00
Alessandro Ranellucci
f638558167 Preserve position when splitting objects in plater 2012-09-21 15:35:32 +02:00
Alessandro Ranellucci
e40f32995f Finish GUI decoupling 2012-09-21 15:04:33 +02:00
Alessandro Ranellucci
8382eeef0a Revert "Patch for --gcode-arcs (kindly submitted by Paul Howes)"
This reverts commit f4260ae93d.
2012-09-21 15:04:19 +02:00
Alessandro Ranellucci
f659dcf088 Patch for --gcode-arcs (kindly submitted by Paul Howes) 2012-09-21 15:04:19 +02:00
Alessandro Ranellucci
757515ba17 New [print_preset], [filament_preset] and [printer_preset] variables. #675 2012-09-21 15:04:18 +02:00
Alessandro Ranellucci
4fbb8ffb9d Replace 'scale epsilon' with 'scaled_epsilon' 2012-09-21 15:04:18 +02:00
Alessandro Ranellucci
87912cb3b0 Bugfix: only_retract_when_crossing_perimeters was almost not working. #680 2012-09-21 15:04:18 +02:00
Alessandro Ranellucci
f314cedd8f Bugfix: extrusion width setting for support material was only affecting the path spacing but not the actual flow. #666 2012-09-21 15:04:17 +02:00
Alessandro Ranellucci
e89f64e9d3 More unfinished work 2012-09-21 15:04:17 +02:00
Alessandro Ranellucci
6adf98edaf Fix regression causing SVG/DLP support material to crash the application. #668 2012-09-21 15:04:16 +02:00
Alessandro Ranellucci
37ae2e1e2d Use support material extruder for brim. #653 2012-09-21 15:04:16 +02:00
Alessandro Ranellucci
3b38e392ad Consider single walls as external perimeters. #661 2012-09-21 15:04:15 +02:00
Alessandro Ranellucci
47c5d410ea Remove the initial retraction compensation. Not only it is not very good for multi-head setups, but it also caused wrong first layer Z when lift was enabled. #655 2012-09-21 15:04:15 +02:00
Alessandro Ranellucci
202bfa91c8 Adjust M-codes for temperature handling for Teacup. #539 2012-09-21 15:04:12 +02:00
Alessandro Ranellucci
94a096f1d2 Support legacy config files not containing first_layer_height #631 2012-09-21 15:04:11 +02:00
Alessandro Ranellucci
1cedb00f20 Merge branch 'master' into dynamic-flow
Conflicts:
	lib/Slic3r/ExPolygon.pm
2012-09-12 16:05:06 +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
2a51cad0c3 Revert "Patch for --gcode-arcs (kindly submitted by Paul Howes)"
This reverts commit f4260ae93d.
2012-09-12 15:58:01 +02:00
Alessandro Ranellucci
f4260ae93d Patch for --gcode-arcs (kindly submitted by Paul Howes) 2012-09-12 15:53:24 +02:00
Alessandro Ranellucci
7a5071f66c New [print_preset], [filament_preset] and [printer_preset] variables. #675 2012-09-12 15:29:44 +02:00
Alessandro Ranellucci
e0d5f4e528 Replace 'scale epsilon' with 'scaled_epsilon' 2012-09-12 15:22:43 +02:00
Alessandro Ranellucci
9934f8957f Bugfix: only_retract_when_crossing_perimeters was almost not working. #680 2012-09-12 15:20:37 +02:00
Alessandro Ranellucci
bb5f00cf0c Bugfix: extrusion width setting for support material was only affecting the path spacing but not the actual flow. #666 2012-09-12 12:13:43 +02:00
Alessandro Ranellucci
628cc52338 Fix regression causing SVG/DLP support material to crash the application. #668 2012-09-06 11:28:24 +02:00
Alessandro Ranellucci
f41a6af343 Use support material extruder for brim. #653 2012-09-06 11:01:44 +02:00
Alessandro Ranellucci
1053947c19 Consider single walls as external perimeters. #661 2012-09-06 10:56:42 +02:00
Alessandro Ranellucci
e0a96c00b3 Remove the initial retraction compensation. Not only it is not very good for multi-head setups, but it also caused wrong first layer Z when lift was enabled. #655 2012-09-06 10:44:48 +02:00
Alessandro Ranellucci
5017f17171 Adjust M-codes for temperature handling for Teacup. #539 2012-08-30 23:13:28 +02:00
Alessandro Ranellucci
b37af86bef Support legacy config files not containing first_layer_height #631 2012-08-30 23:04:56 +02:00
Alessandro Ranellucci
191de5d078 Unfinished work for decoupling GUI from the Print object (goal = more speed for manipulation, less memory usage) 2012-08-29 19:37:27 +02:00
Alessandro Ranellucci
f29d455319 Refactor the AMF parser so that it popolates a Model object directly. Also read constellations 2012-08-29 18:23:34 +02:00
Alessandro Ranellucci
23f6842bd4 Export plates as AMF constellations 2012-08-29 17:12:32 +02:00
Alessandro Ranellucci
f90520ed06 Refactoring: new Slic3r::Model class to represent files 2012-08-29 17:12:32 +02:00
Alessandro Ranellucci
9bd1b0f6ba Revert "Refactoring: initialize all layers at once and avoid duplication of slicing height math". #637
This reverts commit 08270022dd.
2012-08-26 17:47:00 +02:00
Alessandro Ranellucci
08270022dd Refactoring: initialize all layers at once and avoid duplication of slicing height math 2012-08-25 20:40:44 +02:00
Alessandro Ranellucci
a1a4d97f9f Remove useless subroutines 2012-08-25 20:14:52 +02:00
Alessandro Ranellucci
a1ac866b84 Refactoring: turn x_length and y_length in size 2012-08-25 20:14:01 +02:00
Alessandro Ranellucci
896641cb7e Fixed regression causing some bridges not to be detected correctly. #629 2012-08-25 20:04:29 +02:00
Alessandro Ranellucci
fe6c8fabdb Make Josef Prusa and Petr Ledvinka happy while we figure out how to handle localized Windows file paths 2012-08-25 19:06:14 +02:00
Alessandro Ranellucci
873ea93832 Fix missing module inclusion preventing the recently introduced option from working 2012-08-25 17:18:12 +02:00
Alessandro Ranellucci
0c22250740 New option to disable retraction when moving between infill paths inside the same island. #29 2012-08-25 16:30:11 +02:00
Alessandro Ranellucci
af1b64a086 Added unit testing to prevent regression about disconnected infill paths 2012-08-25 14:59:34 +02:00
Alessandro Ranellucci
d061534b83 Merge branch 'master' into avoid-crossing-perimeters
Conflicts:
	README.markdown
	lib/Slic3r/ExPolygon.pm
	slic3r.pl
2012-08-25 14:26:32 +02:00
Alessandro Ranellucci
0aa224ffad Dynamic extrusion width for better gap filling 2012-08-25 14:23:46 +02:00
Alessandro Ranellucci
65b11fa850 Minor refactoring for better readability of perimeter generation logic 2012-08-24 21:58:51 +02:00
Alessandro Ranellucci
92518d28fc New option to configure the threshold for enforcing solid infill. #224 2012-08-24 19:38:36 +02:00
Alessandro Ranellucci
ba58e0733f Avoid backwards moves when doing honeycomb infill. #492 2012-08-24 19:19:45 +02:00
Alessandro Ranellucci
5281b101f9 Some infill paths were still disconnected, causing unnecessary retractions 2012-08-24 18:59:23 +02:00
Alessandro Ranellucci
56a118986f External motion was crossing still too much 2012-08-23 21:19:10 +02:00
Alessandro Ranellucci
c98e9515ed Better implementation of the external motion planner 2012-08-23 21:10:04 +02:00
Alessandro Ranellucci
27090f83bd Make the motionplanner work again after recent changes to approximation 2012-08-23 17:02:50 +02:00
Alessandro Ranellucci
ee41345ab0 Remove useless Point->id method 2012-08-23 15:46:55 +02:00
Alessandro Ranellucci
0eadc5adba Manual rebase of the avoid_crossing_perimeters feature 2012-08-23 15:42:58 +02:00
Alessandro Ranellucci
d278998f11 Accept newline as separator for post-processing scripts in GUI. #615 2012-08-22 21:27:49 +02:00
Alessandro Ranellucci
b35c41c1a3 Bugfix: retraction was still not working correctly at tool change 2012-08-22 20:31:03 +02:00
Alessandro Ranellucci
edfdf236da Fix for the recent commit about the new retraction settings 2012-08-22 19:47:59 +02:00
Alessandro Ranellucci
4bddb66513 Always emit T0 at the beginning of a multi-extruder print 2012-08-22 19:20:34 +02:00
Alessandro Ranellucci
9e682924c7 New separate options for retraction length to be used when switching tools 2012-08-22 19:11:45 +02:00
Alessandro Ranellucci
075213c731 Refactoring: make 'retracted' an attribute of the Extruder object 2012-08-22 18:57:03 +02:00
Alessandro Ranellucci
97c3756034 Don't force automatic unretraction after tool change 2012-08-22 18:06:50 +02:00
Alessandro Ranellucci
3c2464abf9 Bugfix: crazy temperatures were written when using sequential printing. #625 2012-08-22 17:58:38 +02:00
Alessandro Ranellucci
26e033a30c Bugfix: brim was positioned incorrectly if no skirt was enabled. #627 2012-08-19 20:30:17 +02:00
Nicolas Dandrimont
a147530d2a Explicitly avoid passing arguments to remove when called from the event handler
Wx passes some objects to the callbacks, and we want to ignore those.
2012-08-11 16:05:17 +02:00
Nicolas Dandrimont
7b0d4cb4e1 Revert "Dereference the Wx object id when removing an object in the plater."
This reverts commit 4979029cd2.
2012-08-11 16:00:41 +02:00
Nicolas Dandrimont
4979029cd2 Dereference the Wx object id when removing an object in the plater. 2012-08-11 15:49:06 +02:00
Alessandro Ranellucci
624e16b7e2 Unexpected results splitting objects with threaded perls. #610 2012-08-10 16:05:16 +02:00
Henrik Brix Andersen
2576e3b00a Remove XXX debug output 2012-08-09 23:37:15 +02:00
Alessandro Ranellucci
8289692160 Handle configuration files saved while there was no extruder_offset control for the first extruder 2012-08-09 19:57:49 +02:00
Alessandro Ranellucci
d02012e4a3 Accept multiple --load arguments for GUI too 2012-08-09 00:59:41 +02:00
Alessandro Ranellucci
db8bb8c3d8 Revert "Hide extruder offset settings for the primary extruder"
This reverts commit 713d87b4c6.
2012-08-09 00:51:53 +02:00
Alessandro Ranellucci
2bf219a637 Bugfix: random failure to load presets. #600 2012-08-09 00:41:03 +02:00
Alessandro Ranellucci
927b7ce937 Bugfix: skirt height and other options shouldn't be limited to 100. #597 2012-08-08 23:51:40 +02:00
Alessandro Ranellucci
88cbae0d48 Bugfix: saving a printer preset with less extruders than it had resulted in the same number of extruders as before 2012-08-08 22:52:26 +02:00
Alessandro Ranellucci
713d87b4c6 Hide extruder offset settings for the primary extruder 2012-08-08 22:14:05 +02:00
Alessandro Ranellucci
9ca21c835c Merge branch 'per-extruder-retraction-settings'
Conflicts:
	lib/Slic3r/Config.pm
	lib/Slic3r/GUI/Tab.pm
2012-08-08 22:06:47 +02:00
Henrik Brix Andersen
e2b2e369f8 Disable using ENTER key for accessing "Export G-code..." button. 2012-08-08 21:45:17 +02:00
Alessandro Ranellucci
4fcecf5ef6 Bugfix: when an external config was selected in any section, exported settings didn't reflect other sections properly 2012-08-08 19:36:34 +02:00
Alessandro Ranellucci
2f2bc8210a Allow exporting to .g files too 2012-08-08 19:04:36 +02:00
Alessandro Ranellucci
3888727b96 Bugfix: legacy config files with empty temperature and/or first_layer_temperature caused crash 2012-08-08 16:25:13 +02:00
Alessandro Ranellucci
b048f51edd Incomplete label for support material extruder option. #593 2012-08-08 15:21:02 +02:00
Henrik Brix Andersen
0f327ef912 Add missing use File::Spec 2012-08-07 23:37:16 +02:00
Alessandro Ranellucci
c7858912d8 Bugfix: some paths were not considered when generating brim 2012-08-07 22:04:58 +02:00
Alessandro Ranellucci
866b09f3f9 New --extruder-offset option 2012-08-07 21:39:45 +02:00
Alessandro Ranellucci
a2c28fd6da Move retraction settings to a temporary page until we merge the per-extruder-retraction-settings branch 2012-08-07 21:11:58 +02:00
Alessandro Ranellucci
cf01c142de Make retraction configurable for each extruder 2012-08-07 21:08:56 +02:00
Henrik Brix Andersen
640c07a233 Revert 4099c3a8cf
Presenting detailed statistics about a given slice needs rethinking, as this solution will not scale.
2012-08-07 21:00:03 +02:00
Alessandro Ranellucci
63e77fcfd8 Refactor extruder settings 2012-08-07 20:50:54 +02:00
Alessandro Ranellucci
106c8fe46f Minor reordering of infill options in GUI; also hide the entire staticbox if threads are not available 2012-08-07 20:22:26 +02:00
Alessandro Ranellucci
2548d5b993 Expose all multi-extruder settings to the GUI 2012-08-07 20:14:28 +02:00
Alessandro Ranellucci
793301d319 Allow to select multiple filaments in GUI when multiple extruders are configured 2012-08-07 18:44:47 +02:00
Alessandro Ranellucci
b7d8444ac8 Take support material into account when generating brim. #490 #501 #567 2012-08-06 20:54:49 +02:00
Alessandro Ranellucci
9bfa4118a1 Bugfix: brim and skirt collision was not precisely detected when they had similar offsets. #548 2012-08-06 20:27:10 +02:00
Alessandro Ranellucci
2616c24ffc Bugfix: plater wasn't initialized with last settings. #573 2012-08-06 19:19:22 +02:00
QuantumConcepts
6bcbc743dd Fixed #586. 2012-08-06 08:23:00 -04:00
Alessandro Ranellucci
a8e9b6926a Bugfix: each tab was loading too much from external config files 2012-08-06 13:03:44 +02:00
Henrik Brix Andersen
49b048c61d Include Wx version number in debug output 2012-08-04 22:19:42 +02:00
Henrik Brix Andersen
b1805ed7f3 Align controls and their associated labels vertically centered. 2012-08-02 23:44:42 +02:00
Henrik Brix Andersen
5518ac9fa6 Add small border on non-wxMAC platforms. Needs testing with wxWidgets 2.9.x on wxMSW + wxGTK. 2012-08-02 23:19:04 +02:00
Henrik Brix Andersen
c1e2bc5bd7 Make the wizard a tiny bit wider to fit the gcode_flavor drop-down under OS X. 2012-08-02 23:08:40 +02:00
Henrik Brix Andersen
ed89038f0b Add work-around for "Gtk-WARNING **: gtk_widget_size_allocate(): attempt to allocate widget with width -5 and height 17". #558 2012-08-02 23:07:42 +02:00
Henrik Brix Andersen
794a090892 Pass explicit tool IDs to ::EnableTool() 2012-08-02 21:49:26 +02:00
Henrik Brix Andersen
69fa308f55 Allocate wxWidget identifiers dynamically to avoid potential conflics. 2012-08-02 21:11:36 +02:00
Henrik Brix Andersen
0e620f3ad2 Make --output accept directories. #535 2012-08-01 17:12:16 +02:00
Henrik Brix Andersen
d1b8f37dda Call print->config before print->expanded_output_filepath. #573 2012-08-01 16:06:03 +02:00
Henrik Brix Andersen
65d6eb551a Try harder to attract user attention on wxMAC. #575 2012-08-01 13:59:43 +02:00
Henrik Brix Andersen
83fccf0875 Fix auto-arrange of objects 2012-07-30 19:30:41 +02:00
Henrik Brix Andersen
0aae15e2a8 Persist last skein directory and last config directory used across application restarts. 2012-07-30 12:08:28 +02:00
Alessandro Ranellucci
0e39a89d01 Fixed regression preventing split from working. #395 2012-07-30 10:00:25 +02:00
Sam Wong
4099c3a8cf #568: Show filament needed statistics in the GUI message box. 2012-07-30 01:24:51 +08:00
Alessandro Ranellucci
4c33eabc6e Slicing from plater was still using the default options 2012-07-29 17:02:46 +02:00
Alessandro Ranellucci
9933132ae6 Bugfix: recent refactoring broke slicing from plater on multi-threaded perls 2012-07-29 15:51:26 +02:00
Alessandro Ranellucci
92754d7cd4 Fix multi-extruder options in GUI 2012-07-28 11:53:10 +02:00
Alessandro Ranellucci
87934a972c Port recent global changes to the wizard 2012-07-28 11:34:12 +02:00
Alessandro Ranellucci
c763f5fc81 Bugfix: fatal error with thin loops after recent refactoring. #562 2012-07-28 11:06:27 +02:00
Henrik Brix Andersen
57b134cc9c Handle recursive ratio_over options correctly. 2012-07-27 22:56:35 +02:00
Henrik Brix Andersen
d68ab84faa Fix quick slicing 2012-07-27 22:03:48 +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
Henrik Brix Andersen
f0579e59bd Include timestamp in .ini files 2012-07-27 14:33:14 +02:00
Henrik Brix Andersen
9f719d42bc Include preset name in confirmation dialog 2012-07-27 14:11:04 +02:00
Henrik Brix Andersen
9e1308c03f Ask for confirmation when deselecting a dirty preset. 2012-07-27 13:57:58 +02:00
Henrik Brix Andersen
848784ad95 Clear dirty when deleting preset. 2012-07-27 13:56:52 +02:00
Henrik Brix Andersen
40f1176346 Be careful not to change the current selection when working around http://trac.wxwidgets.org/ticket/13769 2012-07-27 13:54:45 +02:00
Henrik Brix Andersen
1cc0a79188 Allow the list and buttons to expand upon window resize 2012-07-26 16:50:57 +02:00
Henrik Brix Andersen
7b06255dca Center preset buttons 2012-07-26 16:48:28 +02:00
Henrik Brix Andersen
63e8299f14 Eliminate single-item wxSizer. 2012-07-26 16:41:22 +02:00
Henrik Brix Andersen
85603c1981 Highlight the dragged object. 2012-07-25 10:06:45 +02:00
Henrik Brix Andersen
affaee415b Reset mouse cursor on button up event. 2012-07-25 00:51:41 +02:00
Henrik Brix Andersen
5502537065 Change cursor when hoovering over a movable object. 2012-07-25 00:15:32 +02:00
Henrik Brix Andersen
e02ee17247 Respect multiline option flag. #559 2012-07-24 20:16:34 +02:00
Henrik Brix Andersen
0e6d6a9695 Force sane TAB key order on buttons in GridSizer. 2012-07-24 18:21:02 +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
09a222f8b2 Reshuffle code a bit to preserve TAB key order between toolbar and listctrl. 2012-07-24 14:42:38 +02:00
Henrik Brix Andersen
44f3b7d2b5 Allow TAB key navigation of controls. 2012-07-24 14:28:21 +02:00
Henrik Brix Andersen
0b0e531661 Use more generic EVT_KEY_DOWN(). 2012-07-24 14:17:10 +02:00
Henrik Brix Andersen
4bee713579 Add menuitems with keyboard shortcuts to quickly navigate between tabs. 2012-07-24 12:59:02 +02:00
Henrik Brix Andersen
4dc41d2ca3 Intercept TAB key events in the wxTreeCtrl and generate a wxNavigationKeyEvent. 2012-07-24 12:42:58 +02:00
Henrik Brix Andersen
69e075df82 Hidden Sizer items does not take up space, simply show/hide pages instead of removing/adding them. 2012-07-24 12:41:51 +02:00
Henrik Brix Andersen
642bb336eb Add the page before showing it. 2012-07-24 00:34:57 +02:00
Henrik Brix Andersen
37667d87ce Use Wx::Sizer::Detach() instead of Wx::Sizer::Remove() 2012-07-24 00:34:07 +02:00
Alessandro Ranellucci
ea604384dd Typo 2012-07-23 17:56:20 +02:00
Alessandro Ranellucci
ba475cae45 Fixed fatal error introduced after recent refactoring 2012-07-23 17:52:02 +02:00
Henrik Brix Andersen
6f6fb22657 Add menu item hints 2012-07-23 16:31:16 +02:00
Henrik Brix Andersen
ab9ffe9c19 Expose --external-perimeter-speed in the GUI. #556 2012-07-23 09:43:59 +02:00
Alessandro Ranellucci
67b415a2b3 Remove almost duplicated logic for small infill regions detection 2012-07-22 21:06:19 +02:00
Alessandro Ranellucci
144a704e3b Remove all id() and ordered_id() methods 2012-07-22 21:00:02 +02:00
Alessandro Ranellucci
1d04e15b63 Refactor/clean up. Merge remove_small_surfaces() into prepare_fill_surfaces(), rename infill_every_layers() to combine_infill(), remove $layer->fill_boundaries, initialize layer properties explicitely for clarity. 2012-07-22 21:00:02 +02:00
Henrik Brix Andersen
a5d683a9b9 Retire unused class variable 'fields'. 2012-07-22 15:23:42 +02:00
Henrik Brix Andersen
9486a629b3 Fix speling. 2012-07-22 15:06:56 +02:00
Alessandro Ranellucci
3edf42e98e Little workflow simplification 2012-07-21 15:53:38 +02:00
Alessandro Ranellucci
c7bc9bed46 Workaround for a perl 5.10 bug about leaked scalars. #503 2012-07-21 14:45:45 +02:00
Alessandro Ranellucci
f899deb6b6 Prevent internal infill at all when fill density is set to zero. #545 2012-07-21 14:41:21 +02:00
Alessandro Ranellucci
1fdbd2c0e1 Suggest repair in non-manifold warning 2012-07-21 12:07:02 +02:00
Alessandro Ranellucci
bce2663ed8 Restore thin walls and thin fills after last commit 2012-07-20 15:02:25 +02:00
Alessandro Ranellucci
e71472e5d7 Remove debugging statements 2012-07-20 14:41:27 +02:00
Alessandro Ranellucci
1697cb24a6 Memory optimization and code cleanup. Don't keep deserialized paths 2012-07-20 14:39:56 +02:00
Henrik Brix Andersen
52fb02f29d Turn nozzle count printf into debugf statement 2012-07-19 23:31:47 +02:00
Henrik Brix Andersen
35e6420ff5 Make the configuration wizard work on the first extruder. 2012-07-19 22:56:38 +02:00
Alessandro Ranellucci
30a2213fd9 Some multi-extruder options in GUI 2012-07-18 20:44:36 +02:00
Henrik Brix Andersen
9137a6b41e Queue a repaint when changing options page, fixes repaint issue on wxMSW. 2012-07-18 19:19:07 +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
b209eab712 Bugfix: the delete button was deleting the wrong preset 2012-07-18 16:17:23 +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
2d17a94a38 Prevent the left treectrl to grow if preset names are too long 2012-07-18 12:00:19 +02:00
Alessandro Ranellucci
42034ecb40 Autosize the main frame to workaround inconsistencies among wxGTK setups 2012-07-18 11:55:26 +02:00
Henrik Brix Andersen
fd88c164d2 Move Repeat Last Quick Slice below other Quick Slice items since it works for both. 2012-07-17 23:54:30 +02:00
Henrik Brix Andersen
a8d5ee3a74 Only enable Repeat Last Quick Slice menu item after the first quick slice. 2012-07-17 23:53:16 +02:00
Henrik Brix Andersen
c25a31ef98 Avoid SVG slicing interfering with repeating last quick slice. 2012-07-17 23:51:57 +02:00
Henrik Brix Andersen
bd16366d62 Default to "No" when prompting about discarding unsaved changes. 2012-07-17 23:24:21 +02:00
Henrik Brix Andersen
82cfc7c3d6 Check for unsaved presets before interactively loading an existing config file. 2012-07-17 23:16:58 +02:00
Henrik Brix Andersen
de47f5fe72 Use default desktop notification timeout. 2012-07-17 15:38:53 +02:00
Ryan Voots
19f4036d8a Time here is in milliseconds, setting it to 1500 to make it stay for at least 1.5 seconds. 2012-07-16 19:04:25 -04:00
Henrik Brix Andersen
3690b0798e Use Net::DBus instead of Gtk2::Notify due to less dependencies; recommended by @beanz. 2012-07-16 23:43:09 +02:00
Henrik Brix Andersen
095607a166 Remove excessive line breaks 2012-07-16 23:09:55 +02:00
Henrik Brix Andersen
99845955b3 Add support for libnotify notifications. 2012-07-16 22:37:31 +02:00
Henrik Brix Andersen
5d2fd17715 Use constants for menu item IDs. 2012-07-16 20:57:10 +02:00
Henrik Brix Andersen
e80d2813ed Add keyboard shortcut for SVG slicing. 2012-07-16 19:23:51 +02:00
Henrik Brix Andersen
225414724c Add keyboard accelerators to menus. 2012-07-16 19:13:35 +02:00
Henrik Brix Andersen
a6da019fc6 Adhere to various human interface guidelines. 2012-07-16 18:34:44 +02:00
Henrik Brix Andersen
fda21bd6f2 Only set $last_skein_dir from Plater, not $last_skein_file, to avoid interfering with Quick Slice. 2012-07-16 00:28:15 +02:00
Henrik Brix Andersen
b24e0370dd Remove unused argument. 2012-07-15 23:59:50 +02:00
Henrik Brix Andersen
da7a668c94 Remove confirmation dialog on plate slicing done, request user attention instead. #537 2012-07-15 23:57:31 +02:00
Henrik Brix Andersen
a2a35f47f6 Convert Slic3r::GUI::notify() from class method to instance method. 2012-07-15 23:36:18 +02:00
Henrik Brix Andersen
9f3031a069 Remove Quick Slice button, move update text to statusbar. 2012-07-15 23:06:07 +02:00
Henrik Brix Andersen
102aea4531 Sync message dialog title with SkeinPanel.pm changes. 2012-07-15 22:53:32 +02:00
Henrik Brix Andersen
c35b57fb0b Add spacer for correctly aligning top text under wxGTK. 2012-07-15 22:44:52 +02:00
Henrik Brix Andersen
e01b20ec8e Add shortcuts keys for often used menu items. 2012-07-15 22:38:58 +02:00
Henrik Brix Andersen
5ef495a601 Improve repeated quick slice menu item text 2012-07-15 22:28:05 +02:00
Henrik Brix Andersen
314772b314 Improve message dialog texts a bit. 2012-07-15 22:25:04 +02:00
Henrik Brix Andersen
8042d5d701 Add borders to toolbar and list view. 2012-07-15 22:14:34 +02:00
Henrik Brix Andersen
0ab7e7ad7f Show icons above text in toolbar. 2012-07-15 20:11:49 +02:00
Henrik Brix Andersen
bd77c33919 Add sunken border to tree controls. 2012-07-15 20:05:57 +02:00
Alessandro Ranellucci
1c6789e042 Remove duplicate_mode from options list 2012-07-15 19:36:56 +02:00
Alessandro Ranellucci
23fd8de1f5 Warn user if supplied preset name is not valid 2012-07-15 18:55:01 +02:00
Alessandro Ranellucci
b37a77ee63 Apply command line options to GUI 2012-07-15 18:37:00 +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
4a94c64f7d Silence warning by importing Wx::Print before Wx::Html 2012-07-14 11:58:58 +02:00
Henrik Brix Andersen
57316a4ffa Add custom about dialog. 2012-07-13 23:46:39 +02:00
Alessandro Ranellucci
e703e78504 A typo caused no newline after Tn. #530 2012-07-11 21:48:30 +02:00
Henrik Brix Andersen
500e44f8ea Reposition of Slic3r::GUI::ProgressStatusBar fields are only needed in ::OnSize() 2012-07-11 16:55:47 +02:00
Henrik Brix Andersen
5e5dc02016 Add menu item shortcut for http://slic3r.org/ 2012-07-11 16:31:17 +02:00
Henrik Brix Andersen
772ee033e0 Remove dead code. 2012-07-10 23:17:03 +02:00
Henrik Brix Andersen
025c3a1b07 Fix statusbar cancel button size on wxGTK. #431 2012-07-10 23:09:11 +02:00
Alessandro Ranellucci
079f6072a6 Use M109 P1 for Teacup 2012-07-10 19:31:09 +02:00
Henrik Brix Andersen
c144afe52b Allow specifying --first-layer-height without leading zero. #518 2012-07-08 23:02:40 +02:00
Henrik Brix Andersen
37a4967883 Remove dead code. 2012-07-08 22:43:52 +02:00
Henrik Brix Andersen
023e7254c7 Make reports of time spent on slicing more user-friendly. 2012-07-08 22:16:46 +02:00
Henrik Brix Andersen
cd7ea418e2 Fix background logo on wxMSW.
Wx::StaticText + Wx::StaticBitmap does not support transparent backgrounds on wxMSW; fixed by using a custom paint routine instead.
2012-07-08 19:41:13 +02:00
Henrik Brix Andersen
0266729635 Merge branch 'master' into new-flow 2012-07-06 22:10:47 +02:00
Henrik Brix Andersen
9f4444a7d4 Add missing sprintf spotted by olasd
Fixes 3c00573805
2012-07-06 22:09:17 +02:00
Alessandro Ranellucci
4f6934bab8 Merge branch 'master' into new-flow 2012-07-06 20:06:09 +02:00
Alessandro Ranellucci
3c00573805 Reset E and compensate retraction after changing extruder 2012-07-06 19:57:58 +02:00
Alessandro Ranellucci
96574e601f Infill flow wasn't adjusted for non-solid surfaces 2012-07-05 10:34:02 +02:00
Alessandro Ranellucci
7656167a0a Infill flow wasn't adjusted for non-solid surfaces 2012-07-05 10:32:29 +02:00
Alessandro Ranellucci
3714fbe0f9 Fixed regression causing random extrudates outside the object perimeter 2012-07-04 10:35:42 +02:00
Alessandro Ranellucci
e4294cffce Fixed regression causing random extrudates outside the object perimeter 2012-07-04 10:35:03 +02:00
Alessandro Ranellucci
9e77e6e8b6 Removed comment about the shortest path search for honeycomb not being useful: it is. #512 2012-07-04 10:02:45 +02:00
Alessandro Ranellucci
77123ada7c New spacing math. Speed optimizations 2012-07-04 09:33:33 +02:00
Alessandro Ranellucci
dd37867324 Bugfix: wrong spacing was calculated 2012-07-04 09:33:33 +02:00
Henrik Brix Andersen
0982203f76 Fix configuration wizard background under wxGTK 2012-07-04 00:38:23 +02:00
Henrik Brix Andersen
a5c772a488 Add semi-transparent Slic3r icon as backdrop for the configuration wizard 2012-07-04 00:03:05 +02:00
Alessandro Ranellucci
566a0456ca Fixed regression causing objects to be 0.1mm larger. #495 #507 2012-07-03 20:34:19 +02:00
Alessandro Ranellucci
5a8c4bf1bf Move Load Config... and Export Config... to the File menu 2012-07-03 19:16:45 +02:00
Henrik Brix Andersen
3b873ab493 Merge branch 'wizard' into new-gui 2012-07-03 18:25:32 +02:00
Henrik Brix Andersen
3fa58cf85b Add a friendly index 2012-07-03 17:21:32 +02:00
Henrik Brix Andersen
92ec70c860 Use wxDefaultPosition and wxDefaultSize to improve readability 2012-07-03 01:20:30 +02:00
Henrik Brix Andersen
e8a20eed6a Use wxDefaultSize instead of [-1, -1] 2012-07-03 00:42:06 +02:00
Mark Hindess
35ecd65e77 Implement nearest point index and split at index to avoid search for point. 2012-07-02 20:26:56 +01:00
Mark Hindess
35fda7de23 Revert "split_at_first_point needn't call deserialize as split_at calls it."
This reverts commit a6d8d6473c.
2012-07-02 16:57:29 +01:00
Mark Hindess
60ca76ff05 Oops. Somehow I missed this when doing interactive add. 2012-07-01 22:35:52 +00:00
Mark Hindess
ca78bbd88a Use Slic3r::Geometry polyline_lines rather than duplicate implementation.
If it is good enough for polygons, it should be good enough for polylines.
2012-07-01 23:15:17 +01:00
Mark Hindess
b11778a85f polygon_lines returns array of Slic3r::Line objects so bless is redundant. 2012-07-01 23:14:04 +01:00
Mark Hindess
a6d8d6473c split_at_first_point needn't call deserialize as split_at calls it. 2012-07-01 22:52:13 +01:00
Henrik Brix Andersen
cd7661aa2a Use proper ellipsis for all GUI '...' strings 2012-07-01 23:29:56 +02:00
Henrik Brix Andersen
a4219ba352 Sort imported events alphabetically 2012-07-01 19:35:48 +02:00
Henrik Brix Andersen
7746040af5 Clean up Wx imports 2012-07-01 19:24:06 +02:00
Alessandro Ranellucci
641c2a241b Write Slic3r version in config files 2012-07-01 18:53:01 +02:00
Alessandro Ranellucci
c4b9a6cf61 Bugfix: flow wasn't adjusted for perimeters when a custom perimeters extrusion width was applied 2012-07-01 18:13:48 +02:00
Mark Hindess
07f2dab5f6 Fix perimeters_* options to be singular to be consistent. 2012-06-30 23:18:15 +01:00
Henrik Brix Andersen
bfe7108cea Provide instructions for loading an existing configuration instead of using the wizard 2012-07-01 00:17:48 +02:00
Henrik Brix Andersen
8f0aab3520 Restore old configuration if configuration wizrd is cancelled 2012-07-01 00:10:48 +02:00
Henrik Brix Andersen
bb193c659c Start configuration wizard from sane default settings 2012-06-30 23:56:11 +02:00
Henrik Brix Andersen
e656c30d4f Clean up imports 2012-06-30 23:30:52 +02:00
Henrik Brix Andersen
757da9d39d Clean up imports 2012-06-30 23:28:07 +02:00
Henrik Brix Andersen
d90e82faa3 Check for unsaved changes before running configuration wizard 2012-06-30 23:00:05 +02:00
Henrik Brix Andersen
df658eb636 Rename SkeinPanel::on_close() to make it more generice 2012-06-30 22:57:30 +02:00
Henrik Brix Andersen
a0f8078ee1 Warn on dirty default presets as well 2012-06-30 22:34:13 +02:00
Alessandro Ranellucci
cbb111ee64 Fix for incomplete commit causing thin gaps to throw an error 2012-06-30 17:23:55 +02:00
Alessandro Ranellucci
b9008a99f9 Fill the gaps while doing normal infill to avoid extra travel 2012-06-30 16:33:01 +02:00