"std::cout << float number" is unsafe which
may use , as decimal point when switch language.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I8a379117168eab0111dc93987b1d6130a741ade6
The popover window to select printers acts strange and fuzzes
out. I see errors trying to access the raw video card device
using libGL, and other errors with dbus access. Turning on
privileged mode fixes this.
the mesh of space is null, so the width of space is 0.
we use 'i' instead of space to calculate width.
Change-Id: I95d92d96e19416406d644ca35f0f14ade870f315
1. text cannot modify after changing type
2. do not allow to drag object in text gizmo
Change-Id: Ia9bbdacbce8215315cf68c768c6d9d91c1ff948c
(cherry picked from commit 897013b2a0c214fc36090cb5cf57e0c3f59f3338)
The tooltip of brim type contain messages of inner brim,
which is not enabled in the current version
Change-Id: I155a16cc4331cb0b5b54d29f6be1de6c82819e0c
(cherry picked from commit 1fe773438e1697b8a0b9817a885b13e7e4fae097)
1. It seems there are a lot of buffered frames in IP CAM. Have to
wait enough time untill all buffers are flushed.
2. From watermellon's suggestion, increase travel speed duing layer
change, to save time and reduce oozing.
JIRA: STUDIO-2167
Change-Id: Ia2ec0bde216e90207897c00c395f7e02ea2fe342
(cherry picked from commit 9c85a7c68617b1628e1698912da20f1ebc69ec16)
* Update BambuStudio_fr.po
French translation
* Update BambuStudio_fr.po
New modifications
* Update BambuStudio_fr.po
Test to add Layer time ( missing in the original po file)
* Update French
Change some French initial translation like A-coup in Saccade
* Update BambuStudio_fr.po
Add Jerk(XY)
* Update BambuStudio_fr.po
last modification for today
* Update BambuStudio_fr.po
Last French translation of the Morning
Mainly on the Giszmo
* Update BambuStudio_fr.po
Mainly on Filament parameter
* Update BambuStudio_fr.po
Adjust translation with :
https://github.com/BastR/BambuStudio/blob/french-trad/bbl/i18n/fr/BambuStudio_fr.po
* Update BambuStudio.mo
* last modif
Last modif for today
* Update fr
an other one
* Update
Last Modification
* Update
Missing term in the German translation
* update
Changement
* update
TimeLaps
* Update 11/1/2023
Minor Change
Update : Year / Month ( not translated in the previous translation)
* Update French Translation
Update for BambuStudio-SoftFever_V1.4.2
* Change some typro
Update some Typo
* Fix some Typo
Fix somme Typo and Label not presnet in the pot file
* Add Calibration SoftFever
Add missing Label on the SoftFever Calibration Menu
* Update BambuStudio_fr.po
Erreur Taper: -> Type:
* Update text.js
Add French Translation for Web interface
* Add Manual Web text
Translate French Manual Web text
* Update text.js
Back to "en"
CMake 3.24 introduces a new policy for managing timestamps on extracted contents
of downloaded archives. This change specifies the new behavior should be used
for dependencies to eliminate the warning printed when the policy is not set.
It's not necessary to pause before photo-shooting, but after it.
Pausng by 50ms should be enough.
Jira: STUDIO-2167
Change-Id: I88ba5db1d6cce390ae5e26ac03533b0ee277b5bd
(cherry picked from commit ae34c0b9e875d1e52798a5359b0cce2151942fb8)
If the three points are in a straight line, let the middle point coincide with the first point.
Change-Id: I32e5a1e1f5f217f9db9766d698590e758f334ca1
(cherry picked from commit d8771943bddf80e23dab5e9fa841acb7e24e873d)
This reverts commit 9e026a289542545d5f63cd72fb9416be1521ecc2.
This Revert "ENH: STUDIO-2221 adjust cooling time for each layer"
This reverts commit eb1fa5975eb7dc3ff832539e9bec5a04515ff2f9.
Change-Id: Iba8d0a1492b81922aad0d64df81c74cff5eabbb3
JIRA: studio-2274
Now support enforcer on vertical faces function is invalid. Previous
enhancement of support enforcer on vertical faces brounght more conficts
than benefits.
Change-Id: Icbb0df3995d8ac8b3c22dda1bd4615da78af963b
(cherry picked from commit bca003cbc35791838484afe4032276be8fa91db0)
This placeholder will be used by start gcode
to avoid calibrate support filament which is
the first filament.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I7c8d206346bf3d3a5325c06abb24c58834f7f505
1. use tree slim's merge strategy in hybrid support
2. do not break bridge in hybrid support
3. fix "support on buildplate only" not working. The cause is: with
independent support layer height, contact_nodes are not synced with
object layers, so the previous way of accessing contact nodes in
unsupported_branch_leaves no longer works. To fix that, we add
obj_layer_nr.
Jira: STUDIO-2250
Change-Id: Idfc9b0bb10425de6414f7eae2cf5467cedf1d669
(cherry picked from commit 8780d5a7e92e298cbbccbb3bd1825197d387a340)
move to the middle upper edge of plate and ratract after calibrating to avoid leakage
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: Idb09aaafee3bfccfd7c14d1140778498195b98c3
sub filament change time from layer time to adjust
layer speed
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I2f1c41a36946765b74ecad58ce102abe98e00dac
JIRA: [STUDIO-2226]
0.4mm nozzle contains different layer heights but has
the same preset threshold angle (30 degree) which is not reasonable.
Hereby, five of them are adjusted based on the overlap ratio.
Change-Id: I96300bf202c3a5fc4428186875a9212c32524ff2
now, when XY compensation with negative value is assigned, the brim can be
generated correctly (Studio-2222). In addition, one can add brim to a model whose
first layer is empty while second layer is not empty (studio-1286).
Change-Id: I28443dc6e28bc6fff8c92d3cc35ab7a416d43138
(cherry picked from commit cb62afcfd295ca93962d99350d1dfaf3441c4759)
Change-Id: I6a3b2a67d2950e2c1c5267bb7c65d5594924caec
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 176e505bcf5f48971302d9aff14e74b118eeafbe)
Change-Id: I19e4e470207d9cf98259be112829b089c1ce23eb
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 52e0d20b94d52b48ce25c8f2452a16cafd05e7a8)
Change-Id: I72d99277187ea0d6b600e741dcc4306bc5f44036
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 9ee36044158856e433b19e407094120bd15f4aa0)
Previous precision is not enough, and some mesh is not
of good quality.
This is handling for github issue #825
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I68901b41c1a3279c61678dbbcc93c887020f18a7
A bottome surface is detected as stBottom only if:
1. has support, top z distance=0 (soluble material), auto support
2. for normal(auto), bridge_no_support is off
3. for tree(auto), interface top layers=0, max bridge length=0, support_critical_regions_only=false (only in this way the bridge is fully supported)
Note:
Since now the surface type depends on more parameters, changing them will trigger re-slicing and making the whole process slower.
github issues: 1253
Change-Id: I0fe719e0dbf7147206008c8726dd9c7be2b19226
(cherry picked from commit d4490afa6b9e4fbb583033a125bbebb50dc5f0bb)
Arranging multi-color objects with disabled
multi_materials_on_same_plate option was not currect.
Previously we only consider the first extruder id for multi-color
objects. Now we consider all extruders.
Jira: STUDIO-2164
Change-Id: If64ff4f88f0fe4f6c31ebf657b3449b19bf063f0
(cherry picked from commit f4f6bdd00a0c3d3e13406b69be9b5b0468b27d44)
FIX: crush when slicer multi-color model
the root cause is a mismatch between the dimensions of flush matrix and the number of extruders
Change-Id: I3a4ca706cb24d9e5d33969b9e6f5b288e71bb8f2
(cherry picked from commit 7399037eaacdfd7d8407667a2e5a097757265254)
FIX: fix crash when switch printer
Change-Id: I7632689c5df07df0222a5fa529993e114d7c5b08
Signed-off-by: Stone Li <stone.li@bambulab.com>
ENH:close the amsmapping dialog when exit seletmachine dialog
Change-Id: Ib49b1f9d08267c56b34d867edb40f287114479e1
ENH:no longer hide the unload button when connected to AMS
Change-Id: I62c7195d590827bd189c6e6886e95c2cf755e203
FIX: fix the slicing result different issue
when move volume in objects copied from other object
the result is not correct
Change-Id: Ieebc586f11c42429902d653e871c038d096783e8
FIX: support blocker not work on vertical+horizontal faces
Jira: STUDIO-2088
Change-Id: I6803e8e90ebcc4c67d81473f60fdf97929011e12
(cherry picked from commit 738800c5af48ab8a2cde40b6f2b3c48a88bfee8b)
FIX:fixed send print will crash when resources path is chinese path
Change-Id: Ie4a5161f853dca691bd69e5695720d99148a0134
* Changes:
Improve precise wall
Port PS2.6 overhang slowdown feature
Implement overhang fan for new overhang slowdown algo
Add option to switch between classic/new overhang slowdown implementation
Set Arachne as default engine
Small adjustment of temp calibration range
turn off small perimeter by default
Small UI tweaks
Change default top_surface_pattern to monotonic
Fine tune jerk
Signed-off-by: SoftFever <softfeverever@gmail.com>
* Disable optimizations for RelWithDebInfo
Signed-off-by: SoftFever <softfeverever@gmail.com>
* fix an issue that max volumetirc/vfa calibration can't send to print
Signed-off-by: SoftFever <softfeverever@gmail.com>
#322
* fix build errors
Signed-off-by: SoftFever <softfeverever@gmail.com>
---------
Signed-off-by: SoftFever <softfeverever@gmail.com>
* Add files via upload
First working version of TwoTrees SP-5 running klipper. this can be the base to start using this slicer. most of the generic materials are OOTB ones and this profile is made for near stock printers just running klipper. roughtly running a max speed of 200mm/s and runs successfully
* Add files via upload
* Delete SP-5.png
1. fix unsupported cantilever was not warned. We need to set support
type to stTreeAuto in is_support_necessary() to fully utilize the
power of feature detection.
2. fix tree support not generated on non-first plate.
Change-Id: I5b8aa827c9d62df0119db4e8e9212f33ce75ddaa
(cherry picked from commit 60f21b6fcb45fe56f7fc867a7fcad433282bc055)
When using "Flush into objects' infill" with support filament, it also get's flushed into the object's infill which shouldn't be happening.
Change-Id: I0f1cb3d5ee3cf5489ccab957989c6c24336f8845
(cherry picked from commit f83e63feb3ad5a14b0f4304e2e6fb1c5828270ec)
1.fix an occasional crash when slice a new plate after sliced.
2.layer height/line width/flow/fanspeed/temperature shall not display at travel/retract/wipe move, this five only display at extrude move.
Change-Id: I4d9f9d329b5ea656c42cb421ba54123ef7f2d6c5
1. continue post_init when gl window not ready under linux
2. use deleted_wipe_towers in reload_scene to judge whether it is deleted
Change-Id: I5be2ac876842e5432d254d47e4fe31f066455106
(cherry picked from commit 5e61a21d5662ccc656136b6a219c2358364c36d9)
On Linux, GLEW requires (at least, in EGL land) that an OpenGL context be
active before glew_Init is called -- otherwise, GLEW doesn't know what
extension symbols to look up. If glew_Init fails, then some symbols
elsewhere will not exist, and the app will shortly crash. We work around
this by detecting if we're actually ready for postinit, and if not,
resetting the flag so that wxEVT_IDLE will cause us to try again later, when
the window hopefully has gone into the foreground and is ready to be used.
When determining whether or not we need to update the object list, we check
all of the objects that are being deleted to see if they're a wipe tower.
Unfortunately, by the time we check, the objects have already been deleted,
and the memory has been freed! Avoid this by writing down for deleted
objects whether they are wipe towers, and if they were, we can indeed skip
updating the object list.
In generate_contact_points, the rotated_dims don't actually generate a
Point, but generate an abstract expression that holds a reference to
bounding_box_size. Unfortunately, this goes wrong because bounding_box_size
ages out instantly; GCC's Address Sanitizer complains that this is a
"stack-use-after-scope" issue.
Interestingly, the Eigen documentation says that this is a known problem
with using C++11 "auto" to generate matrices (which a Point is)! It is
buried here: https://eigen.tuxfamily.org/dox/TopicPitfalls.html
This is probably an extremely theoretical correctness improvement, and also
an extremely theoretical performance improvement. But it is an improvement
nonetheless, and, more importantly, it enables me to continue to run the
slicer with Address Sanitizer turned on to find other potential issues.
ImGuiWrapper::load_svg previously could load an image that was not of the
aspect ratio specified by the target_width and target_height, and as a
result, could create an output vector that was smaller (or differently
shaped!) than the target_width and target_height. GCC's Address Sanitizer
flagged this because init_font was reading over the end of the allocated
buffer, but this also meant that images with incorrect aspect ratios might
get rendered to the font canvas incorrectly.
To solve this, we pass the generated width and height out from load_svg, and
use it when copying images later.
So tree supports won't go outside the bed.
Known issue:
1. moving won't trigger support re-calculating, so if you want to
clip the supports in a different way after moving, you need to change
the support settings (eg change threshold angle to 31 degrees).
2. clipping with the occlusion region is not complete, and an error
message of "outside toolpath" will still be popped because we use
convex hull to detection confliction.
Jira: STUDIO-2036
Change-Id: I643b14618eb18ffa9825072c44f677e51b0ff937
(cherry picked from commit a6217824dc0f490027e16f80f810d176dec6004b)
fix the text errot of density of PolyTerra
z_hop_type change to auto
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I7f59d2620b42d2f2092ebb4c01ac3a5455c40a4f
Support layers should be released in is_support_necessary.
Jira: STUDIO-2120
Change-Id: Id1c6fa2d8635e55be745095408dfbac38a25efa6
(cherry picked from commit f911e8d084c4fa273f8c9211112fa2f83515cfb1)
1 extrude move to dustbin
2 max vol of TPU 95A of X1 to 3.6
Signed-off-by: qing.zhang <qing.zhang@bambulab.com>
Change-Id: I0b9d2a1db9c57c58255f95aad8a77772317a3ec9
Using layer z to calculate total layer number is not
precision, because for some models with sharp top
layer, the top layer may be empty.
Check the final layer change in final gcode file.
This must be same with total layer number.
Jira: Studio-2123
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I5d001a8bb9548c3fb5f67fda966051ac3bb16502
Merge numerically very close Z values when calculate
total layer number
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I4e60ca69fe5b06b66283d6a763d0b231c3d11b5a
previous commit only fix the crash when switch spiral_mode
and will cause crash when switch timelapse_mode
Change-Id: If21acf3701e9519de55a08e183620678378f61b9
Seperate travel time from extrusion role time and
show it seperately.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Icf0aaf63c4d4ed7d1407037e5ae051d61938f973
the root cause is a mismatch between the dimensions of flush matrix and the number of extruders
Change-Id: I3a4ca706cb24d9e5d33969b9e6f5b288e71bb8f2
(cherry picked from commit 7399037eaacdfd7d8407667a2e5a097757265254)
This is fix for jira 2061
Layer height is double and may has small difference, which
influence total layer number when support is enabled.
Should use int data and consider EPSION when calculate total
layer number.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I1bb6c89f2afd162d2d7e7dcff4a9d6a00b94dab3
This reverts commit 1e95803df3733021e80241ecf7b88976708f0cf7.
Reason for revert: some model test not good, need to update curve function
Change-Id: I6afd6115d21198f60453d4f507905b6684a65cff
fix enable status of confirm btn in ams settings dlg
Change-Id: I25c11078bb723647fac6370f966c74c807362e21
Signed-off-by: Stone Li <stone.li@bambulab.com>
refine description for ams not connected
Change-Id: Ic4c01e69cfd9385548a497af5c5c3071614067a2
Signed-off-by: Stone Li <stone.li@bambulab.com>
(cherry picked from commit 4158f1e06ed20fa5dd4c3ef412d4c8fab76054a8)
Use tree support to detect if there are sharp tails and so on.
Jira: STUDIO-1898
Change-Id: I148e14ca4024849875133a646a8fdd36c265b2fb
(cherry picked from commit bc74015d45e96e409d34d611876e3a24e289e029)
For pa-cf, the default setting of cooling is
forcing cooling for all outer wall.
And internal tester found that the slowing down by
layer time does not work for outer wall under
this situation.
This is fix for this issue.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I05aaa16d246f5ea6dc1ae9808050e1281646e184
Tree support didn't fill the first layer when the tree is too short
udesk: 0284
Change-Id: I2702b26733e7360445e19847abb48f75f173da4e
(cherry picked from commit e317f9e19fbbfe21efb495e23a8ff78661bfee79)
1. display factor of extrusion calibration
2. add progress to calibration extrusion
3. support ext spool
Change-Id: Ic124a0097f16e6287c09f5f133eea84eeefb4000
Signed-off-by: Stone Li <stone.li@bambulab.com>
Start gcode of P1P is wrong.
This is for github issue #1044
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Id078b7c9020ef773373c3486f74dc51385b9dcc0
1. add gcode command for void printing detection
2. fix the issue that the toolhead is not at excess chute position when
smooth timelapse ends, by adding 2s pause after M991 command.
Jira: STUDIO-1996
Change-Id: I40cf16116e742744cea9bd90969e556a9ea2b2f1
(cherry picked from commit 2fbf7ffe6b1bd8850a76e229ff91750c689721b9)
* fix typo and tooltip
* merge pot po german
* fix more
* merge with bambu master pot
* fix po to Softfever
* fix
* build new Softfever pot mege with xx.po
* enable hints in german again
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.
Each time the dependency build was run, previously, the build system
attempted to patch wxWidgets after checking it out from Git. The problem,
of course, is that if this happened once, it would not succeed a second
time, so the only workaround was to blow away the wxWidgets source tree.
The real solution to this is to create a BBL fork of wxWidgets (or to
upstream the changes...). But for now, we add a file to determine whether
the patch has taken place already, and if it's there, we don't apply the
patch again. This will mean that all kinds of exciting things happen if you
change Git revisions of wxWidgets or the patch changes (in those cases,
you'll have to blow away the build), but at least this makes it possible to
build twice in the same repository in the best case.
To update an existing checkout, run:
$ touch deps/build/dep_wxWidgets-prefix/src/dep_wxWidgets/WXWIDGETS_PATCHED
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).
Clipper2 doesn't solve wrong line issue for some
specific model and sometimes has performance issue.
Return to clipper1.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I906f8b81083ac8c03ecc9fe3e8d2ade20be95c04
1.add pauseprint will not cause preview page refresh
2.fix add custom Gcode window and jump to layer window cannot input after reslice
Change-Id: I4f75457b6d6172080715393c975169c8f16464b9
This is fix for jira STUDIO-1501
Global_endpoints should not include seam vertex.
So the initial value should be gcode_ids.size(),
rather than m_move_vertex
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Id4162e63640509521cc7c76bc0d860f27e0c316e
1.by right-click on slider, multiple menu-windows can be opened at the same time
solution: change opened window to modal window.
2.close opened menu window after reslice
Change-Id: I4973e1cf4c2ecce83602417be051d249f1aae6a4
(cherry picked from commit 8890f1b3bdf8f1374136ec40e3f44de583c71e7f)
1. async fetch user presets from server (in thread)
2. always load default user presets
3. load user presets from cache immediately
4. not remove user presets cache
5. hide some loading ui
Change-Id: I1d29ed18e09606d0b2f69a69eea2eb5042c26223
Previously we used layer_nr-1 as the next support layer below layer_nr,
which was not right when we used independent support layer heights.
And this would make it difficult for the tree branche to avoid the object.
Change-Id: Ic705fbd093e4bd555470646044380703ca259904
(cherry picked from commit 245e1cf4fd071b1f1fea4c5d616ff87432a76911)
1.support hide funtion in assemble view
2.fix an issue that switch printable in assemble view will make
model-in-assemble-view turn transparent instead of model-in-view3D
3.fix a crash: right-click on objectlist after entering assemble view
Change-Id: Ia1a7ca492637eeaacd862ba015c440a55a83ca6e
When fuzzy skin is used, it's unmeaning to calculate
the overhang degree of extrusion line, because there
are a lot of random fuzzy point which change the line.
Disable in this case. This can also speed slicing up
when fuzzy skin is used.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: Ia65e20e24fd7a5cd224635fd69a272387135ba12
Brim will be croped to ensure it does not exceed the bed area. However,
plate offsets are not considered and thus the croping does not work in
multi-plate cases. This can be fixed by this patch.
Change-Id: Iffcce6cba23a82de1fdd9fffe8c48c4e303e9e15
(cherry picked from commit 9c53fb12153cc8a31448ae4a670171c495243dae)
This is fix for z hop issue that z hop of
layer change is always spiral list even when set
to normal lift
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I7b235a640b0538bedfe4cef61ca24108c1ba7246
If a travel path goes through an overhang expolygons, and their distance
is shorter than threshold, lift type will be set to SpiralLift.
Signed-off-by: yifan.wu <yifan.wu@bambulab.com>
Change-Id: I345788711755dd8611ecf385818e6052cd8abe9e
1.layer number display in disorder under ByObject case
2.disable unworkable functions in ByObject case:add pause, add custom Gcode, change filaments
Change-Id: Ib0413e047db1daf1ca582e1369c70b6b93c1bd64
allow generate wipe tower when print ByObject if there is only one object
Change-Id: I199e9cab7bd7c963edf58e829c663bb91c12f4f8
(cherry picked from commit 7153c30800022f3afb9811c67f88ba28c9b25d20)
even though there is only one color, the wipe tower is still exist
Change-Id: I5c68a4ca7239cfc74aba452a6588d74f6d622f47
(cherry picked from commit 032c2e6718c65aa4c5b18eecd0ccce27f3f489bb)
1. When sharp tail region suddenly grows a lot, it means it connects to
a well supported region and is no longer a sharp tail.
Jira: STUDIO-1862
2. First layer of sharp tail can not be reducible (must have extrusion,
i.e. won't disappear after slicing), otherwise thin spikes at the
top of the object are also treated as sharp tails.
Model: knight_seadra
3. Increase sharp_tail_max_support_height to 16mm
Model: Crane_reversed
Jira: STUDIO-1859 (for this issue I don't what is the exact cause,
but adding these three improvements solves the problem)
Change-Id: I3cd57b184d78dba8862ab3c214057ae78fe49d1f
(cherry picked from commit 9242c6a6d1f23f11ebc43a9049ce10229a15c60e)
Detour travel is wrong in multi color printing when
current position is unclear.
Don't generate detour travel in this case to avoid
colour mixture.
Signed-off-by: salt.wei <salt.wei@bambulab.com>
Change-Id: I2d24b04d99b8a0b34a46c9f88e522e97cb0fe354
@@ -15,13 +15,13 @@ function check_available_memory_and_disk() {
MIN_DISK_KB=$((10*1024*1024))
if[${FREE_MEM_GB} -le ${MIN_MEM_GB}];then
echo -e "\nERROR: Bambu Studio Builder requires at least ${MIN_MEM_GB}G of 'available' mem (systen has only ${FREE_MEM_GB}G available)"
echo -e "\nERROR: Orca Slicer Builder requires at least ${MIN_MEM_GB}G of 'available' mem (systen has only ${FREE_MEM_GB}G available)"
echo&& free -h &&echo
exit2
fi
if[[${FREE_DISK_KB} -le ${MIN_DISK_KB}]];then
echo -e "\nERROR: Bambu Studio Builder requires at least $(echo$MIN_DISK_KB|awk '{ printf "%.1fG\n", $1/1024/1024; }') (systen has only $(echo${FREE_DISK_KB}| awk '{ printf "%.1fG\n", $1/1024/1024; }') disk free)"
echo -e "\nERROR: Orca Slicer Builder requires at least $(echo$MIN_DISK_KB|awk '{ printf "%.1fG\n", $1/1024/1024; }') (systen has only $(echo${FREE_DISK_KB}| awk '{ printf "%.1fG\n", $1/1024/1024; }') disk free)"
echo&& df -h . &&echo
exit1
fi
@@ -56,7 +56,7 @@ while getopts ":dsiuhgbr" opt; do
echo" -g: force gtk2 build"
echo" -b: build in debug mode"
echo" -d: build deps (optional)"
echo" -s: build bambu-studio (optional)"
echo" -s: build orca-slicer (optional)"
echo" -u: only update clock & dependency packets (optional and need sudo)"
- Fixed a crash issue when selecting vase mode on some machines
- Port firmware retraction and Extra length on restart retraction feature from PrusaSlicer
- Fine-tune calibration features
1. Enforce max volumetric speed in PA line mode
2. Ensure print speeds are consistent across all blocks in the flow-rate calibration process. This is to help users calibrate those challenging filaments(such as TPU) by minimizing the influence of printing speed - thanks @psiberfunk for his input on this
- New printer models: thanks @erebus04 and @GP3D84
1. Tronxy X5SA 400
2. Artillery Sidewinder
- QoL:
1. Now allow exporting g-code for BBL printers
2. Fixed a bug that printer connection info was removed after loading a 3mf project
fixed an issue that user presets were not loaded when Auto sync user preset option was off in Preference.
3.Germany language translation - thanks @hliebscher
- Misc fixes:
1. Exit calibration mode when a new model is added to the scene(creating a new project after calibration is recommended)
2. Skip emitting M106 P2 command if the auxiliary fan is not enabled.
3. Fix an issue that previously there was a z-fighting issue when bed models are used for 3rd party printers
4. Fixed an issue that max volumetric speed was not correctly calculated if flow-rate was changed per object.
5. CICD for Linux build - thanks @fang64
Known issues:
The Calibration menu is missing on some Mac machines. Try restarting the App can usually fix it. See [#120](https://github.com/SoftFever/BambuStudio-SoftFever/issues/120)
- Add Layer Time/Layer time(Log) display (NOTE: need more tweaking work for BBL printers as the layer time is skewed by the preparing time)
- Add `sandwich`(inner-outer-inner-infill) mode support for Arachne engine.
- Change default `wall loop` from 2 to 3
- Fix an issue that the last used printer was not remembered after application restart. (Thanks Bambulab engineers, for the quick response and fixing)
- Optimized layer height sanity check logic. It will check against `max_layer_height` in the printer settings now. (I can use CHT 1.8 nozzle to print 1.0 mm thick layers now ;) )
- Add Prusa MINI+ profile
- expose `bed_exclude_area` parameter to 3rd printers
- Fix some 3rd party printer related issues introduced in [BambuStudio v01.04.00.17](https://github.com/bambulab/BambuStudio/releases/tag/v01.04.00.17)
1. Can't send sliced files to printers
2. AMS filaments were added to non-Bambulab printers
This new order is similar to the outer-wall-first mode in achieving the best dimensional accuracy. This new approach however avoids printing outer walls right after a long travel, which may cause artifacts on the surface in many cases.
Fix a bug that internal solid infills didn't use monotonic when top surface is using monotonic lines
2. New feature: filter out tiny gaps.
Note: for aesthetic considerations, this setting won't affect top/bottom layers. In other words, gap fills that can be seen from outside won't be filtered out
3. PA(pressure advance) now support multi-color printing. A new PA value from the selected filament profile will be applied whenever there is
a filament/extruder change action. This change only affects multi-color printing.
5. Users can now set float values of layer time in Filament->Cooling tab.
6. Allow to set target bed temp to 0
7. Fix a bug that layer number is not displayed correctly in klipper UIs
8. Force using linear PA model when manual PA override is enabled for Bambu machines
9. Remember the last used filament
10. Skip checking BL network plugin for third-party printers.
1. Add options to adjust jerk for different line types
2. Add an option to adjust acceleration for travel. Higher acceleration for travel and lower acceleration for the outer wall makes it possible to print faster and nicer.
3. Add an option to manually override the Pressure Advance / Linear Advance for each filament.
5. Support Chamber temperature. This setting can be use in machine start G-Gcode
6. Support thumbview for third-party printers
</details>
Demo video: https://youtu.be/vSNE9iGj2II
## NOTE:
## 1. For Apple M1 users, please take a look at this [article](https://www.howtogeek.com/803598/app-is-damaged-and-cant-be-opened/ ) about how to run unsigned applications on your machine. Or better, you can build it from the source codes if you want:)
Apple requires a subscription(costs 99$ yearly) for developers to sign their app. I don't do a lot of dev work on Mac, and this is a nonprofit open-source project, so I decided not to pay the money ;)
## 2. If you have troubles to run the build, you might need to install following runtimes:
[](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_mac_arm64.yml)
[](https://github.com/SoftFever/OrcaSlicer/actions/workflows/build_mac_x64.yml)
Orca Slicer is a fork of Bambu Studio. It was previously known as BambuStudio-SoftFever.
BambuStudio is based on [PrusaSlicer](https://github.com/prusa3d/PrusaSlicer) by Prusa Research, which is from [Slic3r](https://github.com/Slic3r/Slic3r) by Alessandro Ranellucci and the RepRap community.
Orca Slicer incorporates a lot of features from SuperSlicer by @supermerill
# Gallery









Prebuilt binaries are available through the [github releases page](https://github.com/SoftFever/OrcaSlicer/releases/).
Image credits:
1. Voron 2.4 and Trident: vorondesign.com
3. Voron 0.1: myself
4. Prusa MK3S: Prusa3d
# Main features
- Auto calibrations for all printers
- Sandwich(inner-outer-inner) mode - an improved version of the `External perimeters first` mode
- Precise wall
- Klipper support
- More granular controls
- More features can be found in [change notes](https://github.com/SoftFever/OrcaSlicer/releases/)
# How to install
**Windows**:
1. Unzip the binaries to any folder you prefer, then execute orca-slicer.exe to start the application.
- *If you have troubles to run the build, you might need to install following runtimes:*
Bambu Studio is a cutting-edge, feature-rich slicing software.
It contains project-based workflows, systematically optimized slicing algorithms, and an easy-to-use graphic interface, bringing users an incredibly smooth printing experience.
Prebuilt Windows, macOS 64-bit releases are available through the [github releases page](https://github.com/bambulab/BambuStudio/releases/).
Linux version currently is not supported.
Bambu Studio is based on [PrusaSlicer](https://github.com/prusa3d/PrusaSlicer) by Prusa Research, which is from [Slic3r](https://github.com/Slic3r/Slic3r) by Alessandro Ranellucci and the RepRap community.
See the [wiki](https://github.com/bambulab/BambuStudio/wiki) and the [documentation directory](https://github.com/bambulab/BambuStudio/tree/master/doc) for more informations.
# What are Bambu Studio's main features?
Key features are:
- Basic slicing features & GCode viewer
- Multiple plates management
- Remote control & monitoring
- Auto-arrange objects
- Auto-orient objects
- Hybrid/Tree/Normal support types, Customized support
- multi-material printing and rich painting tools
- multi-platform (Win/Mac/Linux) support
- Global/Object/Part level slicing parameters
Other major features are:
- Advanced cooling logic controlling fan speed and dynamic print speed
- Auto brim according to mechanical analysis
- Support arc path(G2/G3)
- Support STEP format
- Assembly & explosion view
- Flushing transition-filament into infill/object during filament change
**Mac**:
1. Download the right binaries for your computer: `arm64` version for Apple Silicon and `x86_64` for Intel CPU.
2. Double click to unzip the package, move OrcaSlicer.app to Application folder.
3. The app is signed but not notarized at the moment due to the proptiery network plugin.
We have two options to make it run on our machines
- Option 1:
Execute this command in terminal: `xattr -dr com.apple.quarantine /Applications/OrcaSlicer.app`
Following platforms are currently supported to compile:
- Windows 64-bit, [Compile Guide](https://github.com/bambulab/BambuStudio/wiki/Windows-Compile-Guide)
- Mac 64-bit, [Compile Guide](https://github.com/bambulab/BambuStudio/wiki/Mac-Compile-Guide)
- Windows 64-bit
- Tools needed: Visual Studio 2019, Cmake, git, Strawberry Perl.
- Run `build_release.bat` in `x64 Native Tools Command Prompt for VS 2019`
- Mac 64-bit
- Tools needed: Xcode, Cmake, git, gettext
- run `build_release_macos.sh`
- Ubuntu
- run `BuildLinux.sh -udisr`
# Report issue
You can add an issue to the [github tracker](https://github.com/bambulab/BambuStudio/issues) if **it isn't already present.**
# License
Orca Slicer is licensed under the GNU Affero General Public License, version 3. Orca Slicer is based on Bambu Studio by BambuLab.
Bambu Studio is licensed under the GNU Affero General Public License, version 3. Bambu Studio is based on PrusaSlicer by PrusaResearch.
PrusaSlicer is licensed under the GNU Affero General Public License, version 3. PrusaSlicer is owned by Prusa Research. PrusaSlicer is originally based on Slic3r by Alessandro Ranellucci.
@@ -272,5 +70,5 @@ Slic3r is licensed under the GNU Affero General Public License, version 3. Slic3
The GNU Affero General Public License, version 3 ensures that if you use any part of this software in any way (even behind a web server), your software must be released under the same license.
The bambu networking plugin is based on non-free libraries. It is optional to the Bambu Studio and provides extended functionalities for users.
The bambu networking plugin is based on non-free libraries. It is optional to the Orca Slicer and provides extended functionalities for users.
Currently Linux version is not verified, you can try it referring to [PrusaSlicer'S linux building guide](https://github.com/prusa3d/PrusaSlicer/blob/master/doc/How%20to%20build%20-%20Linux%20et%20al.md)
- Visual Studio Community 2019 from [visualstudio.microsoft.com/vs/](https://visualstudio.microsoft.com/vs/) (Older versions are not supported as Bambu Studio requires support for C++17, and newer versions should also be ok);
- Visual Studio Community 2019 from [visualstudio.microsoft.com/vs/](https://visualstudio.microsoft.com/vs/) (Older versions are not supported as Orca Slicer requires support for C++17, and newer versions should also be ok);
- Cmake from [cmake.org](https://cmake.org/download/)
- Git from [gitforwindows.org](https://gitforwindows.org/)
- Perl from [strawberryperl](https://strawberryperl.com/)
## building the deps
Suppose you download the codes into D:/work/Projects/BambuStudio
create a directory to store the dependence built: D:/work/Projects/BambuStudio_dep
create a directory to store the dependence built: D:/work/Projects/OrcaSlicer_dep
`cd BambuStudio/deps`
`mkdir build;cd build`
`cmake ../ -G "Visual Studio 16 2019" -DDESTDIR="D:/work/Projects/BambuStudio_dep" -DCMAKE_BUILD_TYPE=Release`
`cmake ../ -G "Visual Studio 16 2019" -DDESTDIR="D:/work/Projects/OrcaSlicer_dep" -DCMAKE_BUILD_TYPE=Release`
`msbuild /m ALL_BUILD.vcxproj`
It takes "00:14:27.37" to finish it on my machine (11th Gen Intel(R) Core(TM) i9-11900 @2.50GHz 2.50 GHz, with 32.0 GB DDR)
## building the Bambu Studio
## building the Orca Slicer
create a directory to store the installed files at D:/work/Projects/BambuStudio/install_dir
`cd BambuStudio`
`mkdir install_dir`
`mkdir build;cd build`
set -DWIN10SDK_PATH to your windows sdk path(for example: C:/Program Files (x86)/Windows Kits/10/Include/10.0.19041.0) in below command:
The purpose of this guide is to describe how to contribute to the Bambu Studio translations. We use GNUgettext for extracting string resources from the project and PoEdit for editing translations.
The purpose of this guide is to describe how to contribute to the Orca Slicer translations. We use GNUgettext for extracting string resources from the project and PoEdit for editing translations.
Those can be downloaded here:
- https://sourceforge.net/directory/os:windows/?q=gnu+gettext GNUgettext package contains a set of tools to extract strings from the source code and to create the translation Catalog.
@@ -32,15 +32,15 @@ Notice. When the translation is complete you need to:
- copy BambuStudio_xx.mo into resources/i18n/xx and rename it to BambuStudio.mo, then push the changed file.
( name of folder "fr" means "French" - the translation language).
### Scenario 3. How do I add a new text resource when implementing a feature to Bambu Studio
Each string resource in Bambu Studio available for translation needs to be explicitly marked using L() macro like this:
### Scenario 3. How do I add a new text resource when implementing a feature to Orca Slicer
Each string resource in Orca Slicer available for translation needs to be explicitly marked using L() macro like this:
```C++
auto msg = L("This message to be localized")
```
To get translated text use one of needed macro/function (`_(s)` or `_CHB(s)` ).
If you add new file resource, add it to the list of files containing macro `L()`
### Scenario 4. How do I use GNUgettext to localize my own application taking Bambu Studio as an example
### Scenario 4. How do I use GNUgettext to localize my own application taking Orca Slicer as an example
1. For convenience create a list of files with this macro `L(s)`. We have
When you have Catalog to translation open POT or PO file in PoEdit and start translating.
## General guidelines for Bambu Studio translators
## General guidelines for Orca Slicer translators
- We recommend using *PoEdit* application for translation (as described above). It will help you eliminate most punctuation errors and will show you strings with "random" translations (if the fuzzy parameter was used).
- To check how the translated text looks on the UI elements, test it :) If you use *PoEdit*, all you need to do is save the file. At this point, a MO file will be created. Rename it Bambu Studio.mo, and you can run Bambu Studio (see above).
- To check how the translated text looks on the UI elements, test it :) If you use *PoEdit*, all you need to do is save the file. At this point, a MO file will be created. Rename it Orca Slicer.mo, and you can run Orca Slicer (see above).
- If you see an encoding error (garbage characters instead of Unicode) somewhere in Bambu Studio, report it. It is likely not a problem of your translation, but a bug in the software.
- If you see an encoding error (garbage characters instead of Unicode) somewhere in Orca Slicer, report it. It is likely not a problem of your translation, but a bug in the software.
- See on which UI elements the translated phrase will be used. Especially if it's a button, it is very important to decide on the translation and not write alternative translations in parentheses, as this will significantly increase the width of the button, which is sometimes highly undesirable:
#text = Search Functionality\nDid you know that you use the Search tool to quickly find a specific Bambu Studio setting? Or use the familiar shortcut <b>Ctrl+F</b>.
#text = Search Functionality\nDid you know that you use the Search tool to quickly find a specific Orca Slicer setting? Or use the familiar shortcut <b>Ctrl+F</b>.
[hint:Simplify Model]
text=Simplify Model\nDid you know that you can reduce the number of triangles in a mesh using the Simplify mesh feature? Right-click the model and select Simplify model. Read more in the documentation.
@@ -110,11 +110,11 @@ text = Split to Objects/Parts\nDid you know that you can split a big object into
text=Subtract a Part\nDid you know that you can subtract one mesh from another using the Negative part modifier? That way you can, for example, create easily resizable holes directly in Bambu Studio. Read more in the documentation.
text=Subtract a Part\nDid you know that you can subtract one mesh from another using the Negative part modifier? That way you can, for example, create easily resizable holes directly in Orca Slicer. Read more in the documentation.
text=STEP\nDid you know that you can improve your print quality by slicing a STEP file instead of an STL?\nBambu Studio supports slicing STEP files, providing smoother results than a lower resolution STL. Give it a try!
text=STEP\nDid you know that you can improve your print quality by slicing a STEP file instead of an STL?\nOrca Slicer supports slicing STEP files, providing smoother results than a lower resolution STL. Give it a try!
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.