Commit Graph

39 Commits

Author SHA1 Message Date
miaoxin
ef1ada05b7 NEW: add gcode conflict checker
1. add gcode conflict checker
2. add a new command line option: --no_check. When it's provided, gcode
   conflict check is skipped.

Change-Id: I6feafca8c5fa6c3c5eae1f0e541ce59d2f03dedf
(cherry picked from commit 5a39afb64e826a960d9673dcada89d02d62b3911)
2023-04-17 15:39:02 +08:00
lane.wei
bc18130d9e ENH: thumbnail: add top_view thumbnails and picking thumbnails
1. add top view thumbnail for each plate
2. add picking thumbnails for each plate
3. save model object id for picking

Change-Id: I1d7f6ade22726ff12c282cb12e4a78e6b444a070
2023-04-17 15:39:02 +08:00
lane.wei
871043d4b3 FIX: CLI: fix the filament_type not correct issue for support-w
1. filament_type not correct in slicedinfo
2. missing serveral information in bbox

Change-Id: I0393ebc887591548a5a1d883661b28876b9ede6e
2023-04-17 15:39:02 +08:00
lane.wei
d4e53f2233 ENH: CLI: adjust the thumbnail size to 512
Change-Id: I79c8d584b23e7d4d9c27ce1859b322d9fddebc90
2023-04-17 15:39:02 +08:00
lane.wei
c0fd7408c1 ENH: cli: add pre-check logic when slicing all
Change-Id: Ib13a5dd11175c0835b7a1362317941aa6a04474b
(cherry picked from commit a6f7ad231e5694ce12f9fd34518425f31c3bb5bd)
2023-04-17 15:39:02 +08:00
lane.wei
b6d0ca3af1 ENH: add the time limit and triangle limit for cli slicing
Change-Id: I80d6e58dca6648427dbe4cfbc01eabdedfa79f52
2023-04-17 15:39:02 +08:00
lane.wei
0f93780fab ENH: backup: add logic to cleanup directory under cli
Change-Id: I7a846e362f45d1c7e34bef59be3b2c312799d0d2
2023-04-17 15:39:02 +08:00
lane.wei
b6dffe40b4 FIX: fix the bed shape not correct issue when loading old 3mf
Change-Id: I924c47ea4a1f21b5e9854abdcedfe8b689ddcb67
2023-02-28 18:44:28 +08:00
lane.wei
069f4191d0 FIX: cli: fix a crash caused by log
Change-Id: I3dad5a47241ff57818e68fda58d7f70f497bf5e1
2023-02-24 17:44:15 +08:00
tao.jin
5c10f51eb6 ENH: create new page on click of privacy policy
Change-Id: I20026514c1e880986f24716c9f473507f608cd67
2023-02-22 20:09:17 +08:00
lane.wei
24b2d2e6fc ENH: translate old models to correct position
Correct the position of some old models

Change-Id: I5105dacff5d6b2895507fb57d77197334a651b47
2023-02-22 20:09:17 +08:00
lane.wei
a098a8bdb1 ENH: validate the config from 3mf and give some hints when there are errors
Change-Id: Ic25e5426e4e85a35a6a2413109f47b653955ec78
2023-02-22 20:09:17 +08:00
lane.wei
23c551cac6 ENH: refine log level for cli
Change-Id: I781319ae85bff77f58931689f589b53e0e778389
2023-02-22 20:09:17 +08:00
Joshua Wise
6f8341695e Add support for Bambu Lab X1 series live video stream on Linux.
wxWidgets on Linux uses GStreamer as its back-end for wxMediaCtrl, which
doesn't have a bambu: URI handler.  On Windows, this is handled by a Windows
Media subsystem plugin, and on Mac, this is handled with a BambuPlayer
class.  Luckily, the libBambuSource.so binary that is distributed with the
network plugin package already contains support for receiving h.264 data
from the network, and the API is the same as is used by the tiny
bambusource.exe binary on Windows; we glue this into a GStreamer source
plugin that registers a URI handler for bambu:.

