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
Joseph Lenox
abda054720
Cherry-picked Repetier acceleration fixes, thanks to @lordofhyphens
...
e0d8101627
885f27b8ae
Added a printer settings to enable / disable variable layer height editing.
2017-02-10 09:39:19 +01:00
Klim
98edb4f854
fix for issue #57 ( #63 )
2017-02-09 21:59:57 +01:00
bubnikv
db30cee6a9
Fixed the 'iso' camera orientation.
2017-02-09 21:40:07 +01:00
bubnikv
adb218e605
Changed layer leight limits label on the UI.
2017-02-09 16:21:48 +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
Joseph Lenox
61c0ae4e94
Changed filament density to use g/cm^3. Extended tooltip to indicate calculation methods.
2017-02-08 11:40:52 +01:00
Joseph Lenox
90d3535520
Added second information box that populates after exporting gcode for sliced statistics.
2017-02-08 11:40:36 +01:00
Joseph Lenox
203a965b3d
added total cost/weight to Extruder statistics, mocked up addendum to status bar change.
2017-02-08 11:40:01 +01:00
Joseph Lenox
3846d9e734
Add weight/cost output to gcode. On the way to #647
2017-02-08 11:39:45 +01:00
Alessandro Ranellucci
bbd63616b1
Write to a temporary file before renaming with the final name. #1844
2017-02-08 11:27:15 +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
c2ddf537c6
Fixed a newly introduced bug in the multi material UI dialog.
2017-01-31 11:38:07 +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
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
08351b5e48
Fix of ExtrusionMultiPath binding to Perl & G-code generator.
2017-01-20 15:17:32 +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
slicer-builder
bb22f1dc8a
prototyping tweakable XY supports;
...
option should be present now in advanced support menu.
Can't figure out what's going on atm; support should be moving but isn't
2017-01-03 11:46:52 +01:00
Joseph Lenox
f63c21f0f3
Added a feature to increase gap between object in XY and generated supports.
...
Advanced feature, may not generate supports that are printable.
2017-01-03 11:43:18 +01:00
Joseph Lenox
4b2bc29b14
set support spacing option if support is off
2017-01-03 11:40:45 +01:00
bubnikv
07dd06c53c
Merge remote-tracking branch 'origin/supports-synchronize-layers'
2017-01-03 10:51:23 +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
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
6582182e0c
Adapted to the new ClipperUtils.hpp interface by @alexrj
2016-12-13 19:22:23 +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
Alessandro Ranellucci
9c0c05631c
Ignore failure to call SetAutoPop when not available. #3596 @alexrj 2e82fb01a65deb4e0872de9219f47e58b7000ebf
2016-12-08 14:55:48 +01:00
Alessandro Ranellucci
5dc8a0808e
Maybe the Travis CI server has more than 16 cores?
2016-12-08 14:52:42 +01:00
Alessandro Ranellucci
d8082b9db4
Try to fix compilation error about the new threads default
2016-12-08 14:52:15 +01:00
Alessandro Ranellucci
9e8dae817d
Fixes and improvements to the view selection menu, cherry picked from @alexrj a7693c4719c0e0e0129aea7461706d2ed53a52cc
2016-12-08 14:51:35 +01:00
Alessandro Ranellucci
86c8207d31
Ported make_perimeters() and infill() to C++/XS, use pure C++ threads, cherry picked from @alexrj 66591bcc556c01572ec7519b1f8cb4ee2d430685
2016-12-08 14:24:40 +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
695c92fb00
CLIPPER_OFFSET_SCALE was made a power of two, the scaling functions
...
inside ClipperUtils are now using bit shifts instead of multiplication
by doubles, which makes the scaling precise.
Removed the scale parameter from all offset functions.
Modified the safety offset to calculate offset per polygon instead
of over all polygons at once. The old way was not safe and very slow,
sometimes this meant a kiss of death for supports for example.
2016-11-28 17:33:17 +01:00
bubnikv
0d20a81354
Log support through boost::log
2016-11-24 13:44:51 +01:00
bubnikv
a069c41b20
On Windows, load the icon either from the exe, or fron the ico file.
2016-11-20 14:22:26 +01:00
bubnikv
79f5a16536
Reverted the perimeter generator to not save the perimeter areas.
...
These could be calculated from the fill areas if needed.
On the other side, the non-classified (non-split) fill areas are stored
now for use in the "ensure vertical wall thickness" feature,
also the non-split fill areas are re-used when recalculating the infills.
This is safer than trying to stitch the fill region together from the
classified fragments.
Modified the "ensure vertical wall thickness" feature to use the non-split
fill areas instead of perimeter areas for the calculation
of non-supported regions. This is cheaper as the fill areas contain
roughly half the edges.
2016-11-17 23:22:59 +01:00
bubnikv
50f06a0fe8
Increased the gimbal lock threshold to 170 degrees from 150 degrees.
...
This makes it possible to look at the bottom of an object.
2016-11-16 09:24:27 +01:00
bubnikv
7f1704b2ac
Disabled live preview by default as it is not stable and/or the calculation takes too long for interactive usage.
2016-11-13 23:35:56 +01:00
bubnikv
1070f0c0af
New feature: Propose to enable "detect bridging perimeters"
...
when the supports are first enabled. Don't check keep asking,
if the user does not want the bridging perimeters to be enabled.
2016-11-11 15:05:39 +01:00
bubnikv
f4ee87ba24
Fixed https://github.com/prusa3d/Slic3r/issues/27
2016-11-11 12:00:40 +01:00
bubnikv
4460b5ce50
re-wrote PrintObject::detect_surfaces_type() to C++,
...
Fixed some cracks in the fill surfaces created by rounding all surfaces inside detect_surface_type().
Fixed https://github.com/prusa3d/Slic3r/issues/12
Bridging-Angle not optimal
Extended the "Ensure veritcal wall thickness" mode (merged with the original discover_horizontal_shells function), but this a work in progress. Already Slic3r with "ensure vertical wall thickness" produces less spurious infills inside solids.
2016-11-10 19:23:01 +01:00
bubnikv
eb0ab38618
Fixes https://github.com/prusa3d/Slic3r/issues/26
...
Strange behavior of Extra perimeters and ensure wall thickness
Old behavior is re-enabled when ensure vertical wall thickness is off.
2016-11-09 10:24:45 +01:00
bubnikv
e15b5f4587
Fix of https://github.com/prusa3d/Slic3r/issues/16
...
Crashes while switching in preview through layers with arrow keys
Also added a check box to visualize a single layer only
in the 3D path view. The check box may be toggled with a 'S' key.
Added shift+U / shift+D buttons in the 3D path view to show a single
layer only.
2016-11-08 17:13:16 +01:00
bubnikv
b8590180d8
Fix of https://github.com/prusa3d/Slic3r/issues/20
...
Slicing preview incorrect in terms of visible solid layers
2016-11-08 15:33:13 +01:00
bubnikv
bfb336df0c
Refactored Print::validate() method to not throw an exception, but
...
to return a string with an error message instead. This was necessary
to avoid a hang-up on some Strawberry Perl distributions, when
a perl "croak" function is called after a C++ exception is caught.
2016-11-05 02:23:46 +01:00
bubnikv
6217622865
Hopefully a fix of https://github.com/prusa3d/Slic3r/issues/11
...
Replaced eval { die } construct with a bool return value indicating
success or failure of an automatic arrangement of parts on the print bed.
Don't know exactly what is happening here, but throwing a "die" inside
a XS function and then catching it inside an eval {} block is suspcious.
2016-11-04 15:03:51 +01:00
bubnikv
12b7818caa
Only call wxWidgets method wxApp::SetAppDisplayName for wxWidgets 3.0
...
and newer.
2016-11-03 09:15:30 +01:00
bubnikv
95ede7c4b8
Rewrote Fill2.pm to C++, deleted Perl infills for good.
...
Removed dependency on Perl Math::PlanePath module.
Fixed compilation with Visual Studio and SLIC3R_DEBUG: Visual Studio older than 2015 does not support the prinf type specifier %zu. Use %Iu instead.
C++11 move semantics enabled.
2016-11-02 10:47:00 +01:00
bubnikv
3d3654707b
Added "Notes" page to the filament configuration.
...
Added "filament_max_volumetric_speed", a cap on the maximum volumetric
extrusion role, filament specific. This is very useful when mixing
rigid filament with a soft filament.
Extended the import / export of multi-string values into configuration
values, including the test cases. Multi-line strings will be enclosed
into quotes, quotes escaped using a C-style escape sequences. Single
word strings could still be stored without quotes.
2016-11-01 13:41:24 +01:00
bubnikv
34fab1566f
"Background slice now" function, initial implementation by @lordofhyphens
...
https://github.com/alexrj/Slic3r/pull/3501
2016-10-25 13:24:42 +02:00
bubnikv
34248c2fbf
On Windows use the Slic3r.ico instead of the PNG file
...
for the application icon.
2016-10-24 18:05:26 +02:00
bubnikv
51c8d73b11
Fixed a division by zero in 3D scene, if there is nothing to show.
...
Improved Prusa3D icon.
2016-10-24 17:32:22 +02:00
bubnikv
741a85187c
Suppress the '- default -' selection of Print/Filament/Printer settings
...
if there is any valid option available. This feature has been asked for
by the Prusa3D customers as the '- default -' option has nothing to do
with the actual printer and when selected accidentally, it could even
lead to a printer damage.
2016-10-24 16:07:36 +02:00
bubnikv
250ff451ba
by alexrj: Fixes in GCodeSender to reset the connection after it breaks.
...
by alexrj: Fix in mouse handling of 2DBed.
by alexrj: ClipperUtils for ExPolygon vs. ExPolygon
2016-10-24 14:07:38 +02:00
bubnikv
1fb57e439e
Defined the +-* operators on Pointf.
...
Removed the deprecated VibrationLimit feature.
Added triangle infill.
The Prusa3D fork of Slic3r has been marked as "Slic3r Prusa Edition"
with menus pointing to the prusa3d/slic3r github release page
and Prusa3D drivers downloads page.
2016-10-21 16:53:42 +02:00
bubnikv
15d3e94a66
Unified the creation of paths of debugging output files
...
pointing to a predefined output directory.
2016-10-21 10:18:01 +02:00
bubnikv
9e4edcd8ec
Enabled the C++ fillers for all infills, not just the supports.
...
Made sure the C++ fillers are instantiated at the worker threads,
where there are being released.
Extended the FillRectilinear2 to calculate the contour / line intersection
with exact arithmetics, improved robustness and added error handling
and error reporting, if the contours to be filled are not correct.
2016-10-20 17:44:46 +02:00
bubnikv
53907a9cfe
Fix of a crash when setting a viewport over an empty platter.
...
Exported bounding box 'empty' method to perl.
2016-10-18 16:44:05 +02:00
bubnikv
c0956dbd34
Disable debugging output from the Filler2.pm
2016-10-17 17:16:02 +02:00
bubnikv
47cc9687a0
Added a new switch: ensure_vertical_shell_thickness
...
This enables a zig-zag infill similar to Cura or Simplify3D
on overhangs.
2016-10-16 22:11:19 +02:00
bubnikv
7d7f093120
C++ supports sketched, but not finalized yet. Slic3r is still using
...
the old Perl supports, but this time with the C++ fillers.
2016-10-16 16:30:56 +02:00
bubnikv
ee4b9ab82f
Select standard camera views (left / right / top / bottom / front / rear / default)
...
by menu.
2016-10-05 14:13:07 +02:00
bubnikv
5268574ade
Made the sheath around the base support configurable. Without the sheath
...
it is easier to remove the support, but the support is more fragile.
2016-10-04 14:38:13 +02:00
bubnikv
5bb37ad2c4
A new feature "support_material_buildplate_only" implemented.
...
Also a bug has been fixed for zero interface layers. Before
slic3r would put infinite number of interface layers over top surfaces,
if the number of interface layers was set to zero.
2016-10-04 13:54:10 +02:00
bubnikv
ae2bae137a
Added a low layer slider into the 3D preview window.
...
This is to limit the preview to a span of layers.
2016-10-03 17:01:29 +02:00
bubnikv
b7af7276c9
Instantiate the new C++ filler. It will be used for the supports first.
2016-10-03 16:59:00 +02:00
bubnikv
403329db49
Misc bugfixes.
2016-09-26 13:58:47 +02:00
bubnikv
790b640521
Visualization of fill surfaces.
2016-09-26 13:56:24 +02:00
bubnikv
8f04f5d5f6
Don't adjust width of infill. It produces dangerously wide fills.
...
If the infill flow adjustment is enabled, report cases,
where the infill flow grows over the limits.
Make the internal bridging infill 50% sparse.
2016-09-26 13:38:37 +02:00
bubnikv
6950ce3bcf
Report when the threading is disabled and when the debugging output
...
is enabled.
Two new environment variables are respected:
SLIC3R_SINGLETHREADED and SLIC3R_DEBUGOUT.
2016-09-26 12:57:15 +02:00
bubnikv
a506030082
Draft of a 3D toolpaths preview.
2016-09-26 12:38:29 +02:00
bubnikv
565146d9d1
Fix of a spiral vase with realtive extruder distances enabled.
...
The clone function is used by the SpiralVase.pm only, so the change
is safe.
2016-09-23 12:59:20 +02:00
bubnikv
6e97b9bb73
Optimization of the layer offsets in 3D visualization.
2016-09-15 12:26:53 +02:00
bubnikv
a53bd3dfe9
Generate multiple vertex lists rather than requesting a single huge
...
memory block.
2016-09-15 00:06:42 +02:00
bubnikv
2a5095a1ea
OpenGL support through GLEW. Only active if compiled with SLIC3R_GUI=1.
2016-09-14 16:31:26 +02:00
bubnikv
4c67230436
Documented the purpose of various perl modules.
2016-09-14 11:22:41 +02:00
bubnikv
55218c8c4d
Documented.
...
Fixed rough Z buffer quantization issues with ortographic camera.
Initial implementation of a perspective camera.
2016-09-14 09:38:59 +02:00
bubnikv
15c1edd552
Configurable volumetric extrusion rate slope.
2016-09-13 15:02:28 +02:00
bubnikv
b2a6f43923
Documented perl modules.
2016-09-13 11:24:55 +02:00
bubnikv
6dfe4c0b96
Debugging code: Storing the test STLs inlined in the Perl code into a file.
2016-09-13 09:48:29 +02:00
bubnikv
f518e0675c
Initial commit of the new Pressure Equalizer, the EdgeGrid
...
signed distance field structure.
The EdgeGrid is used to avoid placing the seams on overhangs.
2016-09-12 16:25:15 +02:00
bubnikv
9a83d4e8d5
Reverted some now unnecessary changes. Reverted the infill to the original perl implementation.
2016-09-12 13:26:17 +02:00
bubnikv
9fcc8fe9ae
Meged with release_candidate_1_3
2016-09-12 11:29:39 +02:00