1192 Commits

Author SHA1 Message Date
Alessandro Ranellucci
7b914d17f3 Merge pull request #3588 from lordofhyphens/filament-gcode
Filament-specific start and end gcode.
2017-03-12 00:35:16 +01:00
Alessandro Ranellucci
cf0021c101 Put internal brim also inside objects when they have no infill. #2026 2017-03-12 00:31:15 +01:00
Alessandro Ranellucci
f670ad6821 New Interior Brim option. #2026 2017-03-12 00:31:15 +01:00
Joseph Lenox
a2fb7313c6 Configurable overhang threshold as function of perimeter width (#3752)
* Fix automatic overhang threshold

We should be supporting perimeters that are overhung further than half a
perimeter out, rather than two times the perimeter width.

Fixes: #2068

* Made the overhang detection configurable, up to 200 (the original value, which is still the default)

* Set default to 60% as per https://github.com/alexrj/Slic3r/wiki/Support:-Requirements
Removed some less useful enumerations (0-30%)

* Folded in auto_threshold into support threshold as a % value
2017-03-11 17:22:06 -06:00
Joseph Lenox
5d10d4c02b Added a timeout to the exception test to (hopefully) fail test on broken perl instead of waiting forever. 2017-03-11 09:42:44 -06:00
Joseph Lenox
0741ecc2aa Add weight/cost output to gcode. On the way to #647 (#3669)
* Add weight/cost output to gcode. On the way to #647

* added total cost/weight to Extruder statistics, mocked up addendum to status bar change.

* Added second information box that populates after exporting gcode for sliced statistics.

* Changed filament density to use g/cm^3. Extended tooltip to indicate calculation methods.

* Hide sliced info box when gcode export hasn't been done.

* Remove if invalidated and we have background processing or the configuration changes.

* Called layout after every Hide/Show call to ensure that it is placed correctly on different platforms.
Changed output units to cm/cm^3

Conflicts:
	lib/Slic3r/GUI/Plater.pm
2017-03-10 17:36:14 -06:00
Alessandro Ranellucci
f1f1444637 Put everything into try {} catch {} in GCodeSender::connect 2017-03-09 20:51:43 +01:00
Alessandro Ranellucci
afacf0c99d Parallelized process_external_surfaces 2017-03-09 20:40:06 +01:00
Alessandro Ranellucci
db8396a290 Parallelized detect_surfaces_type 2017-03-09 20:31:00 +01:00
Alessandro Ranellucci
306264c214 Write scaling_factor to AMF files (by @bubnikv) 2017-03-08 15:43:32 +01:00
bubnikv
c4929c315f Fix of #117: A large fractal pyramid takes ages to slice
The Clipper library has difficulties processing overlapping polygons.
Namely, the function Clipper::JoinCommonEdges() has potentially a terrible time complexity if the output
of the operation is of the PolyTree type.
This function implmenets a following workaround:
1) Peform the Clipper operation with the output to Paths. This method handles overlaps in a reasonable time.
2) Run Clipper Union once again to extract the PolyTree from the result of 1).

Conflicts:

	xs/src/libslic3r/ClipperUtils.cpp
2017-03-08 15:35:03 +01:00
bubnikv
412498b8e4 Reverted unification of positive and negative zeros when loaded
from an STL file.

Conflicts:

	xs/src/admesh/stlinit.c