To make this work, we make a few additional changes elsewhere.  GStreamer
seems to have trouble rendering an Xv overlay onto a 32bpp X visual, but
Bambu Slicer seems to request a 32bpp visual for some background
transparency in the Notebook; it doesn't seem to use it in an interesting
way on Linux, though, so we remove that request for transparency to allow
Bambu Studio to render to a 24bpp visual.  The media controller
infrastructure also makes a few assumptions about when sizing information
can be queried from a wxMediaCtrl backend that do not hold true on Linux; we
either fix those assumptions, or fake them out, as needed.  We also make a
few changes needed to successfully compile C.

This has only been tested with the GStreamer backend for wxWidgets --
notably, not the GStreamer-play backend (these are, astonishingly, two
different things!).  If you find that this seems not to work, consider
*un*installing the libgstreamer-plugins-bad1.0-dev package and then
rebuilding wxWidgets.
2023-01-12 14:56:04 +08:00
lane.wei
d46e6d5690 FIX: bed_type: fix the bed_type issue when already set in plate
Change-Id: Ieb9c432051aeaf1dbb94c75f95974ff41c0713a0
(cherry picked from commit 73de2ea2cfcfa6b09373f4faa2d84f0b6e2f4ffc)
2023-01-10 19:08:26 +08:00
lane.wei
b01f4679bd ENH: debug: when not release to public, use vectored exception handler
Change-Id: I2f80f07e035d6a6652574470ac13631baba7cf7d
2023-01-10 19:08:26 +08:00
lane.wei
5e51ae3845 ENH: CLI: some refines on compatible logic
1. export compatible related values to 3mf
2. process compatible related values when loading

Change-Id: Ib7ed3d165cda5d62e0074652d474567494141631
(cherry picked from commit 989fe6439d573457fa78afc5376d04d3120dbbfd)
2022-12-15 04:38:15 -05:00
lane.wei
37eeaa8847 ENH: slicing: add cache data load/export for slicing
Change-Id: I88b7c79b6f79ec6bed0f829316b67310cac99b44
(cherry picked from commit 67c1d2e8dd459cc4450ce580632f01e25db038ac)
2022-12-15 04:38:15 -05:00
lane.wei
824fa6c4bd ENH: CLI: support filament mapping
support null filament when mapping

Change-Id: I9384fc5a8e78aa8467eef1610d49b92d87512720
2022-12-15 04:38:15 -05:00
lane.wei
d6500234e7 ENH: 3mf_importer: optimize the load speed of 3mf
1. parallel load object files
2. only load object used by some plate(cli)
3. improve the loading speed when generate objects by using reference

Change-Id: I2719651e715f2e35326e760c4b7cdb3114f54992
2022-12-15 04:33:48 -05:00
lane.wei
9a88f122b5 ENH: CLI: some refines of slicing
1. add support_used flag in sliced_info
2. use the old thumbnail if no need

Change-Id: I8ad166978fe6f76f86b1ef014945dd70b26a6285
2022-12-15 04:33:48 -05:00
lane.wei
74576ab4ea ENH: refine multiple plate and CLI logic
1. support bed_type for each plate in CLI
2. don't render the calibration thumbnail under CLI
3. fix the plate box not generated issue
4. refine the slice_all button's status logic: from all slicable to one slicable
5. fix serveral issues in multiple plate's switch and slicing

Change-Id: I6193a799da0367068169ce315d1fcc9098357fd1
2022-12-15 04:33:48 -05:00
lane.wei
200c2b7443 ENH: CLI: add warning message
send the warning message back to caller

