Commit Graph
100 Commits
Author SHA1 Message Date
bubnikv fd54956d70 Hopefuly a fix of https://github.com/prusa3d/Slic3r/issues/116
Enabling / disabling of the layer editing button on OSX & linux did not work.
2017-02-13 12:40:12 +01:00
bubnikv e2f8ea2809 When renaming the exported G-code (removing the .tmp suffix),
some other application (thank you, Windows Explorer) may keep the file locked.
Try to wait a bit and then rename the file again.
2017-02-13 12:36:46 +01:00
bubnikv 8d6acd2aec Fix of "no support generated" https://github.com/prusa3d/Slic3r/issues/114
when a first layer height was set in percents.
2017-02-12 00:51:53 +01:00
bubnikv 61f9414b09 Fixed a bug in manipulation of multi-component bodies. 2017-02-10 11:24:54 +01:00
bubnikv 152026fa08 Disable variable layer height editing on the UI when a printer
profile is switched to one with the layer height editing disabled.
2017-02-10 10:21:50 +01:00
bubnikv 43757df016 Merge branch 'master' of https://github.com/prusa3d/Slic3r 2017-02-10 09:41:16 +01:00
bubnikv db30cee6a9 Fixed the 'iso' camera orientation. 2017-02-09 21:40:07 +01:00
bubnikv 6c4b4f4d12 Compilation fix on gcc,
fix of a maximum layer height limit for variable layer height editing.
2017-02-09 17:09:19 +01:00
bubnikv adb218e605 Changed layer leight limits label on the UI. 2017-02-09 16:21:48 +01:00
bubnikv b30501b411 Limit the maximum support layer height by the maximum layer height
value defined at the printer's nozzle.
Internal filtering of empty support layers to avoid generating
unnecessary Z moves.
2017-02-09 16:19:14 +01:00
bubnikv 0aa66b9608 Added var/variable_layer_height_reset.png - a reset button image
for the variable layer height bar.
2017-02-09 14:57:11 +01:00
bubnikv 88e34ff5de Store / retrieve layer height profile from the AMF file.
Reset the layer height profile when changing a print profile to an incompatible one.
Reset button on the layer height bar.
Fixed an update issue on zooming by a scroll wheel.
Fixed an issue when loading an AMF file: Object names are now retained.
2017-02-09 14:56:13 +01:00
bubnikv 6b1a72aac9 Fix of Post processing scripst not working:
https://github.com/alexrj/Slic3r/issues/3698

