* Get libslic3r tests closer to passing
I can't get geometry tests to do anything useful. I've added extra
output, but it hasn't helped me figure out why they don't work
yet. That's also probably the last broken 3mf test doesn't work.
The config tests were mostly broken because of config name changes.
The placeholder_parser tests have some things that may-or-may-not
still apply to Orca.
* Vendor a 3.x version of Catch2
Everything is surely broken at this point.
* Allow building tests separately from Orca with build_linux.sh
* Remove unnecessary log message screwing up ctest
Same solution as Prusaslicer
* Make 2 TriangleMesh methods const
Since they can be.
* Move method comment to the header where it belongsc
* Add indirectly-included header directly
Transform3d IIRC
* libslic3r tests converted to Catch2 v3
Still has 3 failing tests, but builds and runs.
* Disable 2D convex hull test and comment what I've learned
Not sure the best way to solve this yet.
* Add diff compare method for DynamicConfig
Help the unit test report errors better.
* Perl no longer used, remove comment line
* Clang-format Config.?pp
So difficult to work with ATM
* Remove cpp17 unit tests
Who gives a shit
* Don't need explicit "example" test
We have lots of tests to serve as examples.
* Leave breadcrumb to enable sla_print tests
* Fix serialization of DynamicConfig
Add comments to test, because these code paths might not be even used
anymore.
* Update run_unit_tests to run all the tests
By the time I'm done with the PR all tests will either excluded by
default or passing, so just do all.
* Update how-to-test now that build_linux.sh builds tests separately
* Update cmake regenerate instructions
Read this online; hopefully works.
* Enable slic3rutils test with Catch2 v3
* Port libnest2d and fff_print to Catch2 v3
They build. Many failing.
* Add slightly more info to Objects not fit on bed exception
* Disable failing fff_print tests from running
They're mostly failing for "objects don't fit on bed" for an
infinite-sized bed. Given infinite bed is probably only used in tests,
it probably was incidentally broken long ago.
* Must checkout tests directory in GH Actions
So we get the test data
* Missed a failing fff_print test
* Disable (most/all) broken libnest2d tests
Trying all, not checking yet though
* Fix Polygon convex/concave detection tests
Document the implementation too. Reorganize the tests to be cleaner.
* Update the test script to run tests in parallel
* Get sla_print tests to build
Probably not passing
* Don't cause full project rebuild when updating test CMakeLists.txts
* Revert "Clang-format Config.?pp"
This reverts commit 771e4c0ad2.
---------
Co-authored-by: SoftFever <softfeverever@gmail.com>
* Auto generate CMAKE_PREFIX_PATH/DESTDIR
* Auto set CMAKE_INSTALL_PREFIX
* Always default SLIC3R_STATIC to on
* Only allow one value for CMAKE_OSX_ARCHITECTURES
* Set arch for OpenSSL from CMAKE_OSX_ARCHITECTURES
* Set CMAKE_INSTALL_RPATH from CMAKE_PREFIX_PATH
* Default CMAKE_MACOSX_RPATH and CMAKE_MACOSX_BUNDLE to on
* Auto set BBL_RELEASE_TO_PUBLIC based on build config
* Default to GTK 3
* Fix linux debug build
Update find modules to also look for the debug variant of the libraries
* Set DEP_DEBUG and ORCA_INCLUDE_DEBUG_INFO based on CMAKE_BUILD_TYPE
* Add a fallback value for Windows SDK if the env variables are not set
* Reflect CMake changes in the build scripts
* Add missing line
* Fix auto setting DEP_DEBUG and ORCA_INCLUDE_DEBUG_INFO
* Update dep folder name for linux in GH actions
* Invert dep-folder-name conditions
`''` is considered a falsy value, which was causing the value to always be set to 'OrcaSlicer_dep'
* Properly handle finding the debug version of libnoise
* Convert FindNLopt.cmake to a config mode wrapper
* Use separate build directory for debug builds on Linux
* Move find_package for libnoise
* Cleanup and improve linux build script
- Add dry run
- Add build in RelWithDebInfo
- Add function to print and run commands
* Remove linux destdir deprecation and cleanup
* Fix flatpak build
* Disable fail fast for flatpak builds
* Flatpak improvements
- Build wxWidgets using deps cmake
- Improve handling of space freeing commands while building deps
- Allow cmake to directly download deps
- Set needed flags within cmake instead of the build manifest
* Print clean build commands
* Implement shellcheck recommendations
* Cleanup
* Fix CMakeLists.txt syntax by replacing empty elseif with else statement
---------
Co-authored-by: SoftFever <softfeverever@gmail.com>
Move many third-party components' source codes from the src folder to a new folder called deps_src. The goal is to make the code structure clearer and easier to navigate.
* Add support for perlin noise fuzzy skin
* Support multiple types of coherent noise
* Updated tooltips for more clarity.
* Reorder options as suggested by @discip
* Fix accidental removal of &
* Move libnoise to deps
---------
Co-authored-by: SoftFever <softfeverever@gmail.com>
* Enable ability to open `prusaslicer://` links
* Add needed function to miniz
* Import Zip Functionality
Allows zip file to be drag and dropped or imported via the menu option
Based on prusa3d/PrusaSlicer@ce38e57 and current master branch files
* Update dialog style to match Orca
* Ensure link is from printables
* add toggle option in preferences
doesn't actually control anything yet
* Add Downloader classes
As-is from PS master
* Create Orca Styled Variant of Icons
* Add Icons to ImGui
* Use PS's Downloader impl for `prusaslicer://` links
* Implement URL Registering on Windows
* Implement prusaslicer:// link on macOS
* Remove unnecessary class name qualifier in Plater.hpp
* Add downloader desktop integration registration and undo
* Revert Info.plist
* register prusaslicer:// on user request only
* fix build error
* fix single instance problem
* format
* add orcalicer:// handler for Mac
Attempt to add Linux support but seems not working
---------
Co-authored-by: Ocraftyone <Ocraftyone@users.noreply.github.com>
* FIX: the logic of buried points that were not buried
JIRA: none
Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: Id95174659c5fce7feba409eb5e14916608745fa4
* ci: update network module based on commit bc7ca98
Change-Id: I923526f0bf9ce5a288144fa1f9b0f2fc640f41b7
* Fix Firefox
Co-authored-by: hadess <hadess@hadess.net>
* FIX: cali: custom created filament from AMS displayed as incompatible
jira: new
remove the condition: is_system
Change-Id: Ib1366966bbdbe01bc9e2483d9914d270ebefa976
* FIX: duplicated items in comboBox at calibration completed page
jira: new
Change-Id: I4749a2206df16c438e0d3098e36274b2a20f313e
* ENH:update support for P1S plus
jira:[for p1s plus]
Change-Id: Id577d4e94e2162cb0045d261dfaa5f396ecded2f
* ENH: CLI: add mk information support
JIRA: no jira
Change-Id: Idd89b143d439de50d9f52eb8aec95b262d66875d
* ENH:calibration support p1p plus
jira:[plus]
Change-Id: Ia290d3a8a8b9adaac7a6ee26d9a8b5ea0c1b3aee
* FIX: add log for base_id and filament_id
github: #3087
Change-Id: Iebfbd0f224fce49f33fc81c71e6108f6e3abb5ff
* FIX: sync whole preset vendor directory
Change-Id: I191dbe979a87ff35d38cab1149b7975664344838
Jira: STUDIO-5534
(cherry picked from commit 628866608116336453804aa1217dd55db04d47ad)
* FIX: use t_utc for debug only
Change-Id: Ia05d8969d4de3dd38908980d6e17a3ebb11ca279
Github 3045
Change-Id: I77935df53bbf2772b1146e5c330c537165a3a2e6
* FIX:make sort_volumes right
Jira: STUDIO-5645
Change-Id: If324c9115bfaaf0c1b7b4be7c7ee96ba6b8ac890
* ENH:keep an unload logic
jira:[for unload]
Change-Id: Id30ec71ffa5b2dac89346ea47ca48a62479e3ab1
* FIX: several problems with mesh boolean
1. Cut with multiple volumes are OK now.
2. Close mesh boolean fail error with new object or open object
3. Fix wrong name and config of boolean resulting object
github: #3118
jira: none
Change-Id: If2c9dbfb36cbdfe4917a2371217923891bb7909c
(cherry picked from commit 982c0ecb92cf7c2b5ae5972ab900a6b10e7dda50)
* NEW:limit the length of project name
jira:[project name]
Change-Id: I955620f7073b3b7fda280d1118524f561d047751
* ENH:adjusting the warning level of timelpase
jira:[STUDIO-5662]
Change-Id: I4902b22d316f5e09a97a62c88b8a98e55c405434
* FIX: 3mf specification: change namespace form slic3rpe to BambuStudio
Jira: XXXX
Change-Id: Id705affc875ef23fdf2ac6d79f0cb0aafc4f7050
* NEW: Open MakerWorld With BambuStudio GetParam
JIRA: none
Change-Id: I0d65b364f1cd2d634a88882ab072c3e61ea89167
(cherry picked from commit 8eaf45e5359439a7c796fd79876c86775abcf48e)
* FIX: Filament issue generated when creating a printer
Jira: XXXX
Change-Id: I976770b69b47641bd54aa7a9c56fba7f58d1ab68
(cherry picked from commit ba42188b93c58b3954234d72acdd9769a68e3d3c)
* FIX: Blank page appears when editing presets
Jira: 5563
Change-Id: I4c49e05515b1beff55991e92f8079c4499c27eab
(cherry picked from commit e86517d290f4cd0765a230d811b0ddf2c9f34c17)
* FIX: context menu didn't update UI
jira: STUDIO-5691
Change-Id: Ia66b8623d832eba805aff5320941233a68ff258b
* FIX: crash of "filling bed"
"get_arrange_settings() const" gets trapped in infinite recursive calling.
Now we delete this function.
jira: STUDIO-5688
Change-Id: Ia39974734bb37b2a2f06b5bf78185f01be726872
* FIX: boolean hangs in the middle of color painting
Can't do splits in combine_mesh_fff, as do_boolean of mcut will split meshes.
jira: STUDIO-5693
Change-Id: Idddb7d20dd7ca386c39ddd3d87d9defc3136aa5d
(cherry picked from commit 6c67d015941458e37faaf0015b6509b5a0eadc0e)
* Fix: Fix a number of compilation problems
issues found when using gcc version 13.2.0 (GCC) in a Flatpak sandbox
github : https://github.com/bambulab/BambuStudio/issues/3074
github pull request: https://github.com/bambulab/BambuStudio/pull/3096
Change-Id: I08aeac593eb1ce7675894df72e8489200bae713d
(cherry picked from commit 069d133d66bfa682de4a860e379d5dc16b3d907c)
* fix: macos icns issue when icon was not attached
github pull request:https://github.com/bambulab/BambuStudio/pull/3116
Change-Id: I49072ad49f3af7669a6d307c791594ade210da50
(cherry picked from commit c977e5582e3a30ad16dd267810037423aad9a53c)
* FIX: Add flush_length for change_filament_gcode
Change-Id: I30f4b97d3d61c2a57f0e92f157cbd31c38aa7265
Jira: XXXX
(cherry picked from commit 92eb2bac977a0c4095b316cbbc6580fb5228b710)
* FIX: edit preset dialog can't close on mac
Jira: 5696
Change-Id: Ib33dfd07cc588ddd3805e3490a4d8c36dcd890ac
* ENH: add dev_ota_version in ssdp
JIRA: STUDIO-5740
Change-Id: Ic80e6d4b9bf82813fdc4a76604a3d36213d12b03
Signed-off-by: Stone Li <stone.li@bambulab.com>
* NEW:Adapt to multicolour and gradient colour
JIRA:xxxx
Change-Id: I8084cab603d5681cbcaf2d6f5e0d7ad5419cb2af
* NEW:Adaptation of semi transparent materials
JIRA: XXXX
Change-Id: Ie32d8ce67c37b85eb6d7d6594cb514a696307e68
* FIX: disable flush options if prime tower is unchecked
jira: STUDIO-5639
Change-Id: I25081584d430bc7d062e14bcc2cdbf7522cf9d99
* ENH: refine GetVersion for HMS query
JIRA: STUDIO-5763
Change-Id: Ia3ccc07d79cc0736eb12e9782da50211abb74772
Signed-off-by: Stone Li <stone.li@bambulab.com>
* FIX: Prefer old selection when sync AMS not compatible
Change-Id: I6b18db51887132a997cf78d70fff9a92e23bc44a
Jira: STUDIO-5416
(cherry picked from commit 077fae29823cf4f3071d408b1b40f55ee0cb33c6)
* FIX: The flushing was not auto-calc when sync ams list
JIRA: STUDIO-5551
1. flushing volume auto-calc when sync ams list
2. flushing volume takes the larger calculation value when filament has
multi-colors
Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Change-Id: I72e6f9780ea56103a44c2da6068440a4615c254d
* FIX:fixed invalid links
jira:[fixed link]
Change-Id: I036a38b6e8e94da762f93805bd7be706538771fe
* FIX: Prompt to delete problematic presets
Jira: XXXX
Change-Id: Ic43f7bb782794d7ab0b6acbffbb5d73e94f6ed73
* FIX:fixed incorrect HMS content
jira:[STUDIO-5818]
Change-Id: Ia2896d6f0ab1ffedbc850e54168acece8e47bdbb
* FIX:external transparent material display error
JIRA: STUDIO-5845
Change-Id: I0a4f05ac5d5c0ac49d85a704ee65a7221c5f1e1d
* FIX: [5846] Custom Filament Page show System Filament
Simultaneously solve: When downloading Preset from the cloud, the filament_id of the preset in m_preset is null.
Jira: 5846
Change-Id: I6ba1b46fe92e345614b6a4af3fffa87d81fa2456
* FIX:A1 and p1 series do not support custom materials
JIRA:XXXX
Change-Id: Ib0459273d1f9a7152a5563757204634a8d0cd6f5
* FIX: exception when comparing profiles
jira:[NEW]
Signed-off-by: XunZhangBambu <xun.zhang@bambulab.com>
Change-Id: I946b5fcd35f779d271df2b3de731fdcada5aab29
(cherry picked from commit 00e739570812e5c4be3e0f7702ce8c72c0f9e72b)
* FIX: hide_id_middle_string
Change-Id: I28f32ec526b443d31d7992971b80ab1cb737deb6
Github: STUDIO-5825
* ENH: modify some logs level
JIRA: STUDIO-5958
Change-Id: I5a8592dfb8ffa9a81952535cb30944f867aa0e22
Signed-off-by: Stone Li <stone.li@bambulab.com>
* NEW:build plate marker detect
Change-Id: I70f03efea688bb6ce71c3f5990bb3c50605ab184
* FIX: Studio UI Freeze when saving user preset
github: #3335
Change-Id: Idaf53f673a3e46408826c06bdde2c592395d358b
* update bbl plugin version
* fix build errors
* update bbl profiles
* update color
---------
Signed-off-by: Kunlong Ma <kunlong.ma@bambulab.com>
Signed-off-by: Stone Li <stone.li@bambulab.com>
Co-authored-by: Kunlong Ma <kunlong.ma@bambulab.com>
Co-authored-by: gerrit <gerrit@bambulab.com>
Co-authored-by: liz.li <liz.li@bambulab.com>
Co-authored-by: tao wang <tao.wang@bambulab.com>
Co-authored-by: lane.wei <lane.wei@bambulab.com>
Co-authored-by: maosheng.wei <maosheng.wei@bambulab.com>
Co-authored-by: chunmao.guo <chunmao.guo@bambulab.com>
Co-authored-by: zhou.xu <zhou.xu@bambulab.com>
Co-authored-by: Arthur <arthur.tang@bambulab.com>
Co-authored-by: Bastien Nocera <hadess@hadess.net>
Co-authored-by: zhimin.zeng <zhimin.zeng@bambulab.com>
Co-authored-by: hu.wang <hu.wang@bambulab.com>
Co-authored-by: Stone Li <stone.li@bambulab.com>
Co-authored-by: XunZhangBambu <xun.zhang@bambulab.com>
CGAL to 5.4
TBB to 2021.5
OpenVDB to 8.2
Change-Id: I08992fce104e6f56001643c3c5dbf6c3f59ffc3d
(cherry picked from commit 1571f176fc37dda1c3e889776e13fa49bba4ae42)
* feat(webview): enable context menu
This enables the ability (at least on MacOS) to reload the webview.
* fix(webview): add handler for webview error
Adding this un-covered the following error when trying to load a the printer page using http and hostname:
```
OnError: error loading page about:blank wxWEBVIEW_NAV_ERR_OTHER The resource could not be loaded because the App Transport Security policy requires the use of a secure connection.
```
* fix(macos): disable App Transport Security policy
Disables the [App Transport Security](https://developer.apple.com/documentation/bundleresources/information_property_list/nsapptransportsecurity) policy that blocks loading http urls (via hostname...ip addresses were fine because ip addresses can't have certs, so they would be excluded from the ATS restriction).
Resolves#791
On Linux, wxGTK by default attempts to use EGL if it is available on the
system, rather than GLX. Unfortunately, the ancient version of GLEW that we
packaged in did not support EGL, and even if it did, the configuration was
not set up to enable EGL. To solve this, we:
* upgrade GLEW to version 2.2.0, from upstream GitHub
* modify the Bambu build process to enforce that we use GLEW from the
built dependency
* remove the "extra" even older GLEW that was packaged
* modify GLEW's CMake configuration to enable EGL support when it is
available on the system (using the same test as wxWidgets uses to decide
whether to enable EGL support); if EGL isn't available at compile time,
both GLEW and wxWidgets will fall back on GLX
Note that you probably will have to blow away your CMakeCache for this to
work correctly -- otherwise, you may end up with the system GLEW, if you
have one installed (which is probably not what you want -- on Ubuntu, the
system GLEW is GLX, not EGL).