150 Commits

Author SHA1 Message Date
YuSanka
0494021cc3 FileReader: Use separate functions for loading of a model from any file and for loading of all information (model, config and config substitutions) from the 3mf.
+ Added localization markers for errors

Plater: load_files() : Check for type_zip_amf and prusa is removed from conditions (it doesn't used as project's extensions anymore).

+ ModelProcessing: Some functions, like delete zero object, detection if model need to be converted from other units or looks like multipart are moved inside load_model() and theirs return values are written in load statistics, which have to be used by UI later.
2025-01-13 14:13:04 +01:00
YuSanka
c5b525ba3f Functions, related to load information from files are extracted from the Model into FileReader
+ GalleryDialog:: load_files() is renamed to add_files_to_custom_dir()
2025-01-13 14:13:04 +01:00
YuSanka
b834bebac1 Functions, related to processing of the model after are extracted from the Model into ModelProcessing.
+ Split/merge functions are moved into ModelProcessing too.
2025-01-13 14:13:04 +01:00
Lukas Matena
8c7014cc3c Flush stdout when sending progress/warnings in CLI mode 2024-12-17 12:58:43 +01:00
Lukas Matena
cd81c686d1 CLI thumbnails - use thumbnail from 3MF 2024-12-11 16:12:29 +01:00
Martin Šach
45eda1a00f Arrange: Avoid dependency of arrange on multiple beds
Drop the BedsGrid::Gap type alias as it brings more problems than it
solves.
2024-11-20 16:04:15 +01:00
Martin Šach
5199d8fb48 Arrange: Move arrange into separate cmake targets
- Create a slicer specific arrange target
- Create a general arrange target from the arrange core
2024-11-20 16:04:15 +01:00
Martin Šach
3e33631abf Arrange: Use arrange for multiple beds.
- Support multiple wipe towers
- Arrange to grid directly within the arrange algorithm
- Suporrt arranging just the current bed
- Support fill bed with instances
- Add arrange selected on current bed
- Add arrange current bed keyboard shortcuts
- Fix cut not arranging properly (set instance bed after cut to the active bed, use arrange current bed selection only after cut)
- Fix shift-D on arrange
- Add window with options to the bed arrange button
2024-11-20 16:04:15 +01:00
David Kocik
c3ca39d5c5 Possible fix of #12969 #13046 2024-11-18 23:38:15 +01:00
Lukas Matena
ccc7c350a0 Remove AMF export (functionality not available from GUI since 2.4.0) 2024-10-16 12:20:22 +02:00
YuSanka
4a2e9d887a CLI: Start PS with entered print/printer/material profiles, when no other input info is provided
(FR from #13327 - Command line in shortcut to select printer configuration doesn't work)

SPE-2465
2024-09-26 14:48:44 +02:00
Jan Bařtipán
6eca12a1ed Online service configuration can be now changed via env variables, added support for turning webdev tools via command line option 2024-08-09 10:07:47 +02:00
enricoturri1966
2eeca737ea Technology ENABLE_OPENGL_AUTO_AA_SAMPLES set as default 2024-05-02 13:23:26 +02:00
enricoturri1966
c2b8914ed0 Tech ENABLE_GL_CORE_PROFILE set as default 2024-03-26 14:41:57 +01:00
enricoturri1966
82001626dd SPE-2124: Added command line option 'opengl-aa' to allow the user to turn on the automatic selection of max number of supported samples for OpenGL antialising 2024-03-26 14:27:01 +01:00
YuSanka
d0e31a0e61 CLI: If model for slicing is loaded from 3mf file, then its geometry has to be used and arrange couldn't be apply for this model.
So, check a state of "dont_arrange" parameter and set it to "true", if its value is "false".
2024-03-11 10:27:22 +01:00
YuSanka
ce910eb60a CLI: Fixed "query-printer-models".
If printer_technology options isn't used, then ALL installed printer models will be returned.
2024-03-11 10:27:22 +01:00
YuSanka
a46980ca47 Added CLI options to slice using the installed profiles
SPE-2164
2024-03-11 10:27:22 +01:00
Lukas Matena
fbe63ba1ab Improvements and refactoring of datadir handling 2024-03-11 10:27:22 +01:00
YuSanka
5bea4e7104 Follow-up 85c0d636 - Fix for get_printer_profiles_node()
Clear nodes before filling.
+ Fixed tooltips for "query-..." options
2024-03-11 10:20:29 +01:00
YuSanka
5f5147377e Move ProfilesSharingUtils to backend (to libslic3r from GUI) 2024-03-11 10:20:29 +01:00
YuSanka
02b65b2366 ProfilesSharingUtils : Implemented load_full_print_config() function to load full print config from PresetBundle. 2024-03-11 10:20:29 +01:00
YuSanka
61ceac8ea2 ProfilesSharingUtils : Improvements for requests.
* "query-printer-models" is extended to expose printer presets for each printer variant
* "query-printer-profiles" is currently commented as not-used
* "query-print-filament-profiles" is extended to expose "is_user_profile" state for each print/material profiles

+ Removed includes related to GUI.
+ Removed a code to loaded all known vendors.
2024-03-11 10:20:29 +01:00
YuSanka
4f0894aa6c SPE-2028 : Implement the command line interface for querying presets 2024-03-11 10:17:36 +01:00
Lukas Matena
a42223f963 Merge branch 'master_27x' 2024-01-26 13:07:19 +01:00
enricoturri1966
df14f7518d SPE-2092: Fixed OpenGL initialization when user specifies invalid value for command line option 'opengl-version' 2024-01-25 09:33:16 +01:00
Lukas Matena
3cab0cbecb Using Semver to check minimum required OpenGL version 2024-01-22 12:17:07 +01:00
enricoturri1966
1832c833a1 #12000: Fixes incorrect detection of supported OpenGL version (SPE-2092)
1) Force OpenGL 3.2 as minimum required. If the graphic card does not support it, automatically switch to software renderer.

