Lukas Matena
a40d60ce08
Custom support generation now ignores triangles with upward-pointing normal
2020-04-22 14:01:29 +02:00
Lukas Matena
1e12863ceb
FDM custom supports gizmo now has a 'Remove all' button
2020-04-22 11:57:12 +02:00
Lukas Matena
d74b5cb1da
Custom supports data change forces invalidation of supports step
2020-04-22 11:16:28 +02:00
bubnikv
03eb5ffcd5
WIP: Reworking of FillRectilinear2 to support monotonous infill
...
with ant colony optimization and 3-opt flips.
2020-04-22 10:54:11 +02:00
Lukas Matena
8d95345ede
Fixed a logic error in the algorithm
...
The error created extremely large projections of triangles that were close to horizontal
2020-04-22 10:11:42 +02:00
Lukas Matena
7fc4a71715
Moved the projection function into PrintObject.cpp
2020-04-21 13:50:47 +02:00
YuSanka
9bc96bf28e
Removed "Support materials" item from "Add Settings" context menu for the Layer ranges
...
Related to #3060 and #4100
2020-04-21 12:42:52 +02:00
Lukas Matena
79ef456d7c
Fixed the algorithm so it works for horizontal triangles
...
Partial code cleanup
2020-04-21 01:39:40 +02:00
Lukas Matena
20068842ec
Project each part of the triangle on one slice only (WIP)
2020-04-21 01:39:35 +02:00
YuSanka
83782e59b6
Search: Implemented "Option type" checkbox for imGui window on Plater
...
+ code refactoring
2020-04-20 21:54:46 +02:00
YuSanka
3b88dc2688
Search: Implemented cursor movement inside SearchWindow on Plater
2020-04-20 17:37:03 +02:00
Lukas Matena
7b104bcdd1
Save z heights of the triangle vertices
2020-04-20 14:01:11 +02:00
Lukas Matena
40e4be6ede
Fixed a crash in the FDM supports gizmo when the wipe tower was shown
...
The crash happened during showing/hiding of volumes, which historically assumed to always run in SLA mode and so did not expect to encounter the wipe tower.
2020-04-20 09:17:48 +02:00
YuSanka
b5fcc23460
ConfigWizard: fixed first column name on SLA Material page
2020-04-20 08:09:19 +02:00
Lukas Matena
2f8a5dd6f6
Merge branch 'master' into lm_fdm_custom_supports_backend
2020-04-17 14:19:16 +02:00
Lukas Matena
be9dcf0c77
Fixup of previous commit
2020-04-17 14:17:11 +02:00
Lukas Matena
c570fc40de
First partially working implementation of custom supports at the backend
...
The solution is temporary and should be improved and moved elsewhere - see comments in the code.
2020-04-17 13:15:26 +02:00
Lukas Matena
9921945cbf
Fixed a failing assertion in FDM supports gizmo
...
It was a result of attempting to render an empty GLIndexedVertexArray
2020-04-17 11:11:12 +02:00
Lukas Matena
546b0702f9
Custom supports data are saved into ModelObject and propagate to the backend
...
Invalidation of supports after they change is not implemented yet.
2020-04-16 16:57:46 +02:00
YuSanka
6a8d0c5d84
Search: Experiment button
2020-04-16 15:49:40 +02:00
YuSanka
ae51f280b8
Merge remote-tracking branch 'origin/master' into ys_search
2020-04-16 11:46:29 +02:00
YuSanka
287e50d091
Localization: Fix of #4035
...
+ Added context for "Advanced" ("Mode")
+ Updated POT
2020-04-16 11:36:41 +02:00
YuSanka
b69dfd63ca
Completed a search list cleaning (deleted unused options).
...
+ Implemented BlinkingBitmap
+ Options, that doesn't have related controls, are highlighted near the widgets.
2020-04-16 09:59:12 +02:00
YuSanka
45147d887b
Implemented cursor movement inside SearchComboPopup
...
+ Added checkboxes for editing of the option's name (include "Group"/"Category" or not)
+ some code refactoring
2020-04-14 17:54:15 +02:00
Lukas Matena
46ade45ced
The bed texture is not shown when looking from below and FDM/SLA support gizmo is active
2020-04-14 13:18:08 +02:00
bubnikv
10110ed307
WIP: Ironing over top surfaces.
2020-04-14 11:53:28 +02:00
YuSanka
167f7cf5de
Added map for save Group and Category values for each option
...
+ Some code refactoring in Tab (the translation of the titles moved to the OptionGroups) and Search
+ Fixed assert in fts_fuzzy_match
2020-04-13 17:55:38 +02:00
Lukas Matena
51739b70a1
FDM supports gizmo cursor size now accounts for (uniform) scaling of the mesh
...
Added tooltips on the sliders
2020-04-09 18:36:57 +02:00
Lukas Matena
23da5910c6
FDM supports gizmo now uses VBOs instead of immediate mode
2020-04-09 15:56:43 +02:00
YuSanka
218abacb75
Search: Set focus on search line in popup control on Plater
2020-04-08 21:03:58 +02:00
Lukas Matena
3e15d22f35
Fixed a crash when switching to Preview
2020-04-08 17:22:30 +02:00
Lukas Matena
23fbc2ff1a
Alt+mouse wheel adjusts cursor size in FDM supports gizmo
2020-04-08 15:21:41 +02:00
Lukas Matena
4d8e6538e8
FDM supports gizmo - use right mouse to place support blockers
2020-04-08 14:59:53 +02:00
Lukas Matena
55c87886fa
FDM supports gizmo now ignored modifiers and support enforcer/blockers
2020-04-08 12:58:48 +02:00
Lukas Matena
c32fa67523
Clipping plane can now handle multiple-part objects
2020-04-08 11:52:22 +02:00
YuSanka
8ab7956c26
Search: Added shortkey Ctrl+F on Plater
2020-04-08 09:47:33 +02:00
Lukas Matena
fe57826695
Improved the FDM supports gizmo dialog
...
Removed unused code
Fixed a clipping-plane related crash
Fixed a crash in hollowing gizmo when no hollowed mesh was provided
Forbid opening the gizmo when a part of an object is selected
2020-04-08 09:37:49 +02:00
YuSanka
05f4b7aa60
Search: Code cleaning
2020-04-07 20:34:09 +02:00
Lukas Matena
17811598ac
Fixed obvious merge conflicts
...
FDM supports gizmo uses the new common data infrastructure
2020-04-07 19:44:29 +02:00
YuSanka
dcdafb6208
Implemented OnMouseMove and OnMouseClick for PopupSearchList
2020-04-07 19:09:33 +02:00
Lukas Matena
a380053a17
Merge branch 'lm_gizmos' into lm_fdm_supports_gizmo
2020-04-07 17:16:48 +02:00
Lukas Matena
1d65ce760b
Removed obsolete code
...
Got rid of dummy header GLGizmos.hpp
2020-04-07 16:47:39 +02:00
Lukas Matena
535a27de65
Fixed crash related to ClippingPlane and incorrect handling of sla z shift in hollowing gizmo
2020-04-07 16:47:39 +02:00
Lukas Matena
c704849a7a
SLA supports gizmo is now enabled and uses the new infrastructure
2020-04-07 16:47:39 +02:00
Lukas Matena
c79e90b921
SupportsClipper implementation
2020-04-07 16:47:39 +02:00
Lukas Matena
e82ead0335
InstancesHider allows to show/hide supports on demand
2020-04-07 16:47:39 +02:00
Lukas Matena
5d4014a4a5
ObjectClipper implementation, hollowing gizmo reenabled
...
ObjectClipper tracks active mesh (incl. possible hollowing), remembers clipping plane position and can render the cut on demand
Hollowing gizmo uses the new infrastructure
2020-04-07 16:45:16 +02:00
Lukas Matena
d9e5721cb7
Raycaster can now handle multiple volumes
...
This is necessary for future FDM supports gizmo. SLA objects only have one volume, so it wasn't needed until now.
2020-04-07 16:42:59 +02:00
Lukas Matena
bf734c8f68
Raycaster wrapper
...
The raycaster manages a MeshRaycaster object that the gizmo can ask to perform raycasts
If the hollowed mesh tracker is enabled and the hollowed mesh is newly calculated/invalidated, the raycaster automatically updates.
2020-04-07 16:40:59 +02:00
Lukas Matena
81dba7677b
Hollowed mesh tracker implementation
...
The class tracks state of the backend calculation and if there is a hollowed/drilled mesh, it can provide a pointer to it
2020-04-07 16:40:10 +02:00
Lukas Matena
7e797eaaf8
Dependencies check in debug mode
...
Some common resources can depend on each other - this checks that the requirements are consistent
2020-04-07 16:39:18 +02:00
Lukas Matena
3db3a61520
InstancesHider implementation
...
Any gizmo can now ask for hiding all but the active instance by returning proper value from on_get_requirements
2020-04-07 16:39:06 +02:00
Lukas Matena
593e7a1546
Flattening gizmo now uses the new CommonDataPool to store pointer to active object
2020-04-07 16:35:52 +02:00
Lukas Matena
3b06332999
Common gizmos data are now handled by the CommonGizmosDataPool object
2020-04-07 16:35:52 +02:00
Lukas Matena
7c4071c541
Disabled the SLA gizmos
2020-04-07 16:35:52 +02:00
Lukas Matena
8475968025
First installation of common gizmo data pool
2020-04-07 16:35:52 +02:00
YuSanka
cd13356b6d
Code cleaning
2020-04-07 16:22:03 +02:00
YuSanka
752083cbe6
Implemented blinking icon to highlight a searched field
2020-04-07 12:09:58 +02:00
YuSanka
ce2e53dbfa
Added control of "Invalid numeric input" for the PointCtrl
2020-04-05 23:18:22 +02:00
YuSanka
2317437ede
Next Experiment
2020-04-05 22:11:45 +02:00
YuSanka
b81c774ee5
Fixed build on OSX
2020-04-05 13:20:27 +02:00
YuSanka
17bd52342b
Next experiments with search on Tabs
2020-04-04 19:25:57 +02:00
YuSanka
6faae0aa12
+ Fixed clear_marked_string()
2020-04-03 14:29:57 +02:00
YuSanka
c8cf11b11b
Added missed destroy for search_line
2020-04-03 12:51:20 +02:00
YuSanka
2a9190c27d
Merge remote-tracking branch 'origin/master' into ys_search
2020-04-03 10:48:54 +02:00
YuSanka
5ca6b9f8d0
Implemented SearchCtrl class instead of SearchComboBox
...
Search string are synchronized between Plater and Tabs.
List with options and filtered list are in Sidebar.
All options list on tabs and Plater use this data from Sidebar
Note: SearchComboBox.cpp(hpp) was renamed to Search.cpp(hpp)
2020-04-03 10:27:50 +02:00
enricoturri1966
a6fe16c612
3rd attempt to fix build on AppleClang
2020-04-02 08:11:25 +02:00
YuSanka
5f31d9ed41
Merge remote-tracking branch 'origin/master' into ys_search
2020-04-01 20:23:34 +02:00
YuSanka
815989d488
The print bed is limited to 1.2m x 1.2m. (related to #2877 )
2020-04-01 19:01:38 +02:00
enricoturri1966
f27999e136
Follow-up of cfb6ac76fc
- Another attempt to fix the build on AppleClang (std::array in lambdas)
2020-04-01 16:47:35 +02:00
enricoturri1966
cfb6ac76fc
Fixed build on AppleClang
2020-04-01 15:54:25 +02:00
YuSanka
67c55c7490
Added code for deactivating of search toolbar item
...
+ invalidated its unused callbacks.
+ ImGui::Selectable function is copied to InGuiWrapper.cpp and a little beat modified to change a label text, when item is hovered
2020-04-01 15:28:07 +02:00
enricoturri1966
f598c2d5d8
Fixed conflicts after merge with master
2020-04-01 15:06:30 +02:00
bubnikv
31b0ae164d
Optimization of the GCodeTimeEstimator to only keep a fixed number
...
of trapeziodal blocks around. The number is hard coded to 64,
and 3x64 blocks are flushed everytime the queue grows over 4x64 blocks.
This time estimator is slightly more close to what the firmware does, which
keeps a fixed number of blocks and it recalculates all the blocks
every time a new block is added while the oldest block is pushed out
of the queue. Therefore this optimization shall produce negligible
differences to what the previous code produced.
2020-04-01 13:42:26 +02:00
bubnikv
f4cc0ce075
Fixed the new Slic3r::GUI::format_wxstr(): The arguments were not passed.
2020-04-01 13:27:12 +02:00
tamasmeszaros
4945a0dc0e
Follow-up fix for big bed arrangement
2020-04-01 12:34:50 +02:00
bubnikv
8027fc2fb2
Yet another missing include that windows compiler did not mind.
2020-04-01 10:42:10 +02:00
bubnikv
3a1bb2fece
fixed missing include
2020-04-01 10:30:33 +02:00
bubnikv
22c671e593
Fixing OSX and Linux builds
2020-04-01 10:09:31 +02:00
enricoturri1966
8a03d5642d
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer
2020-04-01 09:58:48 +02:00
enricoturri1966
1f3046f65d
#3964 - Attempt to fix crash when closing on Linux (Debian unstable)
2020-04-01 09:58:31 +02:00
bubnikv
b843a094f6
Slic3r::format(), Slic3r::GUI::format_wxstr():
...
wrappers around boost::format using C++17 variadic templates,
replacing the ugly and verbose
(boost::format("template") % arg1 % arg2).str()
syntax.
The wrappers also implictely convert input parameters including the template
from wxString to UTF8.
The new format wrapper has been applied at multiple places as a start,
also some double macros _(L()) with new single macro _L().
2020-04-01 09:49:04 +02:00
YuSanka
042880ba2d
Search: Implemented highlighting of a letters from the search string
2020-04-01 09:07:33 +02:00
enricoturri1966
daa6dd0a25
Merge branch 'master' of https://github.com/prusa3d/PrusaSlicer
2020-03-31 18:05:12 +02:00
enricoturri1966
e886475fe7
Fixed build when tech ENABLE_NON_STATIC_CANVAS_MANAGER is disabled
2020-03-31 18:04:49 +02:00
Enrico Turri
081a24abf3
Follow-up of 095062e371
-> 3DConnexion settings dialog (Ctrl+M) shown only on Linux (not Mac)
2020-03-31 15:30:24 +02:00
Enrico Turri
095062e371
3DConnexion settings dialog (Ctrl+M) shown only on Mac
2020-03-31 14:16:53 +02:00
Enrico Turri
f1ccd38258
Fixed shaders on Intel Cards - not allowed use of 'active' word
2020-03-31 12:51:50 +02:00
bubnikv
25d58faaad
WIP: Windows specific 3Dconnexion using WM_INPUT.
...
This implementation works with the 3DConnexion driver (sic!)
if PrusaSlicer.xml is stored into c:\Program Files\3Dconnexion\3DxWare\3DxWinCore64\Cfg\
The implementation is inspired with Blender, see code inside WITH_INPUT_NDOF blocks.
2020-03-31 09:01:55 +02:00
tamasmeszaros
70baa0d246
Fix arrange for large beds
2020-03-30 13:26:24 +02:00
YuSanka
abad9133eb
Added new icon for "collapse sidebar"
...
+ The tooltip for a "Collapse" button is updated according to the collapse state
2020-03-30 11:53:58 +02:00
YuSanka
ab02d344e4
Activated "collapsed sidebar" button
2020-03-29 20:52:14 +02:00
YuSanka
d317f0753a
Merge remote-tracking branch 'origin/master' into ys_search
2020-03-29 20:21:00 +02:00
YuSanka
7236abe473
Merge remote-tracking branch 'origin/ys_collapse_sidebar' into ys_search
2020-03-28 22:07:56 +01:00
YuSanka
14703fe561
Implemented Search on Plater, usint imGui
2020-03-28 19:39:24 +01:00
bubnikv
ec86d94f02
Workaround for the Prusa3D Fast (layer height 0.35mm) profile, which
...
collides with the maximum allowed layer height at the Printer Extruder
0.25mm.
Works around "MMU2s and supports on prusaslicer 2.2.0 issue #3919 "
2020-03-27 14:15:09 +01:00
bubnikv
58192ba6c2
Win32 specific: Using SHChangeNotifyRegister to get notifications
...
on removable media insert / eject events.
From now on we no more poll for removable media on Windows.
Thanks @mjgtp from prusaprinters.org
See the following discussion:
https://forum.prusaprinters.org/forum/prusaslicer/prusaslicer-trying-to-access-my-floppy-disk-a
The final working code sample was taken from Chromium source code,
volume_mount_watcher_win.cc
2020-03-27 08:10:00 +01:00
bubnikv
3fdd643f49
Fix of PrusaSlicer trying to access my floppy disk (A:\)
...
Some customers seem to posses a floppy drive (sic!) and some floppy
drives start spinning if accessed just to check whether there is
a medium plugged in or not.
From now, the A: and B: drives are not checked anymore for removable
media. Now let's pray nobody maps an SD card or flash drive to A: or B:
Fixes
https://forum.prusaprinters.org/forum/prusaslicer/prusaslicer-trying-to-access-my-floppy-disk-a
2020-03-26 19:06:23 +01:00
bubnikv
a1aee69c5a
Fixed a logical error in substitution of the selected language with
...
the system language: System language returned by Windows for pt_BR
is pt_PT, and this language was then used incorrectly to select
the dictionary.
Now the selected language is stored into PrusaSlicer.ini and
if a substitution is to be performed to select locales (not the dictionary)
based on the system recommended locales, this substitution is being
done in runtime just before switching the locales.
Fixes PrusaSlicer 2.3.0 - Language Portuguese (Brazilian) dont work #3901
Also hopefully fixed
LANGUAGE environment variable not respected #2970
by calling
wxTranslations::Get()->GetBestTranslation()
on Unix systems as well, which reads the "LANGUAGE" environment.
2020-03-26 14:27:18 +01:00
Lukas Matena
0054134ff8
Fix of #3916 (macOS crash when generating WarningTexture)
...
Likely the same cause as #3371 , hopefully the same solution as presented in 4f1f507
2020-03-25 23:55:25 +01:00