2017-03-08 15:26:58 +01:00
Alessandro Ranellucci
bb214b0cd6 Trigger extra perimeters also when a diagonal gap would be visible. #3732 2017-03-08 14:40:50 +01:00
Alessandro Ranellucci
d3121f716a Removed debugging directive 2017-03-07 14:04:50 +01:00
Alessandro Ranellucci
efd9b4c187 ExtUtils::CppGuess considers clang like GCC (+ two minor fixes/additions) 2017-03-06 17:09:09 +01:00
Alessandro Ranellucci
ca73765ad7 Fixed typo in assert 2017-03-06 16:50:34 +01:00
Alessandro Ranellucci
1edbf9c0a6 Couple improvements to the two Build.PL files 2017-03-06 16:33:54 +01:00
Alessandro Ranellucci
fc7e022003 Fixed regression: rectilinear infill crashed with zero-area polygons. #3648 2017-03-06 16:32:14 +01:00
Alessandro Ranellucci
871f469c89 Fixed regression in the post_process GUI field. #3698 2017-03-05 16:13:19 +01:00
Alessandro Ranellucci
69202aeeb9 Merged xs/t/*_config.t into one single .t file 2017-03-05 14:13:21 +01:00
Alessandro Ranellucci
36e148929b More user-friendly inputs for speed and extrusion width options (explicit "auto" labels instead of having to write 0) 2017-03-05 03:20:39 +01:00
Alessandro Ranellucci
abe22fa406 Fix compilation on recent OSX versions 2017-03-05 02:42:15 +01:00
Alessandro Ranellucci
a7f1cd50ab Merge pull request #3737 from alexrj/allow-unversioned-boost-libs
Permit boost libraries to not have the version # in their name
2017-03-05 02:17:53 +01:00
Alessandro Ranellucci
619bc4012d Allow to express gap_fill_speed as % over infill_speed 2017-03-05 02:13:00 +01:00
Alessandro Ranellucci
5470e89f7a Allow autospeed for gap fill. Now gap_fill_speed = 0 enabled autospeed (consistenly with other speed settings) and does not disable gap fill. A new fill_gaps option, defaulting to true, was added for this purpose. #2976 2017-03-05 01:53:57 +01:00
Joseph Lenox
85e4e16578 Permit boost libraries to not have the version # in their name 2017-03-04 16:38:00 -08:00
Alessandro Ranellucci
4e586b8eda Bugfix: percent first layer speed was not applied over autospeed. #2945 2017-03-04 14:23:03 +01:00
Alessandro Ranellucci
f25ea9f493 Don't slowdown external perimeters if possible. #2796 2017-03-03 20:12:56 +01:00
Alessandro Ranellucci
dd22a28160 C++11 compilation for OSX 10.8 2017-03-02 13:17:48 +01:00
Joseph Lenox
3c4f93cf24 Cpp11 (#3731)
* Enabled c++11 support (required for IO::AMF), extended Travis build to build with g++ 4.9
* ifdef guard in poly2tri/util to avoid redefinition warning
* cache local-lib
2017-03-02 00:46:20 -06:00
Alessandro Ranellucci
22ba87c3b3 Finished porting importers and read_from_file() to C++ 2017-03-01 22:19:30 +01:00
Alessandro Ranellucci
8326f75af8 Ported AMF parsing/writing to C++ (by @bubnikv) 2017-03-01 21:29:29 +01:00
Alessandro Ranellucci
62675a2b18 Use Slic3r::IO::STL for reading STL files 2017-03-01 20:18:45 +01:00
Alessandro Ranellucci
de19e5dabc Port the OBJ parser to C++ 2017-03-01 20:13:10 +01:00
bubnikv
80718b79a9 AdMesh:
unify positive and negative zeros in stl_check_facets_exact() and stl_check_facets_nearby()
New function stl_transform() by a 3x4 matrix.
Some constness improvements.

Conflicts:

	xs/src/admesh/stlinit.c
2017-03-01 18:05:36 +01:00
Alessandro Ranellucci
d984864ce0 New "rear" seam position 2017-03-01 17:20:43 +01:00
bubnikv
4d521ca839 Avoid placement of seams on bridging perimeters, if random seam is enabled. #3526
https://github.com/alexrj/Slic3r/issues/3526#issuecomment-263125049

Conflicts:

	xs/src/libslic3r/GCode.cpp
2017-03-01 17:04:20 +01:00
bubnikv
ccf0a45752 GCodeWriter - made tiny methods inline. 2017-03-01 16:59:10 +01:00
Alessandro Ranellucci
c146cab2c7 Upgraded Clipper to 6.4.2 2017-03-01 00:05:26 +01:00
Joseph Lenox
a42c16450b Reduces the maximum flow for internal infill to 3x nozzle diameter (avoid absurdly wide traces at small layer heights).
Fixes #3688
Fixes #2599
2017-01-26 20:03:42 -06:00
Alessandro Ranellucci
c36a7c1e3d Fixed error in previous commit 2017-01-11 23:08:32 +01:00
Alessandro Ranellucci
182d68ad85 Automatically switch to rectilinear when a pattern is used that doesn't support solid infill 2017-01-11 18:55:48 +01:00
Joseph Lenox
a2c7e56862 Fix typo in debug code, use this->_layer_id not plain layer_id. 2017-01-01 17:51:51 -06:00
Alessandro Ranellucci
73763a8417 Bugfix: rare crash when loading 3D preview. #3636 2016-12-22 13:18:22 +01:00
Alessandro Ranellucci
cb72afc10e Update invalidate_state_by_config_options() for the new semantics of infill_overlap 2016-12-22 12:22:00 +01:00
Alessandro Ranellucci
da0f4c4e01 Since we have removed the INFILL_OVERLAP_OVER_SPACING constant, increase the infill_overlap value for compensation 2016-12-22 11:16:28 +01:00
Alessandro Ranellucci
117fb30636 Ported CoolingBuffer to C++/XS 2016-12-21 23:09:58 +01:00
Alessandro Ranellucci
475f9d45a5 Some minor fixes. #3603 2016-12-21 20:42:17 +01:00
Alessandro Ranellucci
49a9492ad2 Allow any layer height and limit it to the smallest nozzle diameter. #2706 2016-12-21 20:35:06 +01:00
Alessandro Ranellucci
949fda3abb One more fix to SLAPrint 2016-12-21 19:55:46 +01:00