Change-Id: Id36edc9537721fb890f2bd4eb8db4fc0670eb97d
2022-12-15 04:33:48 -05:00
lane.wei
f52f570d3a FIX: fix the total progress not correct issue
Change-Id: I18b9d5034726b45c7331f1dae5e2b24c5e5bd170
(cherry picked from commit ba8c691a2c94f7a2f2ff0ce7f195de20a6c22573)
2022-12-15 04:33:48 -05:00
lane.wei
39b2750ae0 FIX: fix the auxiliaries files not included issue in cli
Change-Id: Iecc18d6013ddc3397b4405a80b24e0630b293fc7
2022-12-15 04:33:48 -05:00
lane.wei
ca1f7a0d05 ENH: CLI: add total progress of slicing
Change-Id: I05e471aa4cd76642cdd63275620a4b656c8e3327
2022-12-15 04:33:48 -05:00
lane.wei
0ab26a0bc2 ENH: CLI: use json insteadof string for progress pipe
Change-Id: I1fdecfa6198d06d0c9745f3cbeb02dece9d8e20f
2022-12-15 04:33:48 -05:00
lane.wei
165a7167e7 ENH: CLI: refine logic
1. return error when there is object partly inside the plate;
2. add the status callback for progress indicating
3. add the version in help
4. fix the return state of validation from 1 to -51

Change-Id: I716057bd5b28a4beb2871614b94708a0860af1a2
2022-12-15 04:33:48 -05:00
lane.wei
b39c99244b ENH: CLI: add error code logic in cli
Change-Id: I4c1aace95218ff3a7a3a37f47b7d0880c9b64451
2022-12-15 04:33:48 -05:00
lane.wei
1f2307cc51 FIX: cli: fix the thumbnail rendering issue
1. fix the color not correct issue
2. fix the warning when loading thumbnail under cli
3. remove the invalid error log

Change-Id: I4dd553b218e264bb811606053d920b5861ad6bd4
2022-12-15 04:33:48 -05:00
lane.wei
dd8fa45f4f FIX: export 3mf using SplitModel under CLI
Change-Id: Ie6b81de47ebd04b462522d72d30e030e91bda313
(cherry picked from commit 2c284ab5681fd50699a1fd152dd6e4f18a0d4cb4)
2022-12-15 04:33:48 -05:00
lane.wei
1573dd2fd2 ENH: some small refines
1. don't sync_tooltip for it is not used
2. enable the dll black list
3. add some log

Change-Id: I4f7ea008121cf7252ef32680b68f063d146661e5
2022-12-15 04:33:48 -05:00
Tao Wang
c5a16709b8 FIX:fixed the blocking module of linux
Change-Id: I06b357f9592631a729208514a3239f944a98cc96
2022-09-29 11:16:43 +08:00
lane.wei
f77e4190c0 change the main thread name to bambustu_main
the max length of linux's thread name could only be 16 bytes
bambustudio_main can not be set by pthread_setname_np

Change-Id: Idab83896c81787b32f6a4dde869b101da1d69e5c
2022-09-14 17:39:11 +08:00
chunmao.guo
9e962c5bc0 FIX: wxWidgets asserts
Change-Id: I583edbde501c2bfe8adfa8fdb525479a379a4cb8
2022-08-26 09:25:59 +08:00
lane.wei
3c84c5ce05 Macos: add the support of file association
Change-Id: Iacd3b35423dac6f63416628d28b0502ba175f7b4
2022-08-05 16:11:42 +08:00
lane.wei
af0b3ddb28 Update the codes to 01.01.00.10 for the formal release
1. first formal version of macos
2. add the bambu networking plugin install logic
3. auto compute the wipe volume when filament change
4. add the logic of wiping into support
5. refine the GUI layout and icons, improve the gui apperance in lots of
   small places
6. serveral improve to support
7. support AMS auto-mapping
8. disable lots of unstable features: such as params table, media file download, HMS
9. fix serveral kinds of bugs
10. update the document of building
11. ...
2022-07-22 20:35:34 +08:00
lane.wei
3d3f31a8f1 adjust the log level for released version
Change-Id: Id874cc5b84a1c236dc00d9430867a913b0417beb
2022-07-16 15:25:36 +08:00
lane.wei
f8756e6c89 Add the full source of BambuStudio
using version 1.0.10
2022-07-15 23:42:08 +08:00