This is really a patch as it does not let the user to use the semicolon
inside a script invocation line.
2017-02-08 10:35:21 +01:00
bubnikv e7718b385f Added a "variable layer height" icon, active on OSX initially. 2017-02-07 19:01:58 +01:00
bubnikv 957803e60c Added min_layer_height, max_layer_height per nozzle settings
for controlling the support layer height & variable layer height.
Added an experimental "rear" seam option.
2017-02-07 18:46:02 +01:00
bubnikv 64c752ff9d Extended the Slic3r::GUI::Tab::XXX::_update mechanism to deliver
a set of updated config keys.
2017-02-07 18:41:09 +01:00
bubnikv e386a2bf72 Documentation of the UI config update functions,
documented missing AMF support for the variable layer thickness.
2017-02-07 18:28:53 +01:00
bubnikv 43ac693900 Added a tooltip overlay for the variable layer height edit tool.
Short methods of PrintState made inline.
Added layer height profile to a Model class.
2017-02-07 18:17:12 +01:00
bubnikv aceb87d188 Change of defaults. Background processing disabled by default,
default mode set to expert.
2017-02-07 13:21:09 +01:00
bubnikv 8474f77db4 Enabled the variable layer height in the builds by default. 2017-02-03 15:53:31 +01:00
bubnikv 7e6390c4b6 Avoid placement of seams on bridging perimeters, if random seam is enabled.
https://github.com/alexrj/Slic3r/issues/3526#issuecomment-263125049
2017-02-02 18:49:33 +01:00
bubnikv 4256af22ff Created a total_lengt() free function for Polygons and Polylines.
Modified the "extra perimeters when needed" function to use the new free functions,
extended the tooltip of the "extra perimeters when needed" feature.
2017-02-02 16:03:32 +01:00
bubnikv c25ae35737 Fix of https://github.com/prusa3d/Slic3r/issues/75
Fixed by @alexr https://github.com/alexrj/Slic3r/commit/8f0d8f209628e0dec825a15988de434dfb052940
See also https://github.com/alexrj/Slic3r/issues/3613 https://github.com/alexrj/Slic3r/pull/3614
2017-02-02 15:09:22 +01:00
bubnikv c2ddf537c6 Fixed a newly introduced bug in the multi material UI dialog. 2017-01-31 11:38:07 +01:00
bubnikv 817d827f7a GCodeWriter - made tiny methods inline. 2017-01-30 19:57:20 +01:00
bubnikv 4ab972b87a When the support extruders are set to 0, support is printed with the current material without a tool change.
A fix of support path generator.
2017-01-30 19:56:46 +01:00
bubnikv 4e90ae9a28 FillRectilinear2:
Fix of a degenerate case, where there is a vertical segment on this vertical line and the contour
follows from left to right or vice versa, leading to low,low or high,high intersections.
2017-01-29 00:20:09 +01:00
bubnikv 0ca230a197 Supports - trimming base support layers with the bottom surfaces. 2017-01-26 12:02:10 +01:00
bubnikv 22124e5f61 Multiple bug fixes in the new support generator to guarantee gap
between object and support.
2017-01-25 18:33:05 +01:00
bubnikv a74aaca681 Disable support interface loops by default. 2017-01-25 18:29:10 +01:00
bubnikv 1699864b8a utility class ClosestPointInRadiusLookup 2017-01-25 18:26:06 +01:00
bubnikv c5843988c0 ExtrusionEntity - add only valid polylines 2017-01-25 18:25:14 +01:00
bubnikv 40eaf144f0 new function remove_degenerate(Polylines ...) 2017-01-25 18:23:57 +01:00
bubnikv c46b6ca27e ExtrusionMultiPath perl binding - polyline() method. 2017-01-25 18:22:29 +01:00
bubnikv 081c1d681c Fixed preview of ExtrusionMultiPath instances. 2017-01-20 20:20:41 +01:00
bubnikv c0b3de6248 Hopefully fixes https://github.com/prusa3d/Slic3r/issues/90
Latest master segfaults with perl 5.24.1 #90
The fix achives similar goal to https://github.com/alexrj/Slic3r/pull/3575
but it is simpler.
2017-01-20 16:56:37 +01:00
bubnikv 3985f50c5b Added new file: ExtrusionMultiPath.xsp
Fixed a missing copy constructor of ExtrusionPath.
2017-01-20 15:41:50 +01:00
bubnikv ff25c0ccc2 Improvements of the new support generator:
Variable path thickness for all support layers to avoid over-extrusion.
Supports only in grid cells below the top contacts.
Provision for filtering excessively long perimeter pieces of the support infill lines.
2017-01-20 15:21:05 +01:00
bubnikv 08351b5e48 Fix of ExtrusionMultiPath binding to Perl & G-code generator. 2017-01-20 15:17:32 +01:00
bubnikv 29b986fa76 Improvement of the move semantics on various objects:
The source object will be empty after the move operation.
2017-01-20 14:39:44 +01:00
bubnikv d5f9db76b3 Fix of an inconsistent bottom contact layer thickness
in case two and more bottom contact layers overlap after their extension.

New method modulate_extrusion_by_overlapping_layers() reduces thickness
of an extrusion path where it overlaps in Z with some other paths.

