Commit Graph

1074 Commits

Author SHA1 Message Date
bubnikv
d6b53d18b8 Optimized and improved rectilinear fill. 2016-04-13 20:46:45 +02:00
bubnikv
f767ce816b Optimized and improved rectilinear fill. 2016-04-13 20:45:44 +02:00
Joseph Lenox
510ca9f9e2 Merge pull request #3303 from hyperair/fix-cooldown
Changes to properly detect extrusion moves for "layer cooldown" slowdowns and properly calculate time required to complete moves.
2016-04-12 12:50:43 -05:00
Chow Loong Jin
3d73fbf5fd Use float for elapsed_time
When accumulating elapsed_time from many moves that take less than 1
second, elapsed_time does not get incremented because (unsigned int)0.9
= 0.
2016-04-13 01:13:42 +08:00
Chow Loong Jin
4c622c504f Account for travel moves in elapsed_time 2016-04-13 01:13:39 +08:00
Alessandro Ranellucci
a54edf8fbc Support static linking of the Boost libs 2016-04-11 22:14:12 +02:00
bubnikv
3b81bf0e33 Remove some debugging info. 2016-04-11 17:48:27 +02:00
bubnikv
3ba625da22 Revert incorrect checkins. 2016-04-11 17:34:15 +02:00
bubnikv
ed83ff37f8 Simulation of extrusion in a plane, useful for finding out under / over-extruions. 2016-04-11 17:10:13 +02:00
bubnikv
9716ee8eca Interface to a filler, ported from Perl to C++. 2016-04-11 17:09:15 +02:00
bubnikv
be3e4caf1d Fills were reimplemented in C++.
While reimplementing the FillPlanePath code, the octagon infill was fixed to extrude the right amount of material.
2016-04-11 17:08:30 +02:00
bubnikv
7da68c91a5 Vojtech likes to use Sublime on Windows to get the wheels rolling. 2016-04-11 17:05:58 +02:00
Alessandro Ranellucci
f66585c250 Fixed compilation on OS X 2016-04-11 12:04:54 +02:00
bubnikv
d392858ee3 The chaining and leftmost_point methods were rewritten as static methods, so they may be called on Polylines without having to convert to PolylineCollection first. 2016-04-10 19:32:39 +02:00
bubnikv
6c5c9eddba Fixed a typo when SLIC3R_DEBUG is active. 2016-04-10 19:13:08 +02:00
bubnikv
bcfbe02c8d New method to rotate only polygons, not translate.
New free function to_polygons. Whithout this function one needs to construct the ExPolygonCollection, which means a deep copy.
2016-04-10 19:12:32 +02:00
bubnikv
023310882f Added a macro SLIC3R_CPPVER to indicate the C++ language version supported by the compiler. 2016-04-10 19:07:34 +02:00
bubnikv
7d54e28e30 Added optimized methods for point and polyline rotation.
Existing methods for rotation were optimized by calculating the sin/cos values once only.
Added an operator- for points.
2016-04-10 19:06:46 +02:00
bubnikv
c8ff517389 New constructors for the bounding box with min/max points were added.
empty(bbox) function template was added.
2016-04-10 19:02:00 +02:00
bubnikv
33ddb13e5d Use CLIPPER_OFFSET_SCALE instead of a numeric value. 2016-04-10 18:58:12 +02:00
Chow Loong Jin
2e2e4e68d3 Fix layer time slowdown
The recent GCode writer changes which put the speed changes on a line of
their own have caused the layer time slowdown to be ignored by the regex
in CoolingBuffer.pm.

