* ImGuizmo: Comment out unused code
* 3DNav: Avoid gimbal lock by using polar coordinates
* 3DNav: Make sure top and bottom are oriented correctly
* Add auto perspective
* Add options
---------
Co-authored-by: SoftFever <softfeverever@gmail.com>
* Introduce option to control number of skirt walls after first layer
* Merge branch 'main' into Introduce-option-to-control-number-of-walls-on-skirt-after-first-layer
* Merge branch 'main' into Introduce-option-to-control-number-of-walls-on-skirt-after-first-layer
* One wall draft shield options refactor
* Merge remote-tracking branch 'upstream/main' into Introduce-option-to-control-number-of-walls-on-skirt-after-first-layer
* Merge branch 'main' into Introduce-option-to-control-number-of-walls-on-skirt-after-first-layer
* Renamed to single loop draft shield
* Merge branch 'main' into Introduce-option-to-control-number-of-walls-on-skirt-after-first-layer
* Merge branch 'main' into Introduce-option-to-control-number-of-walls-on-skirt-after-first-layer
* fix alignments for tab and sidebar icons
* minimize code changes
* minimize code changes
* minimize code changes
* Align config label with group title
* minimize changes
* Update Plater.cpp
* Update spacing after titlebar text and comments
* Update Plater.cpp
* Update OG_CustomCtrl.cpp
* Use class to control values from one place
* fix error
* Update Plater.cpp
* update
Move init sys font into GUI_App, after logging has been set up properly (#8603)
This avoid annoying messagebox if somehow failed to load font on windows, and write the message into log files instead
According to https://eigen.tuxfamily.org/dox/TopicPitfalls.html one
should just avoid using `auto` as the type of an Eigen expression.
This PR fixes most of them I could found in the project. There might be
cases that I missed, and I might update those later if I noticed.
This should prevent issues like #7741 and hopefully fix some mysterious
crashes happened inside Eigen calls.
* Added Elegoolink connection
* Set Elegoo CC default bed to btPTE
* Friendly output of some error codes of PrintHost
* feat: Add elegoo centauri carbon profile
* fix: Fix the issue where the bed type in the printer configuration does not match the bed temperature settings when multiple bed types are not supported.
* feat: Modify the elegoo process parameters to disable slowdown_for_curled_perimeters.
* feat: Update comment to clarify plate visibility for multi bed support, BBL printer, and selected bed type.
* fix: Optimize ElegooLink upload; The code is clearer than before.
* feat: Format the ElegooPrintHostSendDialog code.
* fix: Remove the unnecessary instantiation attribute in the Elegoo process.
* fix: Flatpak compilation failed
---------
Co-authored-by: anjis <anjis.zhou@elegoo.com>
the maximum diameter is changed to 20;
the diameter will not be reset;
jira:STUDIO-8497
GITHUB: #5048
Change-Id: I131305671ebc00dcf6b2972994879fe4ea768a36
(cherry picked from commit 3e9006e2d47c87da40e627034d0dc71c563e98ae)
Add minimum flow ratios for spiral vase transitsions
Currently when starting the spiral vase the extrusion rate is ramped
from 0 to 100% on the first layer and from 100% to 0% on the last layer.
In some cases it can lead to underextrusion at the beginning and end of
the spiral.
This change adds minimum flow ratio options for the beginning and the end
of the vase. This means that instead of ramping from 0% to 100% it
instead ramps from for example 20% to 100%.
This issue has been reported in SuperSlicer
https://github.com/supermerill/SuperSlicer/issues/4195
jira:[STUDIO-6649]
If the model comes from model mall, the name from the mall will be used when sending and printing. When there are special characters in the name, it will cause the sending to fail.
Change-Id: I324441cc7177e7062b79280c5d23afe9eeb5e4c2
(cherry picked from commit 1bcf30c39c648763952703c9060573baa2782f87)
Co-authored-by: tao wang <tao.wang@bambulab.com>
* Additional control over bridges
* Label updates
* Detect and handle layers over external bridges
* Label updates
* To-Do placeholders
* Filter out small external bridges
* Apply safety offset for internal bridge polygon intersections
* code comments
* Increase bridge offsets to 3 perimeters total (1.5 perimeter in each dimension)
* Filter out bridges based on perimeter counts to focus bridge on areas where bridge infill is actually generated in the end.
* Fixing bugs
* Convert tick boxes to drop down menu
* Additional geometry checks for second internal bridge to ensure no small polygons are left over.
* Minor code refactor for clarity
* Further refinements in polygon logic
* Polygon logic refinements pt3
* Further union operations to ensure clean geometry
* Fix compile error
* Clean up constructors
* Only create bridges on stInternalSolid areas, not sparse infill.
* Refactor internal second bridge logic to stand alone parallel for loop to avoid thread deadlocks
* Revert change to only consider stInternalSolid areas for second internal bridge layer.
This resulted in partly unsupported solid infill areas above as the remainder was too narrow to generate sparse infill
* Updated beta statements and tooltip changes
---------
Co-authored-by: SoftFever <softfeverever@gmail.com>
PROBLEM
• Current color palette has many repeating or very similar colors
• Colors looks came from 80s and all raw colors like rgb(0,255,255)
• Black and White colors shows less details on surfaces due to shadows
and highlights
SOLUTION
• Picked more specific color tones. Tried to make every alternative to
easily identifiable
• Didnt used black, white or gray
QUESTIONABLE
• New colors follows given order and i used orca color as first. Maybe
orange one is better pick
• I can add, remove, or change order of colors
COMPARISON
before

after

old color set

new color set

as text if you want to experiment
`
wxColour("#00C1AE"),
wxColour("#F4E2C1"),
wxColour("#ED1C24"),
wxColour("#00FF7F"),
wxColour("#F26722"),
wxColour("#FFEB31"),
wxColour("#7841CE"),
wxColour("#115877"),
wxColour("#ED1E79"),
wxColour("#2EBDEF"),
wxColour("#345B2F"),
wxColour("#800080"),
wxColour("#FA8173"),
wxColour("#800000"),
wxColour("#F7B763"),
wxColour("#A4C41E"),
`