The same trick has yet to be applied to the layers overlapping in Z with
top contact surfaces.
2017-01-19 13:47:06 +01:00
bubnikv 0b90ebd74e Move semantics on MultiPoint, Polygon, Polyline.
Append methods on Polyline.
squared length function on point->DistanceTo
2017-01-19 13:43:29 +01:00
bubnikv 50cdf8e6d1 Move semantics for ExtrusionEntityCollection 2017-01-19 13:37:15 +01:00
bubnikv e016c4e423 New extrusion class: ExtrusionMultiPath
This is similar to an ExtrusionLoop, but it is open.
It may contain multiple chained paths with differing parameters.
This allows one to have a hierarchy of paths, where the ExtrusionEntityCollection
will be chained by the G-code generator, but ExtrusionMultiPath will not.
2017-01-19 13:35:55 +01:00
bubnikv e6b441eea4 Merge branch 'master' of https://github.com/prusa3d/Slic3r 2017-01-16 10:57:06 +01:00
bubnikv 4eed07bbab Fix of the 1st support layer. 2017-01-16 10:56:40 +01:00
bubnikv a747a87e83 Merge pull request #94 from eyal0/fix_rpi_less_than
Change char to int because char might be unsigned
2017-01-12 10:59:22 +01:00
bubnikv 41fbec9063 Only synchronize intermediate layers if explicitely asked for. 2017-01-11 18:05:03 +01:00
bubnikv f0cf7adf84 Bugfix of a new support - first layer thickness of the support. 2017-01-11 17:22:28 +01:00
bubnikv c2ba5901e4 Copy / move assign operators for ExPolygon. 2017-01-11 14:38:24 +01:00
bubnikv c632d08550 Only compile debug output functions for SupportGenerator if SLIC3R_DEBUG is enabled. 2017-01-11 14:37:53 +01:00
bubnikv 87964eb57a Move semantics for the ExPolygon constructor. 2017-01-11 13:44:11 +01:00
bubnikv bd3daeed5a Slightly more efficient PrintObject Layer destruction. 2017-01-11 13:43:33 +01:00
bubnikv fa1506c833 Bugfix of duplicate support print paths. 2017-01-11 13:42:41 +01:00
bubnikv d9ea3df85f Another step to make the new C++ supports working.
Added support_material_xy_spacing configuration.
2017-01-05 09:14:59 +01:00
bubnikv 1ba03af2da Made the config value support_material_xy_spacing relative
to the external perimeter width.
2017-01-05 09:12:24 +01:00
bubnikv bbdaa44acb Const version of a PrintObject::get_region(). Made get_region() inline. 2017-01-05 09:11:36 +01:00
bubnikv b42c5d6dfa Extended the SVG exporting class with export_expolygons()
calculating the contour bounds internally.
2017-01-05 09:10:16 +01:00
bubnikv aad3d4107f Improved debugging of the EdgeGrid distance field function. 2017-01-05 09:09:26 +01:00
bubnikv 07dd06c53c Merge remote-tracking branch 'origin/supports-synchronize-layers' 2017-01-03 10:51:23 +01:00
bubnikv 7a2572a0fb Improved debugging of "ensure vertical wall thickness" feature. 2017-01-03 10:51:19 +01:00
bubnikv 17db5bff8d Fix of
Number of solid top/bottom layers ignored,
Ensure Vertical Shell Thickness interferes with solid top layer count
https://github.com/prusa3d/Slic3r/issues/79
https://github.com/prusa3d/Slic3r/issues/60
2017-01-02 16:51:43 +01:00
bubnikv 479f716625 Improvements in the manual layer width editor. 2016-12-21 16:00:41 +01:00
bubnikv 955bc957ba New supports now do rafts at least to the extent the test cases run through.
New supports enabled, old supports will go away soon.
2016-12-20 12:19:13 +01:00
bubnikv 5614e997a4 Merge pull request #43 from ctgreybeard/dev
xs/Build.pl fails to find boost libraries
2016-12-15 12:55:19 +01:00
bubnikv 6400cec7ae Merge branch 'master' into dev 2016-12-15 12:54:34 +01:00
bubnikv c1f4d06be2 define -DBOOST_LOG_DYN_LINK for boost::log 2016-12-15 09:46:41 +01:00
bubnikv 56e87e3bdb Set BOOST_LOG_DYN_LINK symbol when linking with dynamic boost libraries. 2016-12-14 16:51:27 +01:00
bubnikv a870b69733 Fixed static linking against boost. 2016-12-14 15:43:26 +01:00
bubnikv ff0a8956ee Fixed previous checkin. 2016-12-14 15:42:38 +01:00
bubnikv c79e1cc89b Fixed UI bug on OSX, experimental features made switchable through
environment.
2016-12-14 15:36:18 +01:00
bubnikv 79ff013ea7 Fixed crashes on shader destruction on OSX. 2016-12-14 15:09:12 +01:00
bubnikv ae2e37b4bd Added diagnostics of @LIBS, @INCS to the Build.PL
Extended MANIFEST with new files.
2016-12-13 22:46:28 +01:00
bubnikv 2cd96cabcd Another take to get rid of the templates from the ClipperUtil.hpp
to compile cleanly on OSX.
2016-12-13 22:13:02 +01:00
bubnikv 852b542913 Had troubles with the template instantiation on OSX, so I reverted
them to overloaded functions. This is certainly easier to read and
work with anyway.
2016-12-13 21:30:56 +01:00
bubnikv ddea33d93a Fixed compilation of ClipperUtils on GCC, which is more strict
than VS2013 compiler.
2016-12-13 19:52:28 +01:00
bubnikv e64dcf5e59 VS2013 could compile this, let's hope GCC will as well. 2016-12-13 19:39:20 +01:00
bubnikv 6582182e0c Adapted to the new ClipperUtils.hpp interface by @alexrj 2016-12-13 19:22:23 +01:00
bubnikv b2a5a1d22f Added a move constructor / assignment operator to the old Clipper library
PolyTree class.
2016-12-13 18:59:18 +01:00
bubnikv e22d007ab7 Fixed typo, missing class name. 2016-12-12 23:46:50 +01:00
bubnikv 06540f73f7 Try to fix compilation problems due to Perl crazy macros. 2016-12-12 19:13:33 +01:00
bubnikv ce7717e450 Fix compilation on Linux. 2016-12-12 18:59:35 +01:00
bubnikv e5b77e08de Perl crazy macros strike again, they collide with boost threads. 2016-12-12 18:55:04 +01:00
bubnikv 46b44fc141 User interface of the variable layer thickness. Certainly not finished yet,
but sufficient for evaluation of the prints.
2016-12-12 18:02:24 +01:00
bubnikv 2d030f3a3c Most of the slicing code rewritten to C++. 2016-12-12 17:56:37 +01:00
bubnikv 1ea958158a Support for user definable variable layer thickness, the C++ backend. 2016-12-12 17:53:38 +01:00
bubnikv 2ab86a4895 ConfigOptionVector::get_at(idx)
Avoid using exceptons for normal work flow. Assert if the vector is empty.
2016-12-12 15:56:42 +01:00
bubnikv d775c6c14c Added methods set/add to SurfaceCollection. 2016-12-12 15:54:37 +01:00
bubnikv 333a0b1c0e Shortcuts for zero mesh transformations. 2016-12-12 15:52:04 +01:00
bubnikv 933a0db9ed Minor fix of bridging flow, see @alexrj 3a3b24ec7c803c58919a5401e5804261999875b4 2016-12-12 15:33:14 +01:00
bubnikv 126126cc78 Fixes after the merge of changes by @alexrj. 2016-12-08 19:02:16 +01:00
bubnikv 5d18657ac5 Don't be lazy, use fully qualified Slic3r::Polygon/ExPolygon/Point/Line names 2016-12-08 15:16:09 +01:00
bubnikv 3e8cafa857 Fix of ASCII STL parser. Accept a model even with invalid normals. 2016-12-05 11:39:17 +01:00
bubnikv 330ffed87e Adjusted copyright header of the Perl GLShader module. 2016-12-02 11:19:27 +01:00
bubnikv 7e1af658b6 Initial experiments with vertex / fragment shaders,
prototype to visualize layer thickness.
2016-12-02 11:14:24 +01:00
bubnikv bd618569e1 Print the supports before the object layer at the same height. 2016-11-30 18:54:19 +01:00
bubnikv 26a8017e99 Made the support interface contact loops configurable. 2016-11-30 17:33:55 +01:00
bubnikv 38cb2842ac support_material_synchronize_layers implementation 2016-11-30 16:06:12 +01:00
bubnikv 556204fddc support_material_synchronize_layers configuration value
for synchronization of object layers with print layers.
2016-11-30 16:04:15 +01:00
bubnikv 946b36bb4d Supports using the EdgeGrid simplify_contour 2016-11-29 19:30:59 +01:00