Alessandro Ranellucci
6649888d1c
Support decimal scaling factors and rotation angles. #1617
2017-02-21 16:43:47 +01:00
Joseph Lenox
873161ea7c
Only enable movers if modifier mesh.
2017-02-21 16:30:13 +01:00
Joseph Lenox
e2b56c4462
Repair the generic mesh so it can be exported.
2017-02-21 16:29:57 +01:00
Joseph Lenox
4f428fae40
Added UI options to make a slab, defaulting to the model object's bounding box * 1.5
2017-02-21 16:29:42 +01:00
Joseph Lenox
6aecae3121
UI: fixed naming sphere is not a cylinder.
2017-02-21 16:29:32 +01:00
Joseph Lenox
2971235299
UI code to generate a generic sphere.
2017-02-21 16:29:21 +01:00
Joseph Lenox
716dc2e650
Made cube and cylinder static functions of the package, not some specific TriangleMesh object.
2017-02-21 16:11:52 +01:00
Joseph Lenox
26b6e4c619
Disable sliders if a volume is not selected.
2017-02-21 16:11:41 +01:00
Joseph Lenox
2eea139731
UI now changes its options based on the object type selected.
2017-02-21 16:11:22 +01:00
Joseph Lenox
3ee32ef153
Menu now works to select cylinders (reusing the gui options)
2017-02-21 16:11:09 +01:00
Joseph Lenox
b91b98b21e
Added prototype make_cylinder()
2017-02-21 16:10:38 +01:00
Joseph Lenox
ff33fbbb9a
Use LambdaObjectDialog in GUI.pm to avoid crash on Windows.
2017-02-21 16:09:51 +01:00
Joseph Lenox
107c89d37b
Removed commented code.
2017-02-21 16:04:45 +01:00
Joseph Lenox
a0548898f3
Added a cancel button, and rewrote initial option code to reuse OptionGroup.
2017-02-21 16:04:02 +01:00
Joseph Lenox
3109a9bc1f
Update main plater view after moving mesh
2017-02-21 16:03:46 +01:00
Joseph Lenox
33f489bba9
Anonymous object supports. Initial implementation provides for a box of arbitrary size.
2017-02-21 16:03:19 +01:00
Joseph Lenox
e93cc13698
Permit sliding modifer meshes around in the Settings dialog.
2017-02-21 16:02:56 +01:00
Alessandro Ranellucci
a65c9ba083
Ported CoolingBuffer to C++/XS
2017-02-21 14:02:47 +01:00
Alessandro Ranellucci
c517b0d8f1
Bugfix: object disappeared from 2D plater when reloaded from disk. #3634
2017-02-21 13:57:40 +01:00
Sebastianv650
b8ece2af06
Pressure advance overrides print speeds patch ( #3287 )
...
* Fix PressureRegulation.pm
Check if a pressure advance is needed even if speed is unchanged, but a discharge happened before. Restore print speed after advance / discharge. Solves #3282
2017-02-21 13:09:12 +01:00
Joseph Lenox
27a1a6609f
Fixed input to bed shape dialog to catch everything that resolves to 0. Fixes #3681 ( #3683 )
2017-02-21 13:07:15 +01:00
Joseph Lenox
b022e51d94
Don't reset speed on flush moves (avoid use of uninitialized variable).
2017-02-21 13:02:16 +01:00
bubnikv
8aae5bdb28
The variable layer editing shader was made OpenGL 2.0 compatible.
...
Fixed a bug in the scaling of colors for the variable layer editing.
2017-02-21 09:39:28 +01:00
bubnikv
8cfdc28f2b
Implemented a level of detail on the variable layer height editing tool.
2017-02-20 21:54:53 +01:00
bubnikv
6e19921f98
Fix a warning on Linux / OSX.
2017-02-19 19:44:05 +01:00
bubnikv
a8eb217e4a
System Info dialog made nicer.
...
Fixed a bug in reporting a software renderer on Windows.
2017-02-19 19:08:58 +01:00
bubnikv
898deb48c4
Error reporting on initialization of the Layer Editing OpenGL shaders.
...
The shaders are initialized when the layer editing button is pressed
for the first time. If the initialization fails, a message box
is shown and the layer editing will stay disabled.
2017-02-19 18:01:03 +01:00
bubnikv
70229be9bc
Added SystemInfo dialog,
...
a new SLIC3R_BUILD define to be replaced by the build script,
a menu item to open the "New Issue" github page.
2017-02-19 16:04:57 +01:00
bubnikv
89702a5b4e
Fixing an update of the "Export G-code, Send to printer" and similar buttons.
...
It is a bug, which was lingering around for a long time, only now
the buggy function is called at a time point, where it really hurts.
https://github.com/prusa3d/Slic3r/issues/137
2017-02-17 15:11:59 +01:00
bubnikv
31f213d6ca
Hopefully fixes "Export G-Code" Disabled After First Export"
...
https://github.com/prusa3d/Slic3r/issues/137
2017-02-17 15:00:01 +01:00
bubnikv
2ddabe5fa8
Show the print statistics only if it has valid information to show.
...
The old behavior was confusing, leading to questions like the following:
https://github.com/prusa3d/Slic3r/issues/130
2017-02-15 16:02:54 +01:00
bubnikv
35490216a7
Fixes the order of a skirt, raft, support & object on the 1st layer.
2017-02-15 12:31:14 +01:00
bubnikv
3d11d1aebf
make_skirt ported to C++
2017-02-15 11:05:52 +01:00
bubnikv
420e387055
new feature: Clip multi-part objects one by the other.
...
This works the same way as if the XY compensation was set to a tiny value
before, but without the overhead of an offset.
2017-02-14 12:36:04 +01:00
bubnikv
ce8973b33a
Fixed a bug in renaming a G-code at the end of a G-code export
...
from .tmp suffix to a non .tmp file on localized Windows.
2017-02-13 15:45:31 +01:00
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
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
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
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