Lukas Matena
4583d62edd
Merge branch 'master' into wipe_tower_improvements
2017-12-21 13:47:33 +01:00
bubnikv
7142126609
Grey out the compatible_printers_condition edit field in case
...
the compatible_printers list is non empty.
Changed the precendence of compatible_printers_condition over
compatible_printers. Now compatible_printers has precedence.
2017-12-20 13:32:02 +01:00
bubnikv
558a0753c1
Improved loading of the config wizard results.
...
Fixed some updates of the "compatible with printer" flags
at the print and filament presets.
2017-12-20 11:28:16 +01:00
bubnikv
c49d6a3ec7
Try to fix the config wizard initialization on OSX.
...
There is an issue when the config wizard is started from the help
menu and the "other" workflow is followed without clearing
the user profile directory.
2017-12-19 21:43:24 +01:00
bubnikv
67c6823dde
Fixed a regression bug in the display of a filament name on the print
...
controller tab.
2017-12-19 21:12:24 +01:00
bubnikv
c3468f2ad9
Fix of preset selection.
2017-12-19 20:58:16 +01:00
bubnikv
0b6bd3cbde
Implemented a "Reset user profile" on the first page of the configuration
...
wizard if the wizard is opened from the menu. This allows one
to reinstall the bundled printer profile cleanly.
Fixed a bug when loading a config bundle as a config: The config bundle
should not be unpacked into the user profile directory.
2017-12-19 19:51:22 +01:00
bubnikv
6b81f43206
First implementation of the "compatible_printers_condition"
...
for the print and filament profiles.
Added documentation for building the boost library for Slic3r on Linux.
2017-12-18 15:07:38 +01:00
bubnikv
88e9ba510b
Run the wizard from OnIdle routine to be executed first after the UI
...
is initialized. This is necessary for the UI to initialize correctly
on OSX.
2017-12-14 17:35:06 +01:00
bubnikv
4bbe328117
Config wizard will prompt user to copy the profiles from Slic3r to Slic3rPE
...
if the datadir is left to the default value (which is Slic3r),
and Slic3rPE directory exists.
2017-12-14 13:47:22 +01:00
Enrico Turri
0fe855cd6d
Time estimate shown in GUI as formatted string / Write to file made by class GCode's private methods
2017-12-14 09:18:28 +01:00
bubnikv
d47dc5da3e
Fixed update of "dirty" profile when the "compatible_printers"
...
option appears (filter is active) or disappears (no filter active,
compatible with any printer).
2017-12-13 14:44:27 +01:00
bubnikv
898c697f13
Update the maximum volumetric flow hint at the filament page
...
when the page gets activated, so that the print & printer profile changes
are reflected immediately.
2017-12-13 14:12:47 +01:00
bubnikv
21b4e62e6e
Fixed handling of print and filament presets incompatible
...
with the newly selected print profile,
fixed loading of print and filament tab pages after the print or filament
preset has been changed to be compatible with a newly selected printer.
2017-12-13 14:00:14 +01:00
bubnikv
673e98bc83
When the legacy OpenGL 1.2 is enforced, suppress anti aliasing as well.
...
Let's hope it will be a valid workaround for the reoccuring
buggy Intel HD Graphics driver issue.
2017-12-12 20:47:36 +01:00
bubnikv
743fc9dbd0
Workaround for buggy Intel HD Graphics OpenGL drivers:
...
Fall back to OpenGL 1.1 by a "use_legacy_opengl" preferences switch.
https://github.com/prusa3d/Slic3r/issues/233
https://github.com/prusa3d/Slic3r/issues/268
https://github.com/prusa3d/Slic3r/issues/619
2017-12-11 18:00:51 +01:00
Enrico Turri
50a45949d1
merge with master
2017-12-11 12:01:30 +01:00
Enrico Turri
bea9628be0
time estimation shown in GUI after gcode export
2017-12-11 11:11:54 +01:00
bubnikv
679aa2822c
Moved the Slic3rPE/print,filament,printer folders to
...
Slic3rPE/presets/print,filament,printer
to separate the presets from further data stored into the Slic3rPE
directory.
2017-12-10 22:11:00 +01:00
bubnikv
657f2734f1
Extended the Config Wizard to offer a selection of config bundles
...
bundled with Slic3r installation, and install it into user's Slic3r profile.
These bundled config bundles will be contained in the Slic3r source
tree under Slic3r/resources/profiles.
Breaking change! The Slic3r user directory has been renamed to Slic3rPE
for the Prusa Edition. Also it is likely, that the Slic3rPE directory
will be reorganized before the final 1.38 release to reserve space
for temporary profiles downloaded from the Internet.
2017-12-10 13:19:44 +01:00
bubnikv
2eeca93a97
Feature Request: Add to Plater: Ctrl+O
...
implements https://github.com/prusa3d/Slic3r/issues/379
thanks @alexrj
2017-12-05 20:06:19 +01:00
qtux
b0f84c5cb2
Add used filament length to the "Sliced Info" box ( #585 )
2017-12-05 19:05:49 +01:00
bubnikv
8746f84fa2
Improved error reporting of the PlaceholderParser.
...
The PlaceholderParser is currently used by the GCode.cpp
and by Printer.cpp to generate a new name for the exported G-code or SVG file.
The PlaceholderParser::process() will throw a runtime_error with
a comprehensive error message.
The G-code export will include these error messages into the G-code text
with !!!!!! separators, and the GUI will inform the user, that the G-code
export failed.
2017-12-05 15:54:24 +01:00
bubnikv
8af329e660
Added Perl to C++ interfaces for creating the preset editor pages
...
from C++ and to add debugging menus from C++. These lightweigth
interfaces should help new team members to hack the UI without
a Perl knowledge.
2017-12-04 10:48:40 +01:00
bubnikv
354408c7e6
Load the wxWidgets PNG handler only once.
2017-11-30 20:25:59 +01:00
bubnikv
a0268a1906
Some other accelerator keys were not displayed on Linux and OSX correctly.
...
Suppress them on these systems.
2017-11-30 20:13:05 +01:00
bubnikv
d161d4f78c
There is a hack applied to add accelerator keys to the menu
...
without being registered. Unfortunately this hack works on wxWidgets
on Windows. On OSX or Linux, a warning is emited and no accelerator
key is shown on the menu.
This commit just removes the warnings, it does not add the menu accelerators.
https://github.com/prusa3d/Slic3r/issues/539
2017-11-30 18:26:15 +01:00
bubnikv
a617e02ae6
New hot key for auto arrange: 'a'.
2017-11-30 17:45:03 +01:00
Lukas Matena
a733df8f37
Wipe tower rotation - preview box
2017-11-30 14:43:47 +01:00
Lukas Matena
2921302fe9
GUI integration of rotation angle setting
2017-11-30 12:08:22 +01:00
bubnikv
6aff27f3ab
Moved initialization of Slic3r XS datadir variable to GUI.pm
...
Solves https://github.com/prusa3d/Slic3r/issues/594
2017-11-30 10:22:39 +01:00
bubnikv
672194b475
Ported the between_objects_gcode custom G-code blocks,
...
thanks @lordofhyphens, https://github.com/alexrj/Slic3r/pull/3275
Improved handling of custom G-code blocks: Slic3r will try to extract
the target extruder and bed temperatures from the custom G-code blocks.
2017-11-28 15:19:57 +01:00
bubnikv
3c0cd3cbc8
Improve error handling of loading Slic3r profiles.
2017-11-28 10:08:01 +01:00
bubnikv
bfce6dba9b
Integrated the "compatible printers" idea by @alexrj with Vojtech's twist:
...
The incompatible presets are hidden in the tabs if show_incompatible_presets
is false. If show_incompatible_presets is true, there is a button to
show / hide the incompatible presets from the tab selector.
2017-11-10 17:27:05 +01:00
bubnikv
b11d9708ed
Updated Controller after the presets C++ port.
2017-11-02 21:51:06 +01:00
bubnikv
e8b6d92d4d
Looks like the reworked C++ preferences start to work again.
2017-11-02 16:21:34 +01:00
bubnikv
835e5b71a8
Reduce UI flicker.
2017-10-28 00:18:02 +02:00
bubnikv
857b78ddca
Fix of the previous commit: Slic3r::Config::new_from_defaults_keys
...
has to be provided with a reference to array of strings.
2017-10-27 22:49:59 +02:00
bubnikv
2455aee97c
Further reduction of Perl Config.pm methods.
2017-10-27 18:52:35 +02:00
bubnikv
3bc79e80d5
Fixed configuration & validate C++ ports.
2017-10-27 16:11:06 +02:00
bubnikv
5a99e694ce
Another step towards the C++ presets.
2017-10-26 17:17:39 +02:00
bubnikv
ee645007f2
Another step towards C++ presets.
2017-10-25 12:53:31 +02:00
bubnikv
3731820c48
Optimization of the configuration layer:
...
The values of StaticPrintConfig derived objects were searched by a name
walking through a huge chained if.
Now they are being mapped with a std::map.
Also initialization of StaticPrintConfig classes from their ConfigOptionDef
defaults is done by maintaining a single global definition of each
StaticPrintConfig derived class, and a new instance is initialized
from this static copy.
Also the ConfigOption instances are casted using static_cast
wherever possible, and their types are verified by a virtual type() method.
This approach avoids insiginificant performance penalty of a dynamic_cast.
Also the compare and clone methods were added to ConfigOption,
and the cloning & compare work on binary values, not by serialization.
2017-10-17 16:01:18 +02:00
bubnikv
5a844c91f1
When executing G-code post-processing scripts written in perl on windows,
...
run the perl interpreter, which was used to run the Slic3r.
https://github.com/prusa3d/Slic3r/issues/514
2017-10-03 17:05:47 +02:00
bubnikv
84d4bf8fdb
Load presets into the new C++ class.
2017-10-02 17:35:00 +02:00
bubnikv
b1e3b0cdf9
Further fixes of the previous commit.
2017-09-20 10:16:00 +02:00
bubnikv
473233019c
Initial partial implementation of presets in C++.
2017-09-19 13:55:48 +02:00
bubnikv
b58756f38b
A bit of refactoring and beautification.
2017-09-18 10:01:37 +02:00
bubnikv
e16f827223
Ported PrintConfigBase::_handle_legacy from Perl to C++,
...
merged from upstream Slic3r, thanks to @alexrj.
2017-09-18 09:56:48 +02:00
bubnikv
630b746cab
Fix a lag when starting to move a platter object.
...
The fix is done by disabling the print out of a model statistics,
which runs the model fixing twice.
2017-09-14 09:06:14 +02:00
bubnikv
6d4ec5c989
Further fix of https://github.com/alexrj/Slic3r/issues/4085
...
making it safe in case wxWidgets do not report supporting multisampling,
but the OpenGL context actually does and it leaves the multi-sampling enabled.
This then may in theory lead to incorrect picking by color.
2017-09-12 10:14:24 +02:00
bubnikv
888a904c9b
Workaround of
...
"GL_MULTISAMPLE and GL_ARRAY_BUFFER_ARB messages on failed launch"
https://github.com/alexrj/Slic3r/issues/4085
Also fixes
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=872273
2017-09-12 10:03:10 +02:00
bubnikv
a2b876e261
Fixing a crash on pressing +/- with no object active.
...
https://github.com/prusa3d/Slic3r/issues/467
2017-08-14 12:50:35 +02:00
bubnikv
3b54b68b59
Merged new methods for handling menus with icons,
...
merged "Use submenus for listing options in dropdown menu." #3905
thanks @alexrj
Adapted the "Use submenus" code to sort the menus in the same order
as they appear in the parameter tabs.
2017-08-04 16:28:01 +02:00
bubnikv
632bf56f29
merged save_window_pos / restore_window_pos from @alexrj Slic3r.
2017-08-04 15:54:12 +02:00
Alessandro Ranellucci
38e713c23c
Remember object settings dialog size and position. #3943
2017-08-04 15:45:10 +02:00
bubnikv
ed46cfa19d
Simplified the code base by requiring wxWidgets >= 3.0
2017-08-03 17:47:18 +02:00
bubnikv
1385018724
Unicode handling:
...
Removed the Perl dependencies on Encode, Encode::Locale and Unicode::Normalize.
Added dependency on boost::locale.
Added encode_path, decode_path, normalize_utf8 functions to Slic3r.xs
Slic3r.xs has been made mostly utf8 safe by using the boost::nowide library,
thanks to @alexrj for the idea.
Simplified the encode_path / decode_path stuff:
wxWidgets are unicode already, so there is no need to decode_path() from it.
Perl / win32 interfacing is non-unicode, so decode_path() is executed
on ARGV just at the beginning of the perl scripts.
2017-08-03 17:31:31 +02:00
bubnikv
31085fb1d7
Ported some ModelObject methods from Perl to C++.
...
Added some utility functions to TriangleMesh, thanks to @alexrj
Some porting to C++ based on work by @alexrj.
2017-08-02 16:05:18 +02:00
bubnikv
777023c7a8
Ported PrintObject::prepare_infill & combine_infill from Perl to C++.
2017-08-02 14:24:32 +02:00
bubnikv
933d5b261a
Fix of a "Scale to Size" dialog, where a bed size is shown scaled.
2017-08-01 14:42:59 +02:00
bubnikv
71f99423c5
New feature: Bridging angle override through a bridge_angle config
...
variable. When set to zero, the usual automatic bridge detection applies.
The bridging angle override may be set at the Infill->Advanced settings,
or through a modifier mesh.
2017-07-31 16:23:52 +02:00
bubnikv
3b51f64411
Fixing https://github.com/prusa3d/Slic3r/issues/432
...
Slic3r GUI not starting, error when using --gui (on linux)
Implements https://github.com/prusa3d/Slic3r/issues/407
Shortcuts: Movement in 3D Space
Assignment of the camera shortcuts is clear from the menu accelerators.
Implements https://github.com/prusa3d/Slic3r/issues/406
Shortcuts: Rotate +/- 45 degrees
l/r keys rotate the object
Also changed the accelerators for adding / removing duplicates from
Ctrl++/- to plain +/-, from Ctrl-Del to plain Del,
and added an 's' key accelerator for uniform scaling.
2017-07-21 16:29:40 +02:00
bubnikv
7103fa78ff
Reverted back width of the tree control on the Tab panels.
...
Fixes https://github.com/prusa3d/Slic3r/issues/428
2017-07-20 13:09:02 +02:00
bubnikv
afd5d9eff3
Fixed issues with undefined filament color preview values.
2017-07-20 13:02:12 +02:00
bubnikv
81823fe7df
Reduced the content of Geometry.pm, removed unused Perl subroutines.
...
Reduced the use Slic3r::Geometry and use Slic3r::Geometry::Clipper
clauses to only reference used subroutines.
2017-07-19 10:45:39 +02:00
bubnikv
c9325338a8
Fixed "upscaled objects cannot be cut above original height"
...
https://github.com/prusa3d/Slic3r/issues/419
2017-07-12 23:28:11 +02:00
bubnikv
3a813aaef6
Implemented "Suggestion for Preview View Change"
...
https://github.com/prusa3d/Slic3r/issues/415
Use left / right keys to switch between the low / high layer scroll bars
on the 3d preview screen.
2017-07-11 18:21:25 +02:00
bubnikv
6f28818f87
Fix of
...
"Unicode char like for example "ł" crush app when used in profile name"
https://github.com/prusa3d/Slic3r/issues/388
The Prusa3D binary builds are missing the UTF8 libraries.
To avoid having to bundle them, the case sensitive regexes testing
file suffixes were replaced with explicit enumeration of lower / upper
case letters. While crude, it avoids triggering the UTF8 library.
2017-07-11 17:15:34 +02:00
bubnikv
32213ce679
Implements loading of multi-part objects as a bunch of STLs
...
for a multi-material printer.
Also only a single pop-up dialog is open when loading multiple files.
2017-07-11 13:55:55 +02:00
bubnikv
a7153c67e6
Changed layout of the Tab page to accomodate a wider profile selection
...
combo box.
https://github.com/prusa3d/Slic3r/issues/194
https://github.com/prusa3d/Slic3r/issues/377
2017-07-11 12:02:44 +02:00
bubnikv
774c69e3c6
Fix of "Problem with larger brim overlapping "
...
https://github.com/prusa3d/Slic3r/issues/373
2017-07-07 16:40:23 +02:00
bubnikv
8160db23cc
Implementation of "XY size Compensation for first layer"
...
https://github.com/prusa3d/Slic3r/issues/190
2017-06-26 16:28:10 +02:00
bubnikv
f0325575c2
Slic3r has been modified to propagate the following filament specific
...
values to GCode generator, one per active extruder:
bed_temperature
bridge_fan_speed
cooling
disable_fan_first_layers
fan_always_on
fan_below_layer_time
first_layer_bed_temperature
max_fan_speed
min_fan_speed
min_print_speed
slowdown_below_layer_time
Now it remains to extend Slic3r to correctly apply these values.
2017-06-21 16:15:39 +02:00
bubnikv
b12e4689e8
Fix of changing the order of volumes of a multi-volume part:
...
The 3D preview scene was not updated properly.
2017-06-21 14:10:22 +02:00
bubnikv
7ca02bda0f
Fix of a "split" function issue.
...
1) Load a multi-part stl
2) Rotate it by 90 degrees
3) Split it.
Before this fix, the split object jumped away from the print bed.
This sound similar to
https://github.com/prusa3d/Slic3r/issues/309
2017-06-19 14:26:19 +02:00
bubnikv
c33ed9144c
Fixed the objects jumping
2017-06-19 11:47:43 +02:00
bubnikv
aa54c3402b
Disable the "split" button when there is no volume selected.
2017-06-15 18:11:36 +02:00
bubnikv
b724d789fd
New feature: Splitting an object into a multi-part volume.
2017-06-15 15:38:15 +02:00
bubnikv
2ac981e422
Improved error handling when importing configuration from a G-code.
2017-06-14 20:18:46 +02:00
bubnikv
93dce7a2d3
Ported config load / stored to C++, thanks @alexrj
...
Implemented import of config values from the G-code.
2017-06-14 17:51:14 +02:00
bubnikv
3e82eb7010
Extended the tooltpis for quick slice functions.
2017-06-14 12:52:50 +02:00
bubnikv
a73a1a3f09
Removed the DLP projector dialog as it is confusing to our customers
...
and we doubt anybody is using it.
2017-06-14 12:05:23 +02:00
bubnikv
82bde51c27
Removed the 'simple' mode.
2017-06-14 11:48:08 +02:00
bubnikv
fdb5ed1fcb
Fix for "Crash when deleting all objects"
...
https://github.com/prusa3d/Slic3r/issues/193
2017-06-13 13:42:38 +02:00
bubnikv
f7831240e1
Fixed compilation on OSX
2017-06-13 12:09:49 +02:00
bubnikv
5cae4cc614
Fix of https://github.com/prusa3d/Slic3r/issues/285
...
Refactored Model.cpp/hpp to C++x11 loops,
simplified the mesh / bbox handling.
2017-06-13 11:35:24 +02:00
bubnikv
f408f08850
Disabled the new Slic3r version check until we have a server set up
...
for the Slic3r Prusa Edition.
Hopefully a fix of https://github.com/prusa3d/Slic3r/issues/258
by moving the 2D thumbnail generation to the main thread and
forcing the simple 2D convex hull for even the small objects.
2017-06-12 14:25:35 +02:00
bubnikv
02ab92ea65
Little improvements of the 3D manipulation usablility:
...
Limit zoom out to 3x the "scene fit" amount.
Disable wheel scrolling when the middle button is pressed.
2017-06-09 15:02:11 +02:00
bubnikv
881a5c531b
Fix of the last commits:
...
1) FLT_MAX replaced with limits,
2) apply_config is called by the test case harness to update layer height profile.
2017-06-09 14:24:00 +02:00
bubnikv
958c6553e7
Hopefully a fix of
...
"Layer editing does not trigger reslicing with Background Processing enabled"
https://github.com/prusa3d/Slic3r/issues/293
2017-06-09 13:27:35 +02:00
bubnikv
6ce832e439
The OpenGL Z-bufer has low precision, therefore a bounding box test
...
had to be relaxed.
2017-06-08 20:50:24 +02:00
bubnikv
66f1ae003f
A little simplification of the Perl side threading:
...
Only single level Perl worker threads are allowed.
2017-06-08 18:53:33 +02:00
bubnikv
e0a24f94c0
Removed Object.pm support_material_flow method.
2017-06-08 18:13:12 +02:00
bubnikv
27003dc0fd
Possible fix of
...
https://github.com/prusa3d/Slic3r/issues/260
https://github.com/prusa3d/Slic3r/issues/272
by disabling opengl blending when picking.
Also the limiting region for object movement has been rounded smoothly.
2017-06-08 12:23:50 +02:00
bubnikv
a15e6127cf
Relaxed the requirements on the layer height for the Wipe Tower to
...
the span of 0.15mm to 0.35mm.
2017-06-08 12:10:34 +02:00
bubnikv
fe409a76a6
Fixed panning issues when the camera is parallel to the bed plane.
2017-06-08 12:01:35 +02:00
bubnikv
8b5f7f0fb2
Limit the object movement to the vincinity of the print bed.
2017-06-08 11:02:29 +02:00
bubnikv
dabcff1c07
When testing for a key press, rather check for the modifier keys
...
(alt, ctrl) always. Also if a key event is not processed, pass it
for further processing.
2017-06-06 19:14:52 +02:00
bubnikv
0816c995a7
Implements "Fewer" button should not remove last copy from build platform
...
https://github.com/prusa3d/Slic3r/issues/301
2017-06-06 15:38:27 +02:00
bubnikv
35acd799cf
Fixed a superflous "Dirty" multi-extruder printer profile after
...
the introduction of new extruder parameters
(deretract_speed extruder_colour retract_before_wipe).
https://github.com/prusa3d/Slic3r/issues/325
2017-06-06 12:52:15 +02:00
bubnikv
3e764ada0c
For the wipe tower to work, verify that all objects are sliced
...
with the same layer heights.
Also enforce layer synchronization for soluble supports.
2017-06-06 11:40:35 +02:00
bubnikv
72f348658f
Testing for the required parameter combinations before enabling the wipe tower.
...
The wipe tower needs to be made more general in the future to overcome
these limitations.
2017-06-06 10:36:14 +02:00
bubnikv
88c9ae6ca6
Fix of
...
https://github.com/prusa3d/Slic3r/issues/315
a crash if the max_layer_height is left to a default value of zero.
2017-06-05 12:02:26 +02:00
bubnikv
ad3be1a69e
Implemented filament start / g-codes.
...
https://github.com/prusa3d/Slic3r/issues/265
https://github.com/prusa3d/Slic3r/issues/319
Based on the implementation by @lordofhyphens
19eea19d91
2017-06-05 11:30:57 +02:00
bubnikv
02592378e2
Improved "ensure vertical wall thickness" feature for multi material:
...
If the "interface_shells" feature is disabled, the "ensure vertical wall thickness"
feature will not add full infill over internal shells.
Fixed some issues with delayed loading of 3d scenes.
2017-06-01 16:31:29 +02:00
bubnikv
ee5ee5f432
Performance improvements in reloading the 3D scene.
...
Now the 3D scene loading is postponed until the page is visible.
2017-05-31 17:05:11 +02:00
bubnikv
efb1fd2066
Fixed order of loading the configs into Print / PrintObjects
...
and loading the 3d print path preview.
2017-05-30 17:24:50 +02:00
bubnikv
e000b22578
Implemented wipe tower print path preview.
2017-05-25 22:27:53 +02:00
bubnikv
7d64c465c0
New config field extruder_color for preview of extruder assignment.
2017-05-24 15:20:20 +02:00
bubnikv
ff9d565ba7
Implemented UI for ordering volumes
...
https://github.com/prusa3d/Slic3r/issues/277
2017-05-20 22:02:04 +02:00
bubnikv
7884fa3d7c
Implemented Multipart object list window resize #278
2017-05-20 19:44:55 +02:00
bubnikv
a99b006b98
Implemented https://github.com/prusa3d/Slic3r/issues/199
...
by merging the work by @lordofhyphens done on https://github.com/alexrj/Slic3r/issues/3268
2017-05-20 15:29:25 +02:00
bubnikv
6fa280be0b
Finished the wipe tower UI.
2017-05-19 21:48:32 +02:00
bubnikv
70db88dd90
Improved retract handling on bowden extruders:
...
Separated deretract speed from a retract speed,
allowed a partial retract before wipe.
2017-05-19 19:24:21 +02:00
bubnikv
cb0a66b743
Initial implementation of a wipe tower preview UI.
2017-05-17 16:53:40 +02:00
bubnikv
c22b6edeeb
Initial integration of the Prusa MultiMatrial Wipe Tower.
2017-05-16 13:45:28 +02:00
Xoan Sampaiño
281a9c45eb
Remove hardcoded font size for wxGTK
...
When in wxGTK (GNU/Linux), some widgets has a hardcoded point size font that not fit with normal GUI font and therefore this widgets doesn't inherit changes in system font size.
This commit only affect this platform, changing `!&Wx::wxMSW` to `&Wx::wxMAC`.
2017-05-12 11:31:54 +02:00
bubnikv
2f57ee60d1
Improved G-code generator for multi-material prints
...
to minimize tool switches.
2017-05-10 11:25:57 +02:00
bubnikv
18bb3c3244
Added Notes Tab to Printer Settings #210
2017-05-05 11:59:51 +02:00
bubnikv
8a628c451c
Fixed a newly introduced G-code issue on Windows
...
when exporting into a localized directory.
2017-05-04 09:24:34 +02:00
bubnikv
e90279c513
Ported the G-code generator from Perl to C++.
...
Removed GCode.pm
Removed the Perl bindigns for AvoidCrossingPerimeters, OozePrevention, SpiralVase, Wipe
Changed the std::set of extruder IDs to vector of IDs.
Removed some MSVC compiler warnings, removed obnoxious compiler warnings when compiling the Perl bindings.
2017-05-03 18:28:22 +02:00
bubnikv
72ae3585e4
Removed a broken Arc Fitting feature.
...
Removed the questionable Pressure Advance feature. It is better to use the Pressure Advance implemented into a firmware.
Added a C++ implementation of GCodeReader and SpiralVase, thanks to @alexrj
Added a C++ implementation of GCodeTimeEstimator, thanks to @lordofhyphens
2017-04-26 14:24:31 +02:00
bubnikv
e918ea9c65
Fixes Variable Layer Height issue when max_layer_height at its default of zero
...
https://github.com/prusa3d/Slic3r/issues/267
2017-04-24 09:51:24 +02:00
bubnikv
8040ef8efb
Fixing a bug in the layer editor for high diameter nozzles.
...
https://github.com/prusa3d/Slic3r/issues/247
2017-04-11 11:16:47 +02:00
bubnikv
23be6233c8
Finalized the experimental "synchronize support layers with object layers"
...
feature (the support_material_synchronize_layers settings).
The feature is now enabled for the soluble supports only
(with support_material_contact_distance > 0).
Fixes https://github.com/prusa3d/Slic3r/issues/197
2017-04-10 12:00:07 +02:00
bubnikv
ed2ee2f6f3
Merged support_fills with support_interface_fills.
...
When extruding supports, the support is interleaved with interface
if possible (when extruded with the same extruder).
Otherwise the base is extruded first.
2017-04-07 17:37:30 +02:00
bubnikv
c40de7e424
Fix of https://github.com/prusa3d/Slic3r/issues/218
...
Cut function bug in accepting a numerical value
2017-04-05 15:55:02 +02:00
bubnikv
7ffb3590c4
Finalized the Prusa Control project file format import.
2017-04-05 14:45:43 +02:00
bubnikv
b66bfb41aa
Validate the height values entered into the layer height table.
...
Clamp these values between the minimum of min_layer_height per nozzle
and the maximum of max_layer_height per nozzle.
Don't allow entering zero layer height to trim an object,
the cut dialog should be used instead.
Fixes https://github.com/prusa3d/Slic3r/issues/235
2017-04-05 13:27:00 +02:00
bubnikv
9d9a6feb96
Disable ensure_vertical_shell_thickness for spiral vase mode.
2017-04-03 11:19:32 +02:00
Joseph Lenox
7b5158f5f2
Permit firmware retraction when firmware is Repetier (repetier-firmware supports it). Fixes #3821
2017-03-30 16:47:06 +02:00
bubnikv
36416d77b8
Fixes of VBO rendering on Linux with wxWidgets & GTK
2017-03-30 10:25:52 +02:00
bubnikv
2da3388aa5
Only print "Generating perimeters" once.
2017-03-28 17:27:05 +02:00
bubnikv
95b45da57c
Fixed 3D view of the Cut dialog.
2017-03-28 14:18:13 +02:00
bubnikv
6162670bbd
Fixing Window selections wrong
...
https://github.com/prusa3d/Slic3r/issues/191
Thanks @uclaros
94f60db114
2017-03-23 18:02:35 +01:00
bubnikv
a7838cac07
Fixed the rotation and scaling inputs allowing decimal numbers with
...
both the dot and comma as a decimal separator.
Fixes 6649888d1c
2017-03-23 14:32:19 +01:00
bubnikv
1770d031b4
Fixed rotations, allow both dot and dash as decimal separators,
...
correctly report invalid numeric values for rotation.
2017-03-23 11:53:59 +01:00
bubnikv
6b99cbdc02
Had the vertex buffer objects disabled for debugging purposes by mistake.
2017-03-21 08:59:48 +01:00
bubnikv
d8f0c0bdff
Fixed bug in variable layer height editing: Make the OpenGL context
...
current.
2017-03-20 15:55:22 +01:00
bubnikv
045de596e2
Use OpenGL 2.0 shaders for the layer height rendering.
...
Use OpenGL 2.0 shaders for the print path rendering for performance reasons.
2017-03-20 12:05:20 +01:00
bubnikv
7f7d2da5fe
Use Vertex Buffer Objects for rendering of 3D volumes if possible.
2017-03-16 14:02:28 +01:00
bubnikv
93cab990c7
Fixed some memory allocation issues of the new C++ 3d path preview
...
(reserved memory has to be shrank around the collected data).
Initial implementation of the vertex buffer objects for the 3d path preview.
2017-03-15 20:45:03 +01:00
bubnikv
d18e10c7c9
Rewrote the OpenGL object rendering to indexed triangle / quad sets
...
for lower memory consumption.
Rewrote the print path 3D preview to generate these indexed triangle / quad
sets, possibly with at least as possible duplication of vertices,
with a crease angle of 45 degrees, leading to maximum 8% overshoots
at the corners.
2017-03-15 16:33:25 +01:00
bubnikv
e7a920fe16
Fixed some picking issues after porting GLVolumes to C++.
...
Initial interface for print paths visualization by VBOs.
2017-03-14 10:11:08 +01:00
bubnikv
e6fddd364d
Volume rewritten from Perl to C++,
...
generation of vertex arrays from paths rewritten from Perl to C++,
parallelized.
2017-03-13 16:02:17 +01:00
bubnikv
b5e45bccf9
Fixed a typo after porting _simplify_slices to C++.
2017-03-08 15:08:40 +01:00
bubnikv
52b76930aa
Simplify_slices rewritten to C++, parallelized.
...
Added some move methods to Surface class.
2017-03-08 13:43:49 +01:00
bubnikv
4331f38912
Fixing of slicing errors ported to C++, parallelized.
2017-03-08 11:56:42 +01:00
bubnikv
4d00aa1800
More tracing of the slicing process.
2017-03-03 12:53:05 +01:00
bubnikv
f8a2087fc6
Fixed a bug after merge.
...
https://github.com/prusa3d/Slic3r/issues/163
2017-03-01 13:16:33 +01:00
bubnikv
46fc4a0a8e
Correctly rename g-code file once it is generated.
2017-02-28 10:44:44 +01:00
Alessandro Ranellucci
80f345d7c1
Remove unnecessary method call
2017-02-28 10:41:36 +01:00
Alessandro Ranellucci
6a90fceaaf
Ported expanded_output_filepath() to C++/XS
2017-02-28 10:38:32 +01:00
bubnikv
66493ce821
Some documentation on missing functionalities.
2017-02-28 10:29:52 +01:00
bubnikv
4010dd71f6
Support Prusa Control project files (.PRUS) by the GUI.
2017-02-27 16:09:22 +01:00
bubnikv
8a8b49ea02
Removed CoolingBuffer.pm as it has been superseeded by the C++ code.
2017-02-27 01:51:08 +01:00
bubnikv
ee619701d8
Got rid of the Perl Format::STL, Format::AMF, Format::OBJ for good.
2017-02-27 01:03:00 +01:00
bubnikv
f0f550783f
Good bye, Perl Expat binding!
2017-02-27 00:38:30 +01:00
bubnikv
b7aeeb968b
Using the C++ file loaders.
2017-02-26 21:54:42 +01:00
bubnikv
121b3c31d2
Removed the old Perl Supports.
2017-02-26 21:49:40 +01:00
Alessandro Ranellucci
4a84643894
Fixed regression causing slowdown_below_layer_time to be ignored. #3515 #3443
2017-02-22 15:29:14 +01:00
bubnikv
9f660738b3
Fixes an issue: Slic3r outputs Weight: %.1fg, Cost: %.1f on command line,
...
instead of filling in the numbers.
https://github.com/prusa3d/Slic3r/issues/144
2017-02-22 12:01:31 +01:00
Alessandro Ranellucci
8174c05df4
Command for reloading an object from file. #1466
2017-02-21 17:58:48 +01:00
bubnikv
d02ee5cf80
By @lordofhyphens:
...
only re-zoom if we have a valid bounding box, avoid a divide by 0 error.
2017-02-21 17:43:28 +01:00
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