Fixes: #3134
2016-04-10 16:10:18 +08:00
bubnikv
4156b51c18 Debugging visualization of the gap fills into a SVG format, if SLIC3R_DEBUG is set. 2016-03-27 10:53:59 +02:00
Alessandro Ranellucci
9576973b57 Tune gap fill and thin walls to less extreme values 2016-03-26 18:37:37 +01:00
Alessandro Ranellucci
36d5272f05 Filter gap fill using length relative to the actual width. #2781 2016-03-26 18:10:17 +01:00
Alessandro Ranellucci
660b56acb5 Fixed type error 2016-03-26 12:21:54 +01:00
Alessandro Ranellucci
7041bb5bd9 Rewritten the medial axis algorithm, now more robust (don't just prune MAT from endpoints, but validate all single edges) 2016-03-26 01:45:08 +01:00
Alessandro Ranellucci
b744947711 Missing #include 2016-03-20 01:50:27 +01:00
Alessandro Ranellucci
dd879c3ef2 When loading an AMF file having multiple objects that look like multiple parts of a single object, prompt user and ask how to consider it. #2970
Conflicts:

	lib/Slic3r/Model.pm
2016-03-19 22:24:20 +01:00
Alessandro Ranellucci
dfb1ec99ac Variable-width thin walls. Yay! 2016-03-19 19:40:11 +01:00
Alessandro Ranellucci
6dc42ee902 Variable-width gap fill. Yay! #2960 2016-03-19 19:20:04 +01:00
Alessandro Ranellucci
5ff7511a14 Fixed regression in bridging caused by error in porting. Includes regression test. #3175 2016-03-18 22:40:29 +01:00
Mark Walker
92e1f1011a Fix issue with undefined BOOST_VERSION
if BOOST_VERSION < 106000 always succeeds because BOOST_VERSION is
undefined.  In order to avoid the code for new boost, we need
<boost/version.hpp>
2016-03-13 23:51:35 -07:00
Alessandro Ranellucci
7aafa54bf0 Raise allowed temperatures to 500°C. #3114 2016-03-14 00:08:08 +01:00
Alessandro Ranellucci
f4a9fa6569 Support incompatible change in Boost 1.60. #3117 2016-03-14 00:06:56 +01:00
Alessandro Ranellucci
38d9acbbfb Bugfix: memory corruption in BridgeDetector (thanks @JakeQZ for the patch). #3267 2016-03-13 21:13:51 +01:00
Alessandro Ranellucci
d5ff69b1aa Make GCodeSender more robust (keep more than one sent line) and fix a memory access problem in the asio write buffer 2016-03-13 18:27:02 +01:00
Alessandro Ranellucci
ff0a947364 Merge pull request #3190 from farhaven/master
Implement serial port baudrate selection for OpenBSD
2016-03-13 15:37:13 +01:00
Alessandro Ranellucci
6e5938c833 Fixed return value for deserialize() implementations. #3250 2016-03-13 15:26:52 +01:00
wenjie
3acb0514e1 fix a segment fault by admesh 2016-03-12 16:01:16 +08:00
Alessandro Ranellucci
9eabbded2b Fixed regression in the C++ port of PerimeterGenerator causing gaps to be filled twice 2016-02-20 19:27:00 +01:00
Gregor Best
5a13c4384f Implement serial port baudrate selection for OpenBSD
Signed-off-by: Gregor Best <gbe@unobtanium.de>
2016-01-03 17:35:59 +01:00
Alessandro Ranellucci
83c91a3538 Dump serial messages to file in order to debug communication issues 2015-12-26 11:50:20 +01:00
Alessandro Ranellucci
7c8b71012c Force the 'nearest' strategy for starting skirt loops 2015-12-21 15:02:39 +01:00
Alessandro Ranellucci
1a286fc906 Fixes and improvements to MotionPlanner, much smarter now 2015-12-21 14:46:35 +01:00
Alessandro Ranellucci
70e8db8a0a Minor code cleanup here and there 2015-12-19 20:27:04 +01:00
Alessandro Ranellucci
795107dfa2 Bugfix: external details were simplified too much when using default settings at low layer height, because the internal flow was erroneously taken into account. #2807 2015-12-19 16:46:56 +01:00
Alessandro Ranellucci
bab3404b2d Very minor code improvements 2015-12-19 16:36:07 +01:00
Alessandro Ranellucci
2df750a9c9 Fixed ported code of PerimeterGenerator 2015-12-19 16:35:51 +01:00
Alessandro Ranellucci
667a121ddb Fixed error in porting causing wrong moves with avoid_crossing_perimeters 2015-12-19 14:49:29 +01:00
Alessandro Ranellucci
a2ea191d84 Fix regression in lift, includes regression test 2015-12-19 12:44:22 +01:00
Alessandro Ranellucci
fd7795da59 One more fix for compilation with older compilers 2015-12-19 10:20:05 +01:00
Alessandro Ranellucci
8138fbf349 New --retract-lift-above and --retract-lift-below options. #763 #3057 2015-12-18 18:36:39 +01:00
Alessandro Ranellucci
562efc1677 Typo 2015-12-18 13:49:22 +01:00
Alessandro Ranellucci
b8f0391934 Fix compilation with GCC 2015-12-18 13:40:57 +01:00
Alessandro Ranellucci
44825d91af Some changes to DLP projector 2015-12-18 00:56:56 +01:00
Alessandro Ranellucci
3ec3aaf960 Removed debugging statements 2015-12-16 13:11:41 +01:00
Alessandro Ranellucci
e381100812 More efficient syntax for the PrintConfigDef constructor 2015-12-16 13:09:25 +01:00
Alessandro Ranellucci
934bd43e35 More refactoring on Config XS bindings 2015-12-16 12:58:06 +01:00
Alessandro Ranellucci
3c862836f2 Refactored the Config XS bindings 2015-12-16 12:33:19 +01:00
Alessandro Ranellucci
21364b7cd1 Fix one regression in arrange 2015-12-14 00:15:26 +01:00
Alessandro Ranellucci
c0248dea8c Bugfix: missing include assert.h #3155 2015-12-11 21:36:51 +01:00
Alessandro Ranellucci
e2f2761a00 One more fix for compilation 2015-12-08 11:07:45 +01:00
Alessandro Ranellucci
9f90b2a1bf Fix compilation 2015-12-08 11:01:12 +01:00
Alessandro Ranellucci
5cfa36f36e Fix typo #3152 2015-12-08 10:53:57 +01:00
Alessandro Ranellucci
4913e90e10 Remove any Perl related code from libslic3r 2015-12-08 00:39:54 +01:00
Alessandro Ranellucci
3fac8cd77e Large refactoring of the Config classes 2015-12-07 19:39:49 +01:00
Alessandro Ranellucci
32a333f16a Import config bundle automatically if found in application directory 2015-12-07 12:17:06 +01:00
Alessandro Ranellucci
7e1fac8f76 Separate libslic3r code from slic3r application code 2015-12-06 12:54:01 +01:00
Alessandro Ranellucci
7eb3a70649 Bump version number 2015-12-06 11:18:27 +01:00
Alessandro Ranellucci
954e2c9bf0 Fix comment stripping in sender 2015-12-06 11:17:58 +01:00
Alessandro Ranellucci
27dcd60c77 Fix compilation on Windows 2015-12-06 11:17:50 +01:00
Alessandro Ranellucci
d0db8914f7 Fix a compilation error on Win32 2015-12-05 11:48:24 +01:00
Alessandro Ranellucci
e2b203ba8d Disable screensaver while projecting (untested on Windows) 2015-12-04 21:25:45 +01:00
Alessandro Ranellucci
7523550066 Try to fix compilation on older Perls 2015-12-02 19:57:03 +01:00
Alessandro Ranellucci
1bebe6097b Make test happy 2015-12-02 19:39:16 +01:00
Alessandro Ranellucci
4f8a18bbad Ported Layer::maker_perimeters() to XS 2015-12-02 19:32:57 +01:00
Alessandro Ranellucci
3a9cf91f83 Ported a couple more methods to XS 2015-12-02 18:29:33 +01:00
Alessandro Ranellucci
ed75219215 Ported mode Model methods to XS 2015-12-02 18:06:18 +01:00
Alessandro Ranellucci
dfce3a3138 Ported _arrange() and arrange_object() to XS 2015-12-01 21:51:16 +01:00
Alessandro Ranellucci
48f1fab49f Bugfix: an error in porting caused bad perimeter ordering. Includes regression test and more unit tests for PerimeterGenerator 2015-12-01 20:40:00 +01:00
Alessandro Ranellucci
39924ee89c More small fixes for compilation on Linux 2015-11-19 17:02:01 +01:00
Alessandro Ranellucci
1378562e63 Further improvements for compilation (Ubuntu) 2015-11-19 15:30:27 +01:00
Alessandro Ranellucci
21a5d6e137 Several fixes to GCodeSender, including compilation on older OS X and DTR reset 2015-11-19 13:17:52 +01:00
Alessandro Ranellucci
9febb10bd7 Smoother manual control movements 2015-11-08 10:20:47 +01:00
Alessandro Ranellucci
9a8724cdd0 More compilation changes for Win32 2015-11-06 11:51:24 +01:00
Alessandro Ranellucci
ca48501f91 Remove Boost from distribution and fix some more things for Windows compilation 2015-11-06 11:34:37 +01:00
Alessandro Ranellucci
e7d2be842d Improve Boost path detection 2015-11-06 11:03:45 +01:00
Alessandro Ranellucci
97bf69ba7f Fix compilation on Windows 2015-11-06 10:43:11 +01:00
Alessandro Ranellucci
9f9b5afedb Merge branch 'master' into sender 2015-11-05 11:04:01 +01:00
Alessandro Ranellucci
2e9a0f5590 Added more search paths for Boost on Win32 2015-11-05 11:02:12 +01:00
Alessandro Ranellucci
61f0a9e4da Replace the flip word with mirror. #3060 2015-11-04 23:11:30 +01:00
Alessandro Ranellucci
f8d2c69713 Fixed compilation warnings and a potential bug in MotionPlanner, as reported in #3054 2015-11-04 20:50:32 +01:00
ntfshard
7c7982d9f3 Fix signed-unsigned compare 2015-11-04 20:49:20 +01:00
ntfshard
c90ecac48e Addtional check for TPPLPoly::operator= 2015-11-04 20:49:20 +01:00
ntfshard
d62f33b0b4 Removed unused variables 2015-11-04 20:49:20 +01:00
ntfshard
32f5538e0d Fix for -Wmaybe-uninitialized warninig 2015-11-04 20:49:20 +01:00
ntfshard
40e49613b1 Config: pass value as a reference 2015-11-04 20:49:20 +01:00
ntfshard
ef0050662c Function arguments passed by reference 2015-11-04 20:49:20 +01:00
ntfshard
e1d663c0ce Function arguments passed by reference 2015-11-04 20:49:20 +01:00
ntfshard
dbcd1e2df6 Fix: memory leak in ExPolygon::triangulate_p2t 2015-11-04 20:49:20 +01:00
ntfshard
c6ef26a457 std::list::empty faster than std::list::size (for C++03) 2015-11-04 20:49:19 +01:00
ntfshard
dd5c5eb931 Fix: Initializer list, right initialisation order 2015-11-04 20:49:19 +01:00
ntfshard
eb7464ace6 Style fix: const for some functions 2015-11-04 20:49:19 +01:00
ntfshard
f2c4a66e45 Refactoring: prefix inc/dec operators for iterators 2015-11-04 20:49:19 +01:00
Alessandro Ranellucci
06913cc8b8 Merge pull request #3111 from mdebski/temp_comments
Fix incorrect comments to bed temperature setting gcode
2015-11-04 20:17:58 +01:00
Alessandro Ranellucci
7a2a1b5446 Merge pull request #3039 from llluis/patch-1
Bugfix #3038
2015-11-04 19:47:02 +01:00
Alessandro Ranellucci
b67b903902 Include the option category for first_layer_extrusion_width. #3061 2015-11-04 19:33:49 +01:00
Alessandro Ranellucci
c34430c6c4 Fix G-code checksum 2015-11-04 14:00:37 +01:00
Maciej Dębski
369b99c712 Fix incorrect comments to temperature-setting gcode 2015-11-04 13:55:08 +01:00
Alessandro Ranellucci
1d10e463a3 Bugfix: wrong error handling in GCodeSender 2015-11-03 23:08:16 +01:00
Alessandro Ranellucci
9ee6829ebc Implemented connection timeout in C++ 2015-11-02 20:36:36 +01:00
Alessandro Ranellucci
9438289fc1 Removed debugging statement 2015-11-02 01:44:44 +01:00
Alessandro Ranellucci
b309c61de3 Test button for serial connection 2015-11-02 01:35:28 +01:00
Alessandro Ranellucci
fc1a7471cf Several improvements to the print job queue 2015-11-02 01:18:05 +01:00
Alessandro Ranellucci
9b21ac877a Merge branch 'master' into sender
Conflicts:
	Build.PL
	lib/Slic3r.pm
	xs/MANIFEST
	xs/src/libslic3r/PrintConfig.hpp
2015-11-01 19:12:13 +01:00
Alessandro Ranellucci
2811af349a Added a new grid infill pattern 2015-11-01 19:03:11 +01:00
Alessandro Ranellucci
889a54e946 Bump version number 2015-10-26 23:25:26 +01:00
Alessandro Ranellucci
9fcec10737 Finished porting LayerRegion to C++ 2015-10-26 23:24:46 +01:00
Vicious-one
8e0d458d1d Fix for #3069 2015-09-30 16:22:49 +03:00
Luís Andrade
b31edc0be3 Update GCode.cpp
Bugfix #3038
2015-08-10 18:03:45 -04:00
Alessandro Ranellucci
5b8ed7367a Fixed potential hang in PerimeterGenerator.cpp 2015-08-06 10:07:13 +02:00
Alessandro Ranellucci
6ac79e3ed6 Ported make_perimeters() to C++ 2015-07-23 16:27:21 +02:00
Alessandro Ranellucci
15d2522f3d Merge branch 'xs-perimetergenerator' 2015-07-23 15:53:19 +02:00
Alessandro Ranellucci
b4515cf695 Finished porting PerimeterGenerator to C++ 2015-07-23 15:53:02 +02:00
Alessandro Ranellucci
9ac4fc9034 Fix compilation on Windows due to lack of setenvt(). #2973 2015-07-10 16:01:45 +02:00
Alessandro Ranellucci
0e18b094d1 More work for porting PerimeterGenerator to XS 2015-07-07 01:17:31 +02:00
Alessandro Ranellucci
b8aecbd56c Initial work for porting PerimeterGenerator to XS 2015-07-03 22:58:29 +02:00
Alessandro Ranellucci
3e739b87da Finished porting Slic3r::GCode to XS (speed boost!) 2015-07-02 20:24:16 +02:00
Alessandro Ranellucci
0ad4296aaf Ported GCode::set_extruders() and GCode::change_layer() to XS 2015-07-02 19:33:08 +02:00
Alessandro Ranellucci
9a17efc480 Use GCodeWriter for path segments (refactoring) 2015-07-02 19:14:55 +02:00
Alessandro Ranellucci
fbd640fdc5 Ported GCode::extrude_path() to XS (speed boost!) 2015-07-02 18:57:40 +02:00
Alessandro Ranellucci
b025efe729 Ported GCode::travel_to() to XS 2015-07-02 15:12:04 +02:00
Alessandro Ranellucci
a6f4c8e567 Ported GCode::set_extruder() and OozePrevention 2015-07-02 15:02:20 +02:00
Alessandro Ranellucci
72355a9500 Use macro in PrintConfig.hpp 2015-07-02 14:35:21 +02:00
Alessandro Ranellucci
ff5747bb60 Macro for readability 2015-07-02 14:31:21 +02:00
Alessandro Ranellucci
b14290b9f6 Make tests happy 2015-07-02 14:29:20 +02:00
Alessandro Ranellucci
5571144c0e Ported Slic3r::GCode::needs_retraction() to XS 2015-07-01 23:14:40 +02:00
Alessandro Ranellucci
b4019bb438 Ported more Slic3r::GCode methods to XS 2015-07-01 23:00:52 +02:00
Alessandro Ranellucci
801f629fdc Ported Slic3r::GCode storage to XS 2015-07-01 21:47:17 +02:00
Alessandro Ranellucci
ab858f320d Updated test 2015-07-01 21:02:36 +02:00
Alessandro Ranellucci
280f3f38d7 Ported Slic3r::GCode::OozePrevention storage to XS 2015-07-01 21:01:42 +02:00
Alessandro Ranellucci
b43dd92766 Ported Slic3r::GCode::Wipe storage to XS 2015-07-01 20:57:16 +02:00
Alessandro Ranellucci
bf9cd1b8e6 Ported Slic3r::GCode::AvoidCrossingPerimeters to XS 2015-07-01 20:14:05 +02:00
Alessandro Ranellucci
580d28d071 Finished porting PlaceholderParser to XS 2015-07-01 19:35:22 +02:00
Alessandro Ranellucci
249088b4f8 Ported Config::setenv() to XS 2015-07-01 18:18:25 +02:00
Alessandro Ranellucci
f361d8ad43 Ported PlaceholderParser::apply_env_variables() to XS 2015-07-01 17:56:38 +02:00
Alessandro Ranellucci
4a39665804 Bugfix: binary ASCII files were not written with the correct fopen() mode. #2928 2015-06-20 14:16:23 +02:00
Alessandro Ranellucci
3cd6c78044 Releasing 1.2.9 2015-06-17 10:38:28 +02:00
Alessandro Ranellucci
be635c69e7 Fixed regression casusing some rare STL files not to parsed correctly because of lack of the solid name. #2914 2015-06-15 17:17:36 +02:00
Alessandro Ranellucci
539cde8d7a Raise the thickness threshold used for generating thin walls. TODO: don't enforce this at the segment level but consider the average thickness of an entire polyline and compare it to the total length. #2910 2015-06-15 17:00:10 +02:00
Alessandro Ranellucci
38a9e32a28 Limit bridge over sparse infill to areas that can absorb such extrudate. #2899 2015-06-13 19:48:46 +02:00
Alessandro Ranellucci
7a34078f5f Bump version number 2015-06-13 11:42:37 +02:00
Alessandro Ranellucci
4a91ea817a Releasing 1.2.8 2015-06-09 17:18:43 +02:00
Alessandro Ranellucci
e715974688 Better validation for speeds (prevent 0mm/s travel speed). #2893 2015-06-09 17:15:01 +02:00
Alessandro Ranellucci
911bed827c Fixed regression in STL parser. #2886 2015-06-09 14:54:52 +02:00
Alessandro Ranellucci
7b65a35519 Always limit volumetric speed with Max Volumetric Speed (not just when using autospeed). #2810 2015-06-02 11:54:38 +02:00
Alessandro Ranellucci
1fcfdf4718 Added a couple full_label values 2015-06-01 23:22:44 +02:00
Alessandro Ranellucci
6095427926 Fix admesh's STL parser in order to make it more tolerant for broken STL files having multiple 'solid' definitions. Still not the ideal STL parser, but handles the cases that were reported so far. #2471 #2842 2015-06-01 19:49:52 +02:00
Alessandro Ranellucci
f14c0e2183 Bugfix: concave starting points were not correctly detected for slice holes. Includes regression test. #2857 2015-06-01 17:55:51 +02:00
Alessandro Ranellucci
fbea32a81c Prevent writing empty materials to AMF files. Also add a note about material-id = 0 being reserved by AMF spec. #2871 2015-06-01 11:51:00 +02:00
Alessandro Ranellucci
7f70da97b4 New experimental autospeed feature. #2810 2015-05-31 22:04:32 +02:00
Alessandro Ranellucci
13b7316807 Merge branch 'master' into sender
Conflicts:
	Build.PL
	lib/Slic3r/GUI/MainFrame.pm
2015-05-28 18:05:36 +02:00
Alessandro Ranellucci
aa8b6afe8b Assign color to filaments 2015-05-26 02:01:43 +02:00
Alessandro Ranellucci
a547645e86 Bump version number 2015-05-24 23:29:59 +02:00
Alessandro Ranellucci
249a48d68d Releasing 1.2.7 2015-05-24 17:39:27 +02:00
Alessandro Ranellucci
31e0fc7f17 Fixes and improvements to thin wall detection. #2829 2015-05-22 01:46:01 +02:00
Alessandro Ranellucci
70ec433e67 Faster (but less precise) implementation of simplify_by_visibility(), since it was the bottleneck of avoid_crossing_perimeters. #2777 2015-05-18 19:28:59 +02:00
Alessandro Ranellucci
97211f35e7 More robust medial axis pruning. #2800 2015-05-13 20:50:30 +02:00
Alessandro Ranellucci
0d01348acc Use radians everywhere, including ModelInstance::rotation 2015-05-03 18:40:00 +02:00
Alessandro Ranellucci
79ce094e3a Bugfix: splitting a rotated object resulted in wrong positions. #2772 2015-05-03 18:28:39 +02:00
Alessandro Ranellucci
7d81aee62f Added the [scale] placeholder. #2791 2015-05-02 21:59:15 +02:00
Alessandro Ranellucci
bf541a1fed Refactoring in PlaceholderParser 2015-05-02 21:43:22 +02:00
Alessandro Ranellucci
a16dda0885 Bugfix: changes to the resolution config option didn't trigger reslicing. #2795 2015-04-29 19:22:44 +02:00
Alessandro Ranellucci
d6d7880507 Ported Slic3r::Geometry::arrange() to C++/XS 2015-04-29 19:19:07 +02:00
Alessandro Ranellucci
5eb3bc52ef Ported ModelObject::rotate() and ModelObject::flip() to XS, as well as axes constants 2015-04-16 21:22:04 +02:00
Alessandro Ranellucci
be2f46ca68 Ported Layer::merge_slices() to XS 2015-04-16 20:44:55 +02:00
Alessandro Ranellucci
1f8ef2a63c Fixed regression introduced by the recent PerimeterGenerator refactoring causing spiral vase not to be correctly skipped on multi-loop layers. Includes regression test. #2761 2015-04-12 20:16:27 +02:00
Alessandro Ranellucci
8654537e55 Use support material layer height for raft layer instead of object layer height. #2723 2015-03-09 19:36:23 +01:00
Alessandro Ranellucci
d8ee9dd5f5 Limit first object layer height correctly when using a larger support material extruder. #2722 2015-03-09 19:27:57 +01:00
Alessandro Ranellucci
6cab5668e3 Restore correct ordering of concentric infill loops, preventing them from being reordered during G-code generation 2015-03-09 18:28:07 +01:00
Alessandro Ranellucci
d2172b4383 Merge branch 'master' into sender 2015-03-06 22:15:43 +01:00
Alessandro Ranellucci
095391d702 When using raft, validate first layer height against support material extruder only instead of taking other extruders into account, thus potentially allowing larger nozzles to be used for it. #2701 2015-03-06 21:35:00 +01:00
Alessandro Ranellucci
722e94513c Refactoring: removed the non-idempotent init_extruders() step. Also, infill_extruder was not limited to the available number of extruders when slicing from the plater, and support material extruder was considered also when support material was disabled 2015-03-06 09:56:58 +01:00
Alessandro Ranellucci
1ab8efba7f Fixed regression causing random failures in bridge direction detection. #2636 2015-02-27 21:55:02 +01:00
Alessandro Ranellucci
e88cf466fe A couple notes about infill_only_where_needed 2015-02-23 00:55:00 +01:00
Alessandro Ranellucci
2655f3f816 Better and more robust implementation of infill_only_where_needed 2015-02-23 00:44:51 +01:00
Alessandro Ranellucci
2eca094170 Added failing test case for Clipper regression causing extra points in polyline intersection, thus crash with circular bed shape 2015-02-22 17:03:23 +01:00
Alessandro Ranellucci
edbc11477c Update to Clipper 6.2.9. Fixes #2639 2015-02-22 15:13:52 +01:00
Alessandro Ranellucci
6413d5dcba Merge pull request #2630 from lordofhyphens/fix-admesh-warning
Fix a warning about unused return value when using freopen in admesh.
2015-02-22 14:48:17 +01:00
Alessandro Ranellucci
ba6ae12635 Change end_program() to postamble() 2015-02-15 17:09:17 +01:00
Alessandro Ranellucci
1180a6d83f Merge pull request #2508 from strahlex/machinekit-gcode
added support Machinekit flavour GCode
2015-02-15 17:00:08 +01:00
Alessandro Ranellucci
8851dc7f23 Added failing test case for upstream Clipper issue 126 (our #2639) 2015-02-15 16:47:55 +01:00
Alessandro Ranellucci
32b8eb489c Updated Clipper to 6.2.8. This fixes several minor issues, including infill paths not being trimmed correctly. #2448 2015-02-15 16:10:04 +01:00
Kent Fredric
df5c2a6f11 Remove redundant dep on ExtUtils::Typemap
Typemap (Singluar) version 1.00 is essentially identical to Typemaps (Plural)
 Typemap is literally a dumb subclass of TypeMaps, and so this
 dependency simply gives an extra installation requirement that does
 nothing.
2015-02-14 06:44:22 +13:00
Alexander Rössler
cef1494852 Switched to P parameter instead of S for Machinekit flavour MCode commands 2015-02-10 14:22:23 +01:00
Alessandro Ranellucci
a68fed3938 Bump version number 2015-02-09 10:53:55 +01:00
Alexander Rössler
f2fa8cb63f added end_program() function to GCodeWriter 2015-02-07 12:36:29 +01:00
Alexander Rössler
32eff40422 added retract and unretract command for Machinekit flavour 2015-02-06 19:16:57 +01:00
Alexander Rössler
d35226b889 added support Machinekit flavour GCode 2015-02-06 18:48:46 +01:00
Joseph Lenox
102785d154 Fix a warning about unused return value when using freopen in admesh. Added another NULL check for safety. 2015-02-05 00:58:27 -06:00
Alessandro Ranellucci
73eb11b395 Releasing 1.2.6 2015-02-01 15:47:29 +01:00
Alessandro Ranellucci
3ae6f2630e Merge branch 'master' into sender
Conflicts:
	Build.PL
2015-02-01 14:07:32 +01:00
Alessandro Ranellucci
bb3bf28e59 Ported prepare_fill_surfaces() to XS/C++ 2015-02-01 12:43:58 +01:00
Alessandro Ranellucci
07cd25d0ec New option for customization of infill/perimeters overlap. #2459 2015-02-01 12:08:25 +01:00
Alessandro Ranellucci
84eb37e218 Typo in previous commit 2015-01-31 11:57:18 +01:00
Alessandro Ranellucci
62e418d0fc Modernize some defaults 2015-01-31 11:38:17 +01:00
Alessandro Ranellucci
059b00a829 New --before-layer-change option and new layer_z placeholder. #2602 2015-01-30 20:08:00 +01:00
Alessandro Ranellucci
8605969dc5 Don't output slic3r:z attribute in SVG for raft layers 2015-01-30 18:45:30 +01:00
Alessandro Ranellucci
e2b1b52679 Added a new Slic3r::Geometry::simplify_polygons() function 2015-01-30 18:33:20 +01:00
Alessandro Ranellucci
9ad5d9bb3d Fixed minor issue in 3D preview causing single-line toolpaths to miss the cap on one endpoint 2015-01-28 23:35:48 +01:00
Alessandro Ranellucci
7652abdf8d Merge pull request #2595 from xdissent/deserialize-points
Use std::getline to deserialize point list coords, fixes #2318
2015-01-28 21:02:05 +01:00
Greg Thornton
b0b9c17c23 Use std::getline to deserialize point list coords, fixes #2318 2015-01-28 09:08:50 -06:00
Alessandro Ranellucci
b1f1893481 Bugfix: tangent horizontal mesh surfaces were not included in slices under rare circumstances, generating almost invalid polygons that confused Clipper and caused skipped layers. Includes regression test 2015-01-28 13:00:38 +01:00
Alessandro Ranellucci
8a5a0b6726 Minor optimization in TriangleMesh code 2015-01-25 17:30:55 +01:00
Alessandro Ranellucci
c264969962 Bugfix: crash when rendering lines with zero length in 3D preview. #2569 2015-01-25 15:21:45 +01:00
Alessandro Ranellucci
a5c0ffe963 Faster loading of 3D preview and much less memory used 2015-01-24 23:35:29 +01:00
Alessandro Ranellucci
8791f5a493 Cleanup of some method signatures and of XS return types 2015-01-19 18:53:04 +01:00
Alessandro Ranellucci
7b980c1dc9 New option for vertical distance between object and support material, with special handling of the 0 case that disabled bridge flow/speed in order to allow for soluble material. #2491 #2272 #2069 #1942 #2435 #1703 2015-01-19 09:52:24 +01:00
Alessandro Ranellucci
9f0283f808 Minor issue when dealing with files with empty layers at bottom. #2553 2015-01-18 12:35:05 +01:00
Alessandro Ranellucci
4696b46475 Clarified tooltip for First Layer Extrusion Width. #2543 2015-01-18 11:42:19 +01:00
Alessandro Ranellucci
b646b5c98a Revert "Updated Clipper to 6.2.7"
This reverts commit e6c022a61c.
2015-01-18 01:31:10 +01:00
Alessandro Ranellucci
e9d08ce51f Updated MANIFEST 2015-01-18 01:14:14 +01:00
Alessandro Ranellucci
e6c022a61c Updated Clipper to 6.2.7 2015-01-18 01:07:23 +01:00
Alessandro Ranellucci
357f10732a Added test case for a Clipper bug 2015-01-18 01:07:23 +01:00
Alessandro Ranellucci
2bbb6c570b Ported toolpaths rendering to C++ 2015-01-18 01:07:22 +01:00
Alessandro Ranellucci
cf4119e169 Populate ExtrusionPath::height correctly in case of bridge 2015-01-18 01:07:22 +01:00
Alessandro Ranellucci
e749f6040f New +Line::intersection_infinite() method 2015-01-16 16:25:39 +01:00
Alessandro Ranellucci
a616d64971 Bump version number 2015-01-15 22:35:14 +01:00
Alessandro Ranellucci
e0a3d2577c Initial work for 3D rendering of toolpaths 2015-01-15 20:06:30 +01:00
Alessandro Ranellucci
18e815d032 More efficient 3D preview of slices 2015-01-15 18:49:07 +01:00
Alessandro Ranellucci
bf02062a67 Bugfix: random but frequent crashes after recent perimeter code refactoring 2015-01-14 22:55:11 +01:00
Alessandro Ranellucci
9a7e5327ab Support --solid-fill-pattern for legacy. #2527 2015-01-13 23:22:27 +01:00
Alessandro Ranellucci
04aa240265 Only apply perimeter/infill overlap to the endpoints of rectilinear infill (and do that in a more proper way) 2015-01-13 20:55:20 +01:00
Alessandro Ranellucci
bb9ceba343 Releasing 1.2.5 2015-01-09 13:44:28 +01:00
Alessandro Ranellucci
02d717b7a3 Don't put any M200 automatically when volumetric mode is selected. Explain how to do it manually in the tooltip. #1746 2015-01-09 12:02:04 +01:00
Alessandro Ranellucci
64c9e3af4b Bugfix: objects were floating in STL export after rotation and flip. #2512 2015-01-09 00:47:40 +01:00
Alessandro Ranellucci
9ec7b43ca1 Merge branch 'master' into sender
Conflicts:
	lib/Slic3r/GUI/Tab.pm
2015-01-08 22:47:43 +01:00
Alessandro Ranellucci
79cb350f2d Fixed segfault in new MotionPlanner code when environments were empty (small islands). #2511 2015-01-08 21:24:51 +01:00
Alessandro Ranellucci
fc47892474 Bump version number 2015-01-08 15:31:59 +01:00
Alessandro Ranellucci
406d045ced The inwards move after an external loop was still randomly generated outwards in some cases. Perimeters are now generated with a distinct iterator for each slice. Nested islands are also correctly supported too. Various regression tests included. #2253 2015-01-08 15:22:13 +01:00
Alessandro Ranellucci
af92e3d49e Bugfix: validation for sequential printing was not entirely correct. #2480 2015-01-07 21:57:22 +01:00
Alessandro Ranellucci
1b766f12ca Minor fix after recent changes in MotionPlanner 2015-01-06 23:30:28 +01:00
Alessandro Ranellucci
21a660c56c Fix compilation 2015-01-06 21:29:32 +01:00
Alessandro Ranellucci
d4ae734659 Minor improvement to IntersectionLine (now subclasses Line) 2015-01-06 20:58:07 +01:00
Alessandro Ranellucci
8f4cbefd0d Lots of improvements to MotionPlanner/avoid_crossing_perimeters. Smoother paths and several edge cases now handled better 2015-01-06 20:52:36 +01:00
Alessandro Ranellucci
5e100abe25 Added several drawing methods to Slic3r::SVG 2015-01-06 20:51:48 +01:00
Alessandro Ranellucci
713fcb5e8e New methods in Slic3r::SVG C++ class 2015-01-06 16:26:15 +01:00
Alessandro Ranellucci
2562070232 Refactored the travel/retract/avoid_crossing_perimeters logic. Several edge cases are now handled correctly. #2498 2015-01-06 14:52:03 +01:00
Alessandro Ranellucci
7e82159620 Fixed one more case where only_retract_when_crossing_perimeters didn't apply. #2498 2015-01-06 11:29:34 +01:00
Alessandro Ranellucci
9fd0637990 Bugfix: artifacts were introduced when perimeters were recalculated through incremental slicing. #2494 2015-01-05 21:00:50 +01:00
Alessandro Ranellucci
47e4e8bb66 Option to use volumetric E values. #1746 2015-01-05 19:39:10 +01:00
Alessandro Ranellucci
6776d6bc00 Bugfix: a bug in Polyline::split_at() caused random loss of perimeter segments. #2495 2015-01-05 15:51:57 +01:00
Alessandro Ranellucci
9af43bee52 Handle log, temperatures. Move controller to main tabpanel. More things 2015-01-04 23:18:23 +01:00
Alessandro Ranellucci
3ab4d4b094 Merge branch 'master' into sender 2015-01-04 19:36:28 +01:00
Alessandro Ranellucci
a6f3e6bfdb Mark Vibration Limit as deprecated. #2483 2015-01-04 19:32:59 +01:00
Alessandro Ranellucci
92e896c4d1 Prettify infill pattern labels 2015-01-04 19:32:05 +01:00
Alessandro Ranellucci
cbc0e270b7 Nicer configuration fields for USB/Serial connection 2015-01-04 19:14:54 +01:00
Alessandro Ranellucci
16939b80e6 Implemented priority queue 2015-01-04 18:17:15 +01:00
Alessandro Ranellucci
504cbd89db Fix bug in admesh code that causes random binary STL files not to be read correctly on Windows. #2461 2015-01-04 11:46:58 +01:00
Alessandro Ranellucci
2c0d216c1a More work on print controller 2015-01-03 23:25:55 +01:00
Alessandro Ranellucci
d8be67c28b Bugfix: Douglas-Peucker used perpendicular distance instead of shortest distance, thus clipping more than it should. #2474 2015-01-03 15:03:53 +01:00
Alessandro Ranellucci
c06ce3b58c Initial work for a controller GUI 2014-12-31 19:10:46 +01:00
Alessandro Ranellucci
29d64107de Merge branch 'master' into sender 2014-12-31 16:25:26 +01:00
Alessandro Ranellucci
fffdbe0abb Releasing 1.2.4 2014-12-30 14:51:59 +01:00
Alessandro Ranellucci
c4832c5342 Bugfix: early object destruction caused a segfault when splitting. Also fixed a memory leak and restore background processing when split only detected one part. #2466 #2398 2014-12-30 13:16:28 +01:00
Alessandro Ranellucci
494efe65b2 Bugfix: auto-center didn't update the PrintObject copies properly, causing misalignment. #2464 2014-12-29 22:29:24 +01:00
Alessandro Ranellucci
200130bc10 Bump version number 2014-12-29 12:49:49 +01:00
Alessandro Ranellucci
6896e53078 Octoprint -> OctoPrint 2014-12-29 12:49:32 +01:00
Alessandro Ranellucci
13b4237fec Releasing 1.2.3 2014-12-29 11:45:41 +01:00
Alessandro Ranellucci
fbb3462f5b Bump version number 2014-12-28 14:58:58 +01:00
Alessandro Ranellucci
efe7d5f857 Integration with Octoprint. #1826 2014-12-28 01:30:05 +01:00
Alessandro Ranellucci
b126f92f41 Finished GCodeSender 2014-12-27 22:58:01 +01:00
Alessandro Ranellucci
8b438dc0de Merge branch 'master' into sender 2014-12-27 18:10:03 +01:00
Alessandro Ranellucci
9803e2fabf Releasing 1.2.2 2014-12-27 14:38:55 +01:00
Alessandro Ranellucci
005f138ce7 Merge branch 'master' into sender 2014-12-26 01:30:48 +01:00
Alessandro Ranellucci
70601eeb51 Tell what options were changed when prompting user for saving a modified preset. Also, check whether the preset was actually modified by performing a proper idempotent diff. #2165 2014-12-25 17:35:31 +01:00
Alessandro Ranellucci
5a0f4eac8d One more retraction optimization 2014-12-25 11:37:54 +01:00
Alessandro Ranellucci
5639132dae Bugfix: the region_volumes vector was not always extended after creating new regions, causing bad memory access in apply_config(). #2446 2014-12-24 18:35:59 +01:00
Alessandro Ranellucci
4848cb7606 Ported PrintObject::bridge_over_infill() to XS 2014-12-24 10:20:55 +01:00
Alessandro Ranellucci
5d3cd792eb Make infill_only_where_needed idempotent. #2198 2014-12-24 01:29:36 +01:00
Alessandro Ranellucci
91bc4d8157 Bugfix: a typo caused wrong loop splitting, thus wrong ordering of perimeters having bridging parts. Includes regression test. #2258 2014-12-24 00:11:29 +01:00
Alessandro Ranellucci
25bc8e6f29 Smarter automatic disabling of GUI fields + reordering of Print Settings pages + minor adjustments to tooltips 2014-12-23 20:47:11 +01:00
Alessandro Ranellucci
64061267c8 Align infill across layers regardless of first-layer-specific extrusion width. Includes a good internal API refactoring and a fix to 3D honeycomb flow 2014-12-22 16:47:35 +01:00
Alessandro Ranellucci
93507bfd49 Bugfix: only_retract_when_crossing_perimeters was not correctly applied on bottom layer when no bottom solid layers were printed 2014-12-22 11:46:16 +01:00
Alessandro Ranellucci
1b582ea66a Remove the "(slow)" mark on infill patterns that used to be slow in the past 2014-12-22 10:48:05 +01:00
Alessandro Ranellucci
4fc955a0fd Fixed concave_points() and convex_points() after recent change of ccw_angle() 2014-12-21 23:10:38 +01:00
Alessandro Ranellucci
7253dc699a Some more work on wireframe 2014-12-21 22:52:18 +01:00
Alessandro Ranellucci
a0dda36df0 Minor fix to BridgeDetector 2014-12-17 01:21:12 +01:00
Alessandro Ranellucci
21ea100d0e Fixed tests 2014-12-17 01:15:47 +01:00
Alessandro Ranellucci
9264db7ecd Removed useless thing added in e79aa2e81c 2014-12-17 00:52:01 +01:00
Alessandro Ranellucci
c00061678b Use perimeter extruder for brim. #618 2014-12-17 00:45:05 +01:00
Alessandro Ranellucci
e79aa2e81c New --solid-infill-extruder option. Includes a refactoring of the strategy used to order layer extrusions according to their extruder and island; toolchanges and travel moves should be more optimized now. #618 2014-12-17 00:34:00 +01:00
Alessandro Ranellucci
fcfb3b98bc 3D object positioning 2014-12-16 01:12:56 +01:00
Alessandro Ranellucci
a82f95e903 Some initial work for 3D slice rendering 2014-12-15 15:19:42 +01:00
Alessandro Ranellucci
9cd0a63331 Refactoring of PreviewCanvas 2014-12-15 01:28:11 +01:00
Alessandro Ranellucci
2f2ae75529 Some incomplete work for moving objects in 3D plater 2014-12-13 22:18:43 +01:00
Alessandro Ranellucci
d1f58cbed5 Objects can be selected in 3D preview now. Double click and right click work as well 2014-12-13 20:41:03 +01:00
Alessandro Ranellucci
ac495e974a Update test 2014-12-12 23:02:28 +01:00
Alessandro Ranellucci
133466a6b5 Minor improvements to the Skirt Loops tooltip 2014-12-12 22:50:43 +01:00
Alessandro Ranellucci
360dee862b Keep model objects aligned to Z = 0 in plater 2014-12-12 22:43:56 +01:00