2) command line option: --opengl-version=X.Y -> allows to select core profile of version X.Y.

3) command line option: --opengl-compatibility -> allows to select compatibility profile of the highest OpenGL version supported by the graphic card.

4) command line option: --opengl-debug -> enable OpenGL debug output on card supporting OpenGL 4.3 or higher (output on console).
2024-01-22 12:16:55 +01:00
Martin Šach
eff53d4dba Add option cmd option to limit the number of threads 2024-01-17 10:45:13 +01:00
Lukas Matena
b82aa37bf5 Fixed build when building without GUI 2024-01-02 16:01:14 +01:00
tamasmeszaros
bffa3f8578 Get rid of in-source boost::nowide. Use upstream instead 2023-12-18 12:10:37 +01:00
enricoturri1966
d0dc6b99b6 SPE-1954: Fixed 3MF file containing post-processing script cannot be open as 'Start new PrusaSlicer instance' 2023-10-18 16:22:19 +02:00
enricoturri1966
3f3a3dd190 SPE-1954: Inform the user when loading/importing a project or a config file containing a post-processing script 2023-10-18 16:22:19 +02:00
Vojtech Bubnik
dd88e0c5df Fixed some duplicate macro definition warnings 2023-09-11 11:11:35 +02:00
YuSanka
55d5921d53 Editing of Custom G-code: Partially automation to get a list of placeholders for custom gcodes
+ Added missed resources
2023-08-29 11:47:44 +02:00
tamasmeszaros
0b31ef6e1e Beginning of arrange gen2 2023-08-16 09:59:10 +02:00
YuSanka
1b451cdf9f CutGizmo: Big code refactoring.
All manipulations related to cut are extracted to CutUtils now
2023-08-09 13:22:11 +02:00
Vojtech Bubnik
3349644964 Reworked handling of approximate / snug bounding boxes
at Model / ModelObject / PrintObject
Fixes #9467 #9519 #9646
Also fixed variable layer height editing for case such as mentioned
in the github issues above.
Also likely fixed some of the sinking objects issues.
2023-02-28 11:27:15 +01:00
Vojtech Bubnik
8472287601 Implementing a test whether the current thread is the main (UI) thread
and using it on AppConfig::save() to assert if save is called
from a worker thread.
The old assert was using thread names, which did not always work
on Windows.
Fixes #7839 #9178 #9370 #9420
2023-02-07 16:17:26 +01:00
David Kocik
ce38e57ec4 Downloader feature - Downloads from Printables.com
Custom URL Registration:
 - Windows - writes to registers.
 - Linux - desktop integration file.
 - Macos - info.plist.in creates registration and is controlled only via app config.
Registration is first made in Config Wizard. Or is triggered from Preferences. Path to downloads folder can be set.
URL link starts new instance of PS which sends data to running instance via SingleInstance structures if exists.
New progress notification is introduced with pause and stop buttons.
Downloader writes downloaded data by chunks.
Support for zip files is introduced. Zip files can be opened, downloaded or drag'n'droped in PS. Archive dialog is opened. Then if more than 1 project is selected, only geometry is loaded.
Opening of 3mf project now supports openning project in new PS instance.
2023-01-05 16:00:04 +01:00
enricoturri1966
569db9689f Removal of calls to Geometry::assemble_transform() 2022-11-24 14:58:20 +01:00
YuSanka
e689be65db Code cleaning 2022-09-27 09:10:09 +02:00
enricoturri1966
8db552ce26 Tech ENABLE_GL_CORE_PROFILE - Command line option '--opengl-core=M.m' renamed as '--opengl-version=M.m'
use case 1 - the option is not added to the command line - PrusaSlicer defaults to the highest available core profile OpenGL version

use case 2 - the option specify an OpenGL version which supports core profile - PrusaSlicer select the required OpenGL version, if available

use case 3 - the option specify an OpenGL version which does not support core profile - PrusaSlicer defaults to the highest available compatibility profile OpenGL version

use case 4 - the option contains invalid OpenGL version - PrusaSlicer defaults to the highest available core profile OpenGL version
2022-07-18 15:33:24 +02:00
enricoturri1966
e0c8ffc524 Tech ENABLE_OPENGL_DEBUG_OPTION - Let option opengl-debug be always available to avoid error unknown option at startup 2022-07-13 10:06:57 +02:00
enricoturri1966
22b634ca1d Fixed crash at startup on Mac OS 2022-07-13 08:56:00 +02:00
enricoturri1966
a6a0e3e759 Another attempt to fix crash at startup on Mac OS 2022-07-11 12:57:44 +02:00
enricoturri1966
a10495f132 Added some debug output to help finding the reason of crash at startup on Mac OS 2022-07-01 09:21:41 +02:00
enricoturri1966
38683ee221 Tech ENABLE_OPENGL_DEBUG_OPTION - Add new command line option '--opengl-debug' to allow users to force PrusaSlicer to output to console OpenGL related errors on graphics cards supporting it. 2022-06-30 09:49:29 +02:00
enricoturri1966
8d0780aabe Tech ENABLE_GL_CORE_PROFILE - Added command line option '--opengl-core=M.m' which allows the user to select a specific OpenGL version supporting core profile 2022-05-30 16:15:25 +02:00
Lukáš Hejl
bd644df2f7 Suppressed reports of memory leaks from AMD driver and D-Bus library. 2022-05-05 13:39:35 +02:00