Merge branch 'master' into patch-1

This commit is contained in:
Ray Ackley 2021-01-14 08:44:23 -05:00 committed by GitHub
commit 821560ee2b
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
355 changed files with 75728 additions and 43482 deletions

View File

@ -229,7 +229,7 @@ if(WIN32)
add_definitions(-D_USE_MATH_DEFINES -D_WIN32 -D_CRT_SECURE_NO_WARNINGS -D_SCL_SECURE_NO_WARNINGS)
if(MSVC)
# BOOST_ALL_NO_LIB: Avoid the automatic linking of Boost libraries on Windows. Rather rely on explicit linking.
add_definitions(-DBOOST_ALL_NO_LIB -DBOOST_USE_WINAPI_VERSION=0x601 )
add_definitions(-DBOOST_ALL_NO_LIB -DBOOST_USE_WINAPI_VERSION=0x601 -DBOOST_SYSTEM_USE_UTF8 )
endif(MSVC)
endif(WIN32)

BIN
PrusaSlicer.mo Normal file

Binary file not shown.

View File

@ -0,0 +1,46 @@
# - Try to find GTK+ 3
# Once done, this will define
#
# GTK3_FOUND - system has GTK+ 3.
# GTK3_INCLUDE_DIRS - the GTK+ 3. include directories
# GTK3_LIBRARIES - link these to use GTK+ 3.
#
# Copyright (C) 2012 Raphael Kubo da Costa <rakuco@webkit.org>
# Copyright (C) 2013 Igalia S.L.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
# 1. Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
# 2. Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in the
# documentation and/or other materials provided with the distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDER AND ITS CONTRIBUTORS ``AS
# IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
# THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR ITS
# CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
find_package(PkgConfig)
pkg_check_modules(GTK3 QUIET gtk+-3.0)
set(VERSION_OK TRUE)
if (GTK3_VERSION)
if (GTK3_FIND_VERSION_EXACT)
if (NOT("${GTK3_FIND_VERSION}" VERSION_EQUAL "${GTK3_VERSION}"))
set(VERSION_OK FALSE)
endif ()
else ()
if ("${GTK3_VERSION}" VERSION_LESS "${GTK3_FIND_VERSION}")
set(VERSION_OK FALSE)
endif ()
endif ()
endif ()
include(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(GTK3 DEFAULT_MSG GTK3_INCLUDE_DIRS GTK3_LIBRARIES VERSION_OK)

View File

@ -23,15 +23,3 @@ endif()
if("FALSE")
return()
endif()
# if the installed or the using project don't have CMAKE_SIZEOF_VOID_P set, ignore it:
if("${CMAKE_SIZEOF_VOID_P}" STREQUAL "" OR "8" STREQUAL "")
return()
endif()
# check that the installed version has the same 32/64bit-ness as the one which is currently searching:
if(NOT CMAKE_SIZEOF_VOID_P STREQUAL "8")
math(EXPR installedBits "8 * 8")
set(PACKAGE_VERSION "${PACKAGE_VERSION} (${installedBits}bit)")
set(PACKAGE_VERSION_UNSUITABLE TRUE)
endif()

13
deps/GMP/GMP.cmake vendored
View File

@ -19,15 +19,18 @@ if (MSVC)
else ()
set(_gmp_ccflags "-O2 -DNDEBUG -fPIC -DPIC -Wall -Wmissing-prototypes -Wpointer-arith -pedantic -fomit-frame-pointer -fno-common")
set(_gmp_build_tgt "${CMAKE_SYSTEM_PROCESSOR}")
if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm")
set(_gmp_ccflags "${_gmp_ccflags} -march=armv7-a") # Works on RPi-4
set(_gmp_build_tgt armv7)
endif()
if (APPLE)
if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm")
set(_gmp_build_tgt aarch64)
endif()
set(_gmp_ccflags "${_gmp_ccflags} -mmacosx-version-min=${DEP_OSX_TARGET}")
set(_gmp_build_tgt "--build=${_gmp_build_tgt}-apple-darwin")
elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux")
if (${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm")
set(_gmp_ccflags "${_gmp_ccflags} -march=armv7-a") # Works on RPi-4
set(_gmp_build_tgt armv7)
endif()
set(_gmp_build_tgt "--build=${_gmp_build_tgt}-pc-linux-gnu")
else ()
set(_gmp_build_tgt "") # let it guess
@ -35,7 +38,7 @@ else ()
ExternalProject_Add(dep_GMP
# URL https://gmplib.org/download/gmp/gmp-6.1.2.tar.bz2
URL https://gmplib.org/download/gmp/gmp-6.2.0.tar.lz
URL https://gmplib.org/download/gmp/gmp-6.2.1.tar.bz2
BUILD_IN_SOURCE ON
CONFIGURE_COMMAND env "CFLAGS=${_gmp_ccflags}" "CXXFLAGS=${_gmp_ccflags}" ./configure --enable-shared=no --enable-cxx=yes --enable-static=yes "--prefix=${DESTDIR}/usr/local" ${_gmp_build_tgt}
BUILD_COMMAND make -j

8
deps/PNG/PNG.cmake vendored
View File

@ -1,3 +1,9 @@
if (APPLE)
# Only disable NEON extension for Apple ARM builds, leave it enabled for Raspberry PI.
set(_disable_neon_extension "-DPNG_ARM_NEON=off")
else ()
set(_disable_neon_extension "")
endif ()
prusaslicer_add_cmake_project(PNG
GIT_REPOSITORY https://github.com/glennrp/libpng.git
@ -8,6 +14,8 @@ prusaslicer_add_cmake_project(PNG
-DPNG_STATIC=ON
-DPNG_PREFIX=prusaslicer_
-DPNG_TESTS=OFF
-DDISABLE_DEPENDENCY_TRACKING=OFF
${_disable_neon_extension}
)
if (MSVC)

View File

@ -80,7 +80,6 @@ ExternalProject_Add(dep_libcurl
--disable-smb
--disable-smtp
--disable-gopher
--disable-crypto-auth
--without-gssapi
--without-libpsl
--without-libidn2

View File

@ -67,7 +67,6 @@ ExternalProject_Add(dep_libcurl
--disable-smb
--disable-smtp
--disable-gopher
--disable-crypto-auth
--without-gssapi
--without-libpsl
--without-libidn2

View File

@ -1,4 +1,11 @@
set(_wx_git_tag v3.1.3-patched)
if (APPLE AND ${CMAKE_SYSTEM_PROCESSOR} MATCHES "arm")
# The new OSX 11 (Big Sur) is not compatible with wxWidgets 3.1.3.
# Let's use patched wxWidgets 3.1.4, even though it is not quite tested.
set(_wx_git_tag v3.1.4-patched)
else ()
# Use the tested patched wxWidgets 3.1.3 everywhere else.
set(_wx_git_tag v3.1.3-patched)
endif ()
# set(_patch_command "")
set(_wx_toolkit "")

View File

@ -159,6 +159,3 @@ Refer to the CMake scripts inside the `deps` directory to see which dependencies
\*) Specifically, the problem arises when building boost. Boost build tool appends all build options into paths of
intermediate files, which are not handled correctly by either `b2.exe` or possibly `ninja` (?).

View File

@ -0,0 +1,75 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
viewBox="0 0 800 800"
style="enable-background:new 0 0 800 800;"
xml:space="preserve"
sodipodi:docname="notification_eject_sd_hover.svg"
inkscape:version="1.0 (4035a4fb49, 2020-05-01)"><metadata
id="metadata15"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs13" /><sodipodi:namedview
inkscape:document-rotation="0"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="3840"
inkscape:window-height="2066"
id="namedview11"
showgrid="false"
inkscape:zoom="1.26"
inkscape:cx="400"
inkscape:cy="396.42857"
inkscape:window-x="-11"
inkscape:window-y="-11"
inkscape:window-maximized="1"
inkscape:current-layer="Layer_1" />
<style
type="text/css"
id="style2">
.st0{fill:#ED6B21;}
</style>
<path
style="stroke-width:0.85"
class="st0"
d="m 565.50264,534.98775 v 60.775 h -330.565 v -60.775 h 330.565 m 27.88,-48.195 h -386.24 c -11.22,0 -20.315,9.095 -20.315,20.315 v 116.535 c 0,11.22 9.095,20.315 20.315,20.315 h 386.24 c 11.22,0 20.315,-9.095 20.315,-20.315 v -116.45 c 0,-11.22 -9.095,-20.4 -20.315,-20.4 z"
id="path4" />
<path
style="stroke-width:0.85"
class="st0"
d="m 400.09264,235.70275 116.96,155.295 h -233.75 l 116.79,-155.295 m 0,-66.64 c -6.12,0 -12.155,2.72 -16.235,8.16 l -172.635,229.5 c -10.115,13.43 -0.51,32.555 16.235,32.555 h 345.355 c 16.745,0 26.35,-19.125 16.235,-32.555 l -172.805,-229.5 c -3.995,-5.44 -10.03,-8.16 -16.15,-8.16 z"
id="path6" />
<g
id="g4"
transform="matrix(0.9775,0,0,0.9775,53.547,53.54775)">
<path
id="path2"
class="st0"
d="M 597.2,701.3 H 110.6 C 53.2,701.3 6.5,654.6 6.5,597.2 V 110.6 C 6.5,53.2 53.2,6.5 110.6,6.5 h 486.6 c 57.4,0 104.1,46.7 104.1,104.1 v 486.6 c 0,57.4 -46.7,104.1 -104.1,104.1 z M 110.6,52.4 c -32,0 -58.2,26 -58.2,58.2 v 486.6 c 0,32 26,58.2 58.2,58.2 h 486.6 c 32,0 58.2,-26 58.2,-58.2 V 110.6 c 0,-32 -26,-58.2 -58.2,-58.2 z" />
</g>
<path
style="fill:#ed6b21;fill-opacity:1;stroke-width:0.674603"
d="m 150.65676,738.12999 c -12.4717,-1.39663 -26.66772,-5.94192 -37.84321,-12.11671 -17.754551,-9.80992 -33.768844,-26.68981 -42.418124,-44.71089 -5.985061,-12.4701 -8.760227,-23.35456 -9.821918,-38.52249 -0.48061,-6.8663 -0.640464,-87.42616 -0.497289,-250.61508 0.195544,-222.88027 0.294923,-240.94223 1.356742,-246.58759 4.2349,-22.51562 13.68014,-40.62012 29.200931,-55.97194 14.237938,-14.082924 31.958648,-23.427941 52.602238,-27.739791 5.87892,-1.227937 14.00696,-1.268146 256.3492,-1.268146 h 250.27778 l 7.08334,1.561512 c 21.30688,4.697075 36.90336,13.216072 51.96052,28.381502 14.67865,14.784203 23.1932,30.350373 27.76125,50.752683 l 1.56791,7.00271 v 250.95239 c 0,242.72256 -0.0418,251.15149 -1.26428,257.0238 -9.30592,44.69034 -45.18963,77.43352 -89.75566,81.90028 -9.17898,0.92002 -488.33076,0.87927 -496.55943,-0.0425 z M 652.87275,692.49 c 19.93824,-6.17834 34.6922,-21.42493 40.00111,-41.33675 l 1.51306,-5.67494 V 399.58544 153.69259 l -1.52571,-5.73412 c -5.66288,-21.28292 -21.4158,-36.89778 -42.2051,-41.83523 -5.63965,-1.33941 -7.66026,-1.3488 -253.17948,-1.17613 l -247.49447,0.17405 -4.72222,1.5953 c -18.05932,6.10093 -31.7315,19.23923 -37.4918,36.0278 -1.04762,3.05333 -2.22128,7.52472 -2.60813,9.93642 -0.47859,2.9836 -0.705,81.91876 -0.70847,246.99889 -0.005,218.14117 0.10226,243.1829 1.05916,248.25397 4.27172,22.63802 22.24346,40.86392 44.80877,45.4425 3.58848,0.72811 49.16893,0.87009 250.95237,0.78171 l 246.56747,-0.10801 z"
id="path17" /><path
style="fill:#ed6b21;fill-opacity:1;stroke-width:0.674603"
d="m 218.59688,436.65333 c -4.13129,-2.06443 -6.86895,-4.83026 -9.31331,-9.40915 -1.8345,-3.43648 -1.79343,-12.82008 0.0723,-16.52778 1.6224,-3.22405 174.17376,-232.72362 177.28101,-235.79015 3.40221,-3.35765 7.0012,-4.88322 12.34326,-5.23218 4.15899,-0.27168 5.32913,-0.0718 8.86231,1.51379 2.23886,1.00474 4.97342,2.78734 6.07682,3.96132 4.02813,4.28582 175.25817,232.2757 176.9048,235.54571 2.34584,4.65861 2.38759,12.10251 0.0927,16.52929 -2.00877,3.87485 -5.74351,7.80536 -9.18863,9.67026 l -2.69841,1.4607 -178.1462,0.17362 -178.14619,0.17362 z m 298.67589,-45.66907 c -0.0611,-1.0035 -116.48775,-154.99008 -117.18534,-154.99008 -0.71184,0 -116.84805,154.02591 -116.8632,154.99008 -0.004,0.27827 52.6617,0.50595 117.03571,0.50595 64.374,0 117.02978,-0.22768 117.01283,-0.50595 z"
id="path19" /><path
style="fill:#ed6b21;fill-opacity:1;stroke-width:0.674603"
d="m 202.23056,642.87591 c -4.08272,-1.10499 -7.53117,-3.30912 -10.37477,-6.63124 -4.63948,-5.42019 -4.43387,-2.10678 -4.42657,-71.33297 l 0.007,-62.44927 1.60268,-3.44194 c 1.88877,-4.05635 5.3977,-7.75734 9.36436,-9.8769 l 2.84915,-1.52243 h 199.00794 199.00793 l 2.84915,1.52243 c 3.96665,2.11956 7.47559,5.82055 9.36436,9.8769 l 1.60267,3.44194 0.007,62.44927 c 0.008,69.78764 0.26152,65.98231 -4.79028,71.72146 -1.4904,1.69319 -4.37627,3.87229 -6.52672,4.9283 l -3.85513,1.89304 -196.30953,0.12602 c -153.67069,0.0987 -196.97613,-0.0544 -199.37859,-0.70461 z M 565.87502,565.20052 V 534.50608 H 400.25994 234.64486 v 30.69444 30.69446 h 165.61508 165.61508 z"
id="path21" /></svg>

After

Width:  |  Height:  |  Size: 5.7 KiB

View File

@ -0,0 +1,76 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
version="1.1"
id="Layer_1"
x="0px"
y="0px"
viewBox="0 0 800 800"
style="enable-background:new 0 0 800 800;"
xml:space="preserve"
sodipodi:docname="notification_eject_sd.svg"
inkscape:version="1.0 (4035a4fb49, 2020-05-01)"><metadata
id="metadata15"><rdf:RDF><cc:Work
rdf:about=""><dc:format>image/svg+xml</dc:format><dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" /></cc:Work></rdf:RDF></metadata><defs
id="defs13" /><sodipodi:namedview
inkscape:document-rotation="0"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1"
objecttolerance="10"
gridtolerance="10"
guidetolerance="10"
inkscape:pageopacity="0"
inkscape:pageshadow="2"
inkscape:window-width="1918"
inkscape:window-height="2054"
id="namedview11"
showgrid="false"
inkscape:zoom="1.26"
inkscape:cx="400"
inkscape:cy="401.5873"
inkscape:window-x="0"
inkscape:window-y="0"
inkscape:window-maximized="0"
inkscape:current-layer="Layer_1" />
<style
type="text/css"
id="style2">
.st0{fill:#ED6B21;}
</style>
<path
class="st0"
d="M594.8,558.9v71.5H205.9v-71.5H594.8 M627.6,502.2H173.2c-13.2,0-23.9,10.7-23.9,23.9v137.1 c0,13.2,10.7,23.9,23.9,23.9h454.4c13.2,0,23.9-10.7,23.9-23.9V526.2C651.5,513,640.8,502.2,627.6,502.2L627.6,502.2z"
id="path4" />
<path
class="st0"
d="M400.2,206.8l137.6,182.7h-275L400.2,206.8 M400.2,128.4c-7.2,0-14.3,3.2-19.1,9.6l-203.1,270 c-11.9,15.8-0.6,38.3,19.1,38.3h406.3c19.7,0,31-22.5,19.1-38.3l-203.3-270C414.5,131.6,407.4,128.4,400.2,128.4L400.2,128.4z"
id="path6" />
<g
id="g4"
transform="matrix(1.15,0,0,1.15,-7.50075,-7.5)">
<path
id="path2"
class="st0"
d="M597.2,701.3H110.6c-57.4,0-104.1-46.7-104.1-104.1V110.6C6.5,53.2,53.2,6.5,110.6,6.5h486.6 c57.4,0,104.1,46.7,104.1,104.1v486.6C701.3,654.6,654.6,701.3,597.2,701.3z M110.6,52.4c-32,0-58.2,26-58.2,58.2v486.6 c0,32,26,58.2,58.2,58.2h486.6c32,0,58.2-26,58.2-58.2V110.6c0-32-26-58.2-58.2-58.2L110.6,52.4z" />
</g>
<path
style="fill:#ed6b21;fill-opacity:1;stroke-width:0.793651"
d="M 107.81901,798.00119 C 77.966509,794.83135 49.146122,779.90354 30.060545,757.72544 16.219297,741.64143 7.2605087,723.64471 2.5844311,702.53048 L 0.79365079,694.44444 V 399.60317 104.7619 L 2.5707889,96.74281 C 8.1200484,71.702533 18.222321,53.056007 35.651802,35.682695 53.220959,18.170156 71.802034,8.0954675 96.708127,2.5778576 L 104.7619,0.79365079 h 294.44445 c 281.74132,0 294.75136,0.0623952 301.55851,1.44626191 16.67428,3.3898194 30.80854,9.2277743 44.45639,18.3620833 30.56319,20.455498 49.17772,51.734599 52.83931,88.789134 0.52246,5.28681 0.71992,107.13501 0.57277,295.37077 -0.21452,274.44189 -0.28952,287.63907 -1.67476,294.84127 -9.63677,50.10325 -47.25156,87.71807 -97.3554,97.35548 -7.21079,1.38698 -20.15876,1.45445 -296.82539,1.54754 -159.10715,0.0532 -291.83859,-0.17373 -294.95877,-0.505 z m 582.70983,-52.40653 c 14.11333,-2.49918 25.86756,-8.65506 36.13916,-18.92666 10.4238,-10.4238 16.61917,-22.37735 18.96341,-36.58863 0.59763,-3.62296 0.78014,-91.16224 0.61306,-294.04762 -0.2267,-275.2812 -0.30507,-289.11319 -1.66353,-293.6508 -2.29132,-7.653498 -8.052,-18.790275 -12.80623,-24.757484 -7.93878,-9.964272 -18.57499,-17.346949 -31.48512,-21.854079 l -7.43245,-2.594784 -291.12328,-0.20372 C 142.50327,52.78948 110.02937,52.90047 105.30529,53.98405 79.968659,59.795581 61.031339,78.238321 54.164726,103.78898 l -1.754497,6.52848 -0.240323,282.14286 c -0.151001,177.27655 0.04527,285.53516 0.528069,291.26984 2.318854,27.5434 19.073236,49.76542 44.524247,59.05433 10.087718,3.68173 -4.026285,3.51395 301.243128,3.58099 197.57151,0.0434 288.82563,-0.19746 292.06349,-0.77082 z"
id="path19" /><path
id="path12"
d="M 107.81901,798.00119 C 71.793616,794.17587 39.726024,774.51428 19.725029,743.98814 11.604149,731.59381 6.0410683,718.13847 2.5844311,702.53048 L 0.79365079,694.44444 V 399.20635 103.96825 L 3.035741,94.554887 C 8.7824143,70.427608 18.557382,52.794942 35.676163,35.676161 52.78713,18.565194 70.514246,8.724096 94.444444,3.0513179 l 9.523806,-2.25766869 h 294.84127 c 282.12524,0 295.14809,0.0623746 301.95534,1.44626189 16.66109,3.3871391 30.79289,9.2216269 44.45639,18.3543829 30.53954,20.412782 49.17677,51.732756 52.83931,88.796836 0.52246,5.28681 0.71992,107.13501 0.57277,295.37077 -0.21452,274.44188 -0.28952,287.63907 -1.67476,294.84127 -8.48938,44.13777 -38.62564,78.86883 -80.59962,92.88841 -19.37815,6.47239 11.16453,5.88739 -313.58117,6.0062 -159.10715,0.0579 -291.83859,-0.16532 -294.95877,-0.49659 z m 583.84766,-52.6969 c 13.48971,-2.42242 24.94716,-8.60413 35.32488,-19.05909 10.25229,-10.3286 16.66154,-22.92711 18.61985,-36.60068 0.66689,-4.65647 0.83196,-81.74243 0.62956,-294.0096 C 745.9846,126.77174 745.87745,107.60752 744.6044,102.9114 738.42079,80.100871 721.07257,62.283764 697.9879,55.03493 l -5.92441,-1.860328 H 399.20635 106.34921 L 98.809524,55.78721 C 75.623265,63.821579 59.178748,82.101475 53.902861,105.70593 52.59901,111.53938 52.514615,128.88593 52.47105,400 l -0.04629,288.09524 2.080286,7.60155 c 6.270993,22.91476 22.15377,39.95711 44.384633,47.62505 3.584011,1.23621 7.998091,1.91356 14.999211,2.30168 5.45635,0.30249 136.34921,0.59491 290.87301,0.64982 232.38849,0.0826 281.98128,-0.0849 286.90477,-0.96905 z"
style="fill:#ed6b21;fill-opacity:1;stroke-width:0.793651" /><path
id="path14"
d="m 188.74939,444.33528 c -4.767,-1.68913 -10.12828,-6.7592 -12.71276,-12.02223 -2.90908,-5.92405 -3.07868,-13.78271 -0.41474,-19.21781 1.59087,-3.24578 204.04455,-273.05533 208.24079,-277.52202 0.98764,-1.05129 4.03672,-3.01468 6.77574,-4.3631 4.52929,-2.22976 5.50158,-2.41761 10.74224,-2.07541 6.86047,0.44798 10.76603,2.25377 15.37601,7.10932 3.73681,3.93587 203.30677,268.8636 207.0044,274.79691 2.05716,3.30097 2.4722,4.84315 2.70946,10.06767 0.23771,5.23447 -0.0137,6.8089 -1.6588,10.38763 -2.76417,6.01319 -5.53229,8.93875 -11.0814,11.71167 l -4.85687,2.42701 -208.40498,-0.0627 c -181.84257,-0.0547 -208.82739,-0.21233 -211.71909,-1.23698 z m 348.94902,-54.98925 c 0,-0.9027 -136.36908,-182.10669 -137.30528,-182.44799 -0.54415,-0.19837 -135.36926,178.28524 -137.53574,182.07198 -0.54249,0.9482 19.37332,1.10934 137.10317,1.10934 83.74346,0 137.73785,-0.28747 137.73785,-0.73333 z"
style="fill:#ed6b21;fill-opacity:1;stroke-width:0.793651" /><path
id="path16"
d="m 168.25397,686.16973 c -7.05465,-1.71645 -13.06577,-6.58064 -16.33102,-13.21504 L 150,669.04762 v -74.20635 -74.20635 l 1.8935,-4.19003 c 1.12593,-2.49152 3.46026,-5.59868 5.75857,-7.66505 7.33695,-6.59655 -16.73947,-6.00214 243.08455,-6.00144 l 231.80306,6.3e-4 4.76912,2.2562 c 5.31341,2.5137 9.30333,6.56248 11.81369,11.98794 1.66145,3.59075 1.67116,4.0432 1.67116,77.8181 v 74.20635 l -1.92294,3.90707 c -2.44721,4.97227 -6.5951,9.12016 -11.60261,11.6026 l -3.93477,1.95064 -231.3492,0.12055 c -127.24207,0.0663 -232.42064,-0.14013 -233.73016,-0.45875 z m 426.5873,-91.72529 V 558.33333 H 400 205.15873 v 36.11111 36.11111 H 400 594.84127 Z"
style="fill:#ed6b21;fill-opacity:1;stroke-width:0.793651" /></svg>

After

Width:  |  Height:  |  Size: 7.3 KiB

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -78,7 +78,6 @@ src/libslic3r/ExtrusionEntity.cpp
src/libslic3r/Flow.cpp
src/libslic3r/Format/3mf.cpp
src/libslic3r/Format/AMF.cpp
src/libslic3r/GCode/PreviewData.cpp
src/libslic3r/miniz_extension.cpp
src/libslic3r/Preset.cpp
src/libslic3r/Print.cpp

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -1,4 +1,9 @@
min_slic3r_version = 2.3.0-beta2
0.0.6 Reduced max print height for Predator. Updated end g-code, before layer change g-code and output filename format for Kossel.
0.0.5 Updated end g-code.
min_slic3r_version = 2.3.0-alpha2
0.0.4 Fixed predator output filaname format, infill overlap.
0.0.3 Fixed infill_overlap, start_gcode, end_gcode for Anycubic Predator
0.0.2 Added Anycubic Predator
min_slic3r_version = 2.3.0-alpha0
0.0.1 Initial Version

File diff suppressed because one or more lines are too long

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 38 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 53 KiB

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 38 KiB

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 34 KiB

View File

@ -1,3 +1,5 @@
min_slic3r_version = 2.3.0-beta2
0.0.3 Removed obsolete host keys.
min_slic3r_version = 2.2.0-alpha3
0.0.2 General print quality improvements
0.0.1 Multiple Print models were unified into a single one.

View File

@ -5,7 +5,7 @@
name = BIBO
# Configuration version of this file. Config file will only be installed, if the config_version differs.
# This means, the server may force the PrusaSlicer configuration to be downgraded.
config_version = 0.0.2
config_version = 0.0.3
# Where to get the updates from?
config_update_url = https://files.prusa3d.com/wp-content/uploads/repository/PrusaSlicer-settings-master/live/BIBO/
@ -722,13 +722,9 @@ layer_gcode = ;AFTER_LAYER_CHANGE\n;[layer_z]
max_layer_height = 0.30
min_layer_height = 0.05
max_print_height = 160
octoprint_apikey =
octoprint_host =
printer_notes =
printer_settings_id =
printer_vendor = BIBO
printhost_apikey =
printhost_cafile =
retract_before_travel = 1
retract_before_wipe = 100%
retract_layer_change = 1
@ -740,8 +736,6 @@ retract_lift_below = 0
retract_restart_extra = 0
retract_restart_extra_toolchange = 0
retract_speed = 20
serial_port =
serial_speed = 250000
single_extruder_multi_material = 0
toolchange_gcode =
use_firmware_retraction = 0

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 33 KiB

View File

@ -1,4 +1,14 @@
min_slic3r_version = 2.3.0-rc2
0.0.12 Added Ender-3V2 and filament profiles.
min_slic3r_version = 2.3.0-beta2
0.0.11 Updated machine limits for Ender 5 and Ender 5 Plus.
0.0.10 Parameter consistency improvements. Enabled conservative elephant foot compensation.
0.0.9 Fixed end g-code for Ender 5.
0.0.8 Slight end g-code improvements and spool weights.
min_slic3r_version = 2.3.0-alpha2
0.0.7 Updated start g-code for Creality printers.
0.0.6 Added filament profiles, adjusted temperatures, updated start g-code for some models.
0.0.5 Added 0.08mm SUPERDETAIL and 0.28mm SUPERDRAFT print profiles. Updated OPTIMAL print profile.
0.0.4 Added initial CR-10 profile, end g-code improvements.
min_slic3r_version = 2.3.0-alpha0
0.0.3 Added Ender-2, Ender-3 BLTouch, updated Ender-3 bed texture.

View File

@ -5,7 +5,7 @@
name = Creality
# Configuration version of this file. Config file will only be installed, if the config_version differs.
# This means, the server may force the PrusaSlicer configuration to be downgraded.
config_version = 0.0.4
config_version = 0.0.12
# Where to get the updates from?
config_update_url = https://files.prusa3d.com/wp-content/uploads/repository/PrusaSlicer-settings-master/live/Creality/
# changelog_url = https://files.prusa3d.com/?latest=slicer-profiles&lng=%1%
@ -23,6 +23,15 @@ bed_model = ender3_bed.stl
bed_texture = ender3.svg
default_materials = Creality PLA @CREALITY; Generic PLA @CREALITY; Generic PETG @CREALITY; Generic ABS @CREALITY; Prusament PLA @CREALITY; Prusament PETG @CREALITY
[printer_model:ENDER3V2]
name = Creality Ender-3V2
variants = 0.4
technology = FFF
family = ENDER
bed_model = ender3_bed.stl
bed_texture = ender3.svg
default_materials = Creality PLA @CREALITY; Generic PLA @CREALITY; Generic PETG @CREALITY; Generic ABS @CREALITY; Prusament PLA @CREALITY; Prusament PETG @CREALITY
[printer_model:ENDER3BLTOUCH]
name = Creality Ender-3 BLTouch
variants = 0.4
@ -172,7 +181,7 @@ clip_multipart_objects = 1
compatible_printers =
complete_objects = 0
dont_support_bridges = 1
elefant_foot_compensation = 0
elefant_foot_compensation = 0.1
ensure_vertical_shell_thickness = 1
external_fill_pattern = rectilinear
external_perimeters_first = 0
@ -260,6 +269,13 @@ wipe_tower_x = 170
wipe_tower_y = 140
xy_size_compensation = 0
[print:*0.08mm*]
inherits = *common*
layer_height = 0.08
perimeters = 3
bottom_solid_layers = 9
top_solid_layers = 11
[print:*0.10mm*]
inherits = *common*
layer_height = 0.1
@ -274,9 +290,9 @@ perimeters = 3
bottom_solid_layers = 6
top_solid_layers = 7
[print:*0.15mm*]
[print:*0.16mm*]
inherits = *common*
layer_height = 0.15
layer_height = 0.16
bottom_solid_layers = 5
top_solid_layers = 7
@ -293,6 +309,17 @@ top_infill_extrusion_width = 0.45
bottom_solid_layers = 3
top_solid_layers = 4
[print:*0.28mm*]
inherits = *common*
layer_height = 0.28
top_infill_extrusion_width = 0.45
bottom_solid_layers = 3
top_solid_layers = 4
[print:0.08mm SUPERDETAIL @CREALITY]
inherits = *0.08mm*
compatible_printers_condition = printer_model=~/(ENDER|CR).*/ and nozzle_diameter[0]==0.4
[print:0.10mm HIGHDETAIL @CREALITY]
inherits = *0.10mm*
renamed_from = "0.10mm HIGHDETAIL @ENDER3"
@ -303,9 +330,9 @@ inherits = *0.12mm*
renamed_from = "0.12mm DETAIL @ENDER3"
compatible_printers_condition = printer_model=~/(ENDER|CR).*/ and nozzle_diameter[0]==0.4
[print:0.15mm OPTIMAL @CREALITY]
inherits = *0.15mm*
renamed_from = "0.15mm OPTIMAL @ENDER3"
[print:0.16mm OPTIMAL @CREALITY]
inherits = *0.16mm*
renamed_from = "0.15mm OPTIMAL @ENDER3"; "0.15mm OPTIMAL @CREALITY"
compatible_printers_condition = printer_model=~/(ENDER|CR).*/ and nozzle_diameter[0]==0.4
[print:0.20mm NORMAL @CREALITY]
@ -318,6 +345,10 @@ inherits = *0.24mm*
renamed_from = "0.24mm DRAFT @ENDER3"
compatible_printers_condition = printer_model=~/(ENDER|CR).*/ and nozzle_diameter[0]==0.4
[print:0.28mm SUPERDRAFT @CREALITY]
inherits = *0.28mm*
compatible_printers_condition = printer_model=~/(ENDER|CR).*/ and nozzle_diameter[0]==0.4
# Common filament preset
[filament:*common*]
cooling = 0
@ -337,20 +368,20 @@ compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_CREALITY.*/
inherits = *common*
bed_temperature = 60
fan_below_layer_time = 100
filament_colour = #FF3232
filament_colour = #DDDDDD
filament_max_volumetric_speed = 15
filament_type = PLA
filament_density = 1.24
filament_cost = 20
first_layer_bed_temperature = 40
first_layer_temperature = 215
first_layer_bed_temperature = 60
first_layer_temperature = 210
fan_always_on = 1
cooling = 1
max_fan_speed = 100
min_fan_speed = 100
bridge_fan_speed = 100
disable_fan_first_layers = 1
temperature = 210
temperature = 205
[filament:*PET*]
inherits = *common*
@ -358,7 +389,7 @@ bed_temperature = 70
cooling = 1
disable_fan_first_layers = 3
fan_below_layer_time = 20
filament_colour = #FF8000
filament_colour = #DDDDDD
filament_max_volumetric_speed = 8
filament_type = PETG
filament_density = 1.27
@ -377,7 +408,7 @@ bed_temperature = 100
cooling = 0
disable_fan_first_layers = 3
fan_below_layer_time = 20
filament_colour = #3A80CA
filament_colour = #DDDDDD
filament_max_volumetric_speed = 11
filament_type = ABS
filament_density = 1.04
@ -412,10 +443,11 @@ filament_vendor = Generic
inherits = *PLA*
renamed_from = "Creality PLA @ENDER3"
filament_vendor = Creality
temperature = 205
bed_temperature = 40
first_layer_temperature = 210
first_layer_bed_temperature = 40
temperature = 200
bed_temperature = 60
first_layer_temperature = 205
first_layer_bed_temperature = 60
filament_colour = #42BDD8
[filament:Creality PETG @CREALITY]
inherits = *PET*
@ -427,6 +459,7 @@ first_layer_temperature = 240
first_layer_bed_temperature = 70
max_fan_speed = 40
min_fan_speed = 20
filament_colour = #42BDD8
[filament:Creality ABS @CREALITY]
inherits = *ABS*
@ -436,17 +469,19 @@ temperature = 240
bed_temperature = 90
first_layer_temperature = 240
first_layer_bed_temperature = 90
filament_colour = #42BDD8
[filament:Prusament PLA @CREALITY]
inherits = *PLA*
renamed_from = "Prusament PLA @ENDER3"
filament_vendor = Prusa Polymers
temperature = 215
bed_temperature = 40
temperature = 210
bed_temperature = 60
first_layer_temperature = 215
first_layer_bed_temperature = 40
first_layer_bed_temperature = 60
filament_cost = 24.99
filament_density = 1.24
filament_colour = #F94D0C
[filament:Prusament PETG @CREALITY]
inherits = *PET*
@ -458,6 +493,18 @@ first_layer_temperature = 245
first_layer_bed_temperature = 70
filament_cost = 24.99
filament_density = 1.27
filament_colour = #F94D0C
[filament:AzureFilm PLA @CREALITY]
inherits = *PLA*
filament_vendor = AzureFilm
temperature = 210
bed_temperature = 60
first_layer_temperature = 215
first_layer_bed_temperature = 60
filament_cost = 19.97
filament_density = 1.24
filament_colour = #006AA6
[filament:Devil Design PLA @CREALITY]
inherits = *PLA*
@ -468,6 +515,18 @@ first_layer_temperature = 215
first_layer_bed_temperature = 60
filament_cost = 19.00
filament_density = 1.24
filament_colour = #FF0000
[filament:Devil Design PLA (Galaxy) @CREALITY]
inherits = *PLA*
filament_vendor = Devil Design
temperature = 225
bed_temperature = 65
first_layer_temperature = 225
first_layer_bed_temperature = 65
filament_cost = 19.00
filament_density = 1.24
filament_colour = #FF0000
[filament:Extrudr PLA NX2 @CREALITY]
inherits = *PLA*
@ -478,6 +537,8 @@ first_layer_temperature = 205
first_layer_bed_temperature = 60
filament_cost = 23.63
filament_density = 1.3
filament_colour = #3C4547
filament_spool_weight = 256
[filament:Real Filament PLA @CREALITY]
inherits = *PLA*
@ -488,38 +549,94 @@ first_layer_temperature = 200
first_layer_bed_temperature = 60
filament_cost = 24.99
filament_density = 1.24
filament_colour = #007ABF
[filament:Velleman PLA @CREALITY]
inherits = *PLA*
filament_vendor = Velleman
temperature = 200
bed_temperature = 60
first_layer_temperature = 205
first_layer_bed_temperature = 60
filament_cost = 27.99
filament_density = 1.24
filament_colour = #7EA60D
[filament:3DJAKE ecoPLA @CREALITY]
inherits = *PLA*
filament_vendor = 3DJAKE
temperature = 200
bed_temperature = 60
first_layer_temperature = 205
first_layer_bed_temperature = 60
filament_cost = 21.99
filament_density = 1.24
filament_colour = #125467
filament_spool_weight = 238
[filament:123-3D Jupiter PLA @CREALITY]
inherits = *PLA*
filament_vendor = 123-3D
temperature = 200
bed_temperature = 60
first_layer_temperature = 205
first_layer_bed_temperature = 60
filament_cost = 19.50
filament_density = 1.24
filament_colour = #FFE200
[filament:Das Filament PLA @CREALITY]
inherits = *PLA*
filament_vendor = Das Filament
temperature = 215
bed_temperature = 50
first_layer_temperature = 215
first_layer_bed_temperature = 50
filament_cost = 20.56
filament_density = 1.24
[filament:Das Filament PETG @CREALITY]
inherits = *PET*
filament_vendor = Das Filament
temperature = 240
bed_temperature = 70
first_layer_temperature = 240
first_layer_bed_temperature = 70
filament_cost = 27.44
filament_density = 1.29
# Common printer preset
[printer:*common*]
printer_technology = FFF
before_layer_gcode = ;BEFORE_LAYER_CHANGE\nG92 E0\n;[layer_z]\n\n
between_objects_gcode =
pause_print_gcode =
deretract_speed = 0
extruder_colour = #FFFF00
extruder_offset = 0x0
gcode_flavor = marlin
silent_mode = 0
remaining_times = 0
machine_max_acceleration_e = 10000
machine_max_acceleration_extruding = 2000
machine_max_acceleration_retracting = 1500
machine_max_acceleration_x = 3000
machine_max_acceleration_y = 3000
machine_max_acceleration_z = 500
machine_max_feedrate_e = 120
machine_max_acceleration_e = 5000
machine_max_acceleration_extruding = 500
machine_max_acceleration_retracting = 1000
machine_max_acceleration_x = 500
machine_max_acceleration_y = 500
machine_max_acceleration_z = 100
machine_max_feedrate_e = 60
machine_max_feedrate_x = 500
machine_max_feedrate_y = 500
machine_max_feedrate_z = 12
machine_max_jerk_e = 2.5
machine_max_jerk_x = 20
machine_max_jerk_y = 20
machine_max_feedrate_z = 10
machine_max_jerk_e = 5
machine_max_jerk_x = 8
machine_max_jerk_y = 8
machine_max_jerk_z = 0.4
machine_min_extruding_rate = 0
machine_min_travel_rate = 0
layer_gcode = ;AFTER_LAYER_CHANGE\n;[layer_z]
max_layer_height = 0.3
min_layer_height = 0.07
max_print_height = 200
max_print_height = 250
nozzle_diameter = 0.4
printer_notes =
printer_settings_id =
@ -543,16 +660,16 @@ variable_layer_height = 1
wipe = 1
z_offset = 0
printer_model =
default_print_profile =
default_filament_profile =
default_print_profile = 0.16mm OPTIMAL @CREALITY
default_filament_profile = Generic PLA @CREALITY
[printer:Creality Ender-3]
inherits = *common*
renamed_from = "Creality ENDER-3"
printer_model = ENDER3
printer_variant = 0.4
max_layer_height = 0.25
min_layer_height = 0.1
max_layer_height = 0.28
min_layer_height = 0.08
printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_CREALITY\nPRINTER_MODEL_ENDER3\nPRINTER_HAS_BOWDEN
bed_shape = 3x3,228x3,228x228,3x228
max_print_height = 250
@ -578,19 +695,26 @@ retract_length = 5
retract_speed = 60
deretract_speed = 40
retract_before_wipe = 70%
default_print_profile = 0.15mm OPTIMAL @CREALITY
default_filament_profile = Creality PLA @CREALITY
start_gcode = G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 ; home all\nG1 Z2 F240\nG1 X2 Y10 F3000\nG1 Z0.28 F240\nG92 E0.0\nG1 Y190 E15.0 F1500.0 ; intro line\nG1 X2.3 F5000\nG1 Y10 E15.0 F1200.0 ; intro line\nG92 E0.0
end_gcode = M104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\n{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+5, max_print_height)} F600{endif} ; Move print head up\nG1 X5 Y170 F3000 ; present print\n{if layer_z < max_print_height-10}G1 Z{z_offset+min(layer_z+70, max_print_height-10)} F600{endif} ; Move print head up\nM84 X Y E ; disable motors
start_gcode = G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 ; home all\nG1 Z2 F240\nG1 X2 Y10 F3000\nG1 Z0.28 F240\nG92 E0\nG1 Y190 E15 F1500 ; intro line\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E15 F1200 ; intro line\nG92 E0
end_gcode = {if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+2, max_print_height)} F600{endif} ; Move print head up\nG1 X5 Y170 F{travel_speed*60} ; present print\n{if max_layer_z < max_print_height-10}G1 Z{z_offset+min(max_layer_z+70, max_print_height-10)} F600{endif} ; Move print head further up\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors
[printer:*abl*]
start_gcode = G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S150 ; set extruder temp for auto bed leveling\nM140 S[first_layer_bed_temperature] ; set bed temp\nG28 ; home all\nG29 ; auto bed levelling\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[first_layer_temperature] ; set extruder temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG1 Z0.28 F240\nG92 E0.0\nG1 Y190 E15.0 F1500.0 ; intro line\nG1 X2.3 F5000\nG1 Y10 E15.0 F1200.0 ; intro line\nG92 E0.0
[printer:Creality Ender-3V2]
inherits = Creality Ender-3
printer_model = ENDER3V2
printer_variant = 0.4
bed_shape = 0x0,220x0,220x220,0x220
[printer:*fastabl*]
start_gcode = G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S150 ; set extruder temp for auto bed leveling\nM140 S[first_layer_bed_temperature] ; set bed temp\nG28 ; home all\nG29 ; auto bed levelling\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[first_layer_temperature] ; set extruder temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG1 Z0.28 F240\nG92 E0\nG1 Y190 E15 F1500 ; intro line\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E15 F1200 ; intro line\nG92 E0
[printer:*slowabl*]
start_gcode = G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S150 ; set extruder temp for auto bed leveling\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nG28 ; home all\nG29 ; auto bed levelling\nG1 Z50 F240\nG1 X2 Y10 F3000\nM104 S[first_layer_temperature] ; set extruder temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG1 Z0.28 F240\nG92 E0\nG1 Y190 E15 F1500 ; intro line\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E15 F1200 ; intro line\nG92 E0
[printer:*invertedz*]
end_gcode = M104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\n{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+5, max_print_height)} F600{endif} ; Move print bed down\nG1 X50 Y50 F3000 ; present print\n{if layer_z < max_print_height-10}G1 Z{z_offset+max_print_height-10} F600{endif} ; Move print bed down\nM84 X Y E ; disable motors
end_gcode = {if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+2, max_print_height)} F600{endif} ; Move print bed down\nG1 X50 Y50 F{travel_speed*60} ; present print\n{if max_layer_z < max_print_height-10}G1 Z{z_offset+max_print_height-10} F600{endif} ; Move print bed down further down\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors
[printer:Creality Ender-3 BLTouch]
inherits = Creality Ender-3; *abl*
inherits = Creality Ender-3; *fastabl*
renamed_from = "Creality ENDER-3 BLTouch"
printer_model = ENDER3BLTOUCH
@ -601,14 +725,20 @@ bed_shape = 5x2.5,225x2.5,225x222.5,5x222.5
printer_model = ENDER5
printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_CREALITY\nPRINTER_MODEL_ENDER5\nPRINTER_HAS_BOWDEN
max_print_height = 300
machine_max_acceleration_e = 1000
machine_max_feedrate_z = 5
[printer:Creality Ender-5 Plus]
inherits = Creality Ender-3; *abl*; *invertedz*
inherits = Creality Ender-3; *slowabl*; *invertedz*
retract_length = 6
bed_shape = 5x5,355x5,355x355,5x355
printer_model = ENDER5PLUS
printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_CREALITY\nPRINTER_MODEL_ENDER5PLUS\nPRINTER_HAS_BOWDEN
max_print_height = 400
machine_max_acceleration_e = 1000
machine_max_feedrate_z = 5
machine_max_feedrate_x = 300
machine_max_feedrate_y = 300
[printer:Creality Ender-2]
inherits = Creality Ender-3
@ -617,8 +747,8 @@ bed_shape = 0x0,150x0,150x150,0x150
printer_model = ENDER2
printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_CREALITY\nPRINTER_MODEL_ENDER2\nPRINTER_HAS_BOWDEN
max_print_height = 200
start_gcode = G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 ; home all\nG1 Z2 F240\nG1 X2 Y10 F3000\nG1 Z0.28 F240\nG92 E0.0\nG1 X15 Y135 E15.0 F1500.0 ; intro line\nG1 X2.3 F5000\nG1 Y10 E15.0 F1200.0 ; intro line\nG92 E0.0
end_gcode = M104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\n{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+5, max_print_height)} F600{endif} ; Move print head up\nG1 X5 Y140 F3000 ; present print\n{if layer_z < max_print_height}G1 Z{z_offset+min(layer_z+30, max_print_height)} F600{endif} ; Move print head up\nM84 X Y E ; disable motors
start_gcode = G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM104 S[first_layer_temperature] ; set extruder temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM109 S[first_layer_temperature] ; wait for extruder temp\nG28 ; home all\nG1 Z2 F240\nG1 X2 Y10 F3000\nG1 Z0.28 F240\nG92 E0\nG1 X15 Y135 E15 F1500 ; intro line\nG1 X2.3 F5000\nG92 E0\nG1 Y10 E15 F1200 ; intro line\nG92 E0
end_gcode = {if max_layer_z < max_print_height}G1 Z{z_offset+min(max_layer_z+2, max_print_height)} F600{endif} ; Move print head up\nG1 X5 Y140 F{travel_speed*60} ; present print\n{if max_layer_z < max_print_height-10}G1 Z{z_offset+min(max_layer_z+30, max_print_height-10)} F600{endif} ; Move print head further up\nM140 S0 ; turn off heatbed\nM104 S0 ; turn off temperature\nM107 ; turn off fan\nM84 X Y E ; disable motors
[printer:Creality CR-10 Mini]
inherits = Creality Ender-3
@ -661,7 +791,7 @@ printer_notes = Don't remove the following keywords! These keywords are used in
max_print_height = 400
[printer:Creality CR-10 S Pro]
inherits = Creality Ender-3; *abl*
inherits = Creality Ender-3; *slowabl*
retract_length = 6
bed_shape = 0x0,300x0,300x300,0x300
printer_model = CR10SPRO
@ -669,7 +799,7 @@ printer_notes = Don't remove the following keywords! These keywords are used in
max_print_height = 400
[printer:Creality CR-10 S Pro V2]
inherits = Creality Ender-3; *abl*
inherits = Creality Ender-3; *slowabl*
retract_length = 6
bed_shape = 5x5,305x5,305x305,5x305
printer_model = CR10SPROV2
@ -698,7 +828,7 @@ printer_model = CR20
printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_CREALITY\nPRINTER_MODEL_CR20\nPRINTER_HAS_BOWDEN
[printer:Creality CR-20 Pro]
inherits = Creality Ender-3; *abl*
inherits = Creality Ender-3; *fastabl*
retract_length = 4
printer_model = CR20PRO
printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_CREALITY\nPRINTER_MODEL_CR20PRO\nPRINTER_HAS_BOWDEN

Binary file not shown.

Before

Width:  |  Height:  |  Size: 41 KiB

After

Width:  |  Height:  |  Size: 28 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 43 KiB

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 45 KiB

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 21 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 23 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 55 KiB

After

Width:  |  Height:  |  Size: 40 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 50 KiB

After

Width:  |  Height:  |  Size: 37 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 40 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 47 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 29 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 41 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 49 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 54 KiB

After

Width:  |  Height:  |  Size: 50 KiB

View File

@ -0,0 +1,2 @@
min_slic3r_version = 2.3.0-rc2
0.0.1 Initial Version

View File

@ -0,0 +1,842 @@
# Print profiles for the FLSun Delta printers.
##
# Author: https://github.com/Foxies-CSTL/PrusaSlicer
## Initial PR: https://github.com/prusa3d/PrusaSlicer/pull/5582
[vendor]
# Vendor name will be shown by the Config Wizard.
name = FLSun
# Configuration version of this file. Config file will only be installed, if the config_version differs.
# This means, the server may force the PrusaSlicer configuration to be downgraded.
config_version = 0.0.1
# Where to get the updates from?
config_update_url = https://files.prusa3d.com/wp-content/uploads/repository/PrusaSlicer-settings-master/live/FLSun/
# changelog_url = https://files.prusa3d.com/?latest=slicer-profiles&lng=%1%
# The printer models will be shown by the Configuration Wizard in this order,
# also the first model installed & the first nozzle installed will be activated after install.
# Printer model name will be shown by the installation wizard.
[printer_model:QQSP]
name = FLSun QQS Pro
variants = 0.4; 0.6
technology = FFF
bed_model = QQSP_bed.stl
bed_texture = QQSP.svg
default_materials = Generic PLA @FLSUN; Generic PETG @FLSUN; Generic ABS @FLSUN; Generic SPLA @FLSUN; Generic FLEX @FLSUN
[printer_model:Q5]
name = FLSun Q5
variants = 0.4; 0.6
technology = FFF
bed_model = Q5_bed.stl
bed_texture = Q5.svg
default_materials = Generic PLA @FLSUN; Generic PETG @FLSUN; Generic ABS @FLSUN; Generic SPLA @FLSUN; Generic FLEX @FLSUN
#########################################
###### begin Common print presets #######
#########################################
# Common print preset
[print:*common_flsunq*]
avoid_crossing_perimeters = 1
avoid_crossing_perimeters_max_detour = 0
bottom_solid_min_thickness = 0.5
bridge_acceleration = 800
bridge_angle = 0
bridge_flow_ratio = 0.8
bridge_speed = 30
brim_width = 0
clip_multipart_objects = 1
compatible_printers =
complete_objects = 0
default_acceleration = 800
dont_support_bridges = 1
elefant_foot_compensation = 0.2
ensure_vertical_shell_thickness = 1
external_fill_pattern = rectilinear
external_perimeters_first = 0
external_perimeter_extrusion_width = 0.45
extra_perimeters = 0
extruder_clearance_height = 45
extruder_clearance_radius = 45
extrusion_width = 0.45
fill_angle = 45
fill_density = 15%
fill_pattern = gyroid
first_layer_acceleration = 800
first_layer_extrusion_width = 0.42
first_layer_height = 0.2
first_layer_speed = 20
gap_fill_speed = 40
gcode_comments = 0
infill_acceleration = 800
infill_every_layers = 1
infill_extruder = 1
infill_extrusion_width = 0.45
infill_first = 0
infill_only_where_needed = 0
infill_overlap = 25%
interface_shells = 0
ironing = 0
ironing_flowrate = 15%
ironing_spacing = 0.1
ironing_speed = 15
ironing_type = top
max_print_speed = 200
max_volumetric_extrusion_rate_slope_negative = 0
max_volumetric_extrusion_rate_slope_positive = 0
max_volumetric_speed = 0
min_skirt_length = 4
notes =
overhangs = 1
only_retract_when_crossing_perimeters = 0
ooze_prevention = 0
output_filename_format = {input_filename_base}_{filament_type[0]}_{print_time}.gco
perimeters = 3
perimeter_acceleration = 800
perimeter_extruder = 1
perimeter_extrusion_width = 0.45
perimeter_speed = 45
post_process =
print_settings_id =
raft_layers = 0
resolution = 0
seam_position = nearest
single_extruder_multi_material_priming = 0
skirts = 2
skirt_distance = 5
skirt_height = 1
small_perimeter_speed = 25
solid_infill_below_area = 0
solid_infill_every_layers = 0
solid_infill_extruder = 1
solid_infill_extrusion_width = 0.45
spiral_vase = 0
standby_temperature_delta = -5
support_material = 1
support_material_auto = 0
support_material_extruder = 1
support_material_extrusion_width = 0.38
support_material_interface_extruder = 0
support_material_angle = 0
support_material_buildplate_only = 0
support_material_enforce_layers = 0
support_material_contact_distance = 0.2
support_material_interface_contact_loops = 0
support_material_interface_layers = 2
support_material_interface_spacing = 0.2
support_material_interface_speed = 100%
support_material_pattern = rectilinear
support_material_spacing = 2.5
support_material_speed = 60
support_material_synchronize_layers = 0
support_material_threshold = 45
support_material_with_sheath = 0
support_material_xy_spacing = 60%
thin_walls = 0
top_infill_extrusion_width = 0.4
top_solid_infill_speed = 40
top_solid_min_thickness = 0.6
travel_speed = 150
wipe_tower = 0
wipe_tower_bridging = 10
wipe_tower_rotation_angle = 0
wipe_tower_width = 60
wipe_tower_x = 170
wipe_tower_y = 140
xy_size_compensation = 0
## QQS
[print:*QQSP*]
bridge_acceleration = 1000
default_acceleration = 1500
first_layer_acceleration = 1000
infill_acceleration = 800
max_print_speed = 200
perimeter_acceleration = 800
## Q5
[print:*Q5*]
bridge_acceleration = 1000
default_acceleration = 800
first_layer_acceleration = 800
infill_acceleration = 1000
max_print_speed = 150
perimeter_acceleration = 800
# Print parameters common to a 0.6mm diameter nozzle.
[print:*0.6nozzleFLSUN*]
bridge_acceleration = 1000
bridge_flow_ratio = 0.95
bridge_speed = 25
default_acceleration = 1000
external_perimeter_extrusion_width = 0.65
extrusion_width = 0.65
first_layer_acceleration = 1000
first_layer_extrusion_width = 0.65
fill_density = 15%
fill_pattern = gyroid
infill_acceleration = 1000
infill_extrusion_width = 0.68
perimeter_acceleration = 800
perimeter_extrusion_width = 0.65
solid_infill_extrusion_width = 0.68
support_material_speed = 40
support_material_contact_distance = 0.15
support_material_extrusion_width = 0.55
support_material_xy_spacing = 80%
top_infill_extrusion_width = 0.6
travel_speed = 150
output_filename_format = {input_filename_base}_{nozzle_diameter[0]}n_{filament_type[0]}_{print_time}.gco
# XXXXXXXXXXXXXXXXXXXX
# XXX--- 0.08mm ---XXX
# XXXXXXXXXXXXXXXXXXXX
[print:*0.08mm_flsunq*]
inherits = *common_flsunq*
bottom_solid_layers = 10
bridge_flow_ratio = 0.7
layer_height = 0.08
support_material_contact_distance = 0.06
support_material_spacing = 1.5
top_solid_layers = 12
[print:0.08mm DETAIL @FLSUN]
inherits = *0.08mm_flsunq*; *QQSP*
compatible_printers_condition = printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.4
bridge_acceleration = 200
bridge_speed = 20
external_perimeter_speed = 70%
first_layer_acceleration = 500
first_layer_speed = 40%
gap_fill_speed = 20
infill_acceleration = 800
infill_speed = 40
max_print_speed = 80
perimeter_acceleration = 300
perimeter_speed = 30
small_perimeter_speed = 70%
solid_infill_speed = 95%
support_material_speed = 40
top_solid_infill_speed = 60%
# XXXXXXXXXXXXXXXXXXXX
# XXX--- 0.15mm ---XXX
# XXXXXXXXXXXXXXXXXXXX
[print:*0.15mm_vase_flsunq*]
inherits = *common_flsunq*
avoid_crossing_perimeters = 1
bottom_solid_min_thickness = 0.5
bridge_flow_ratio = 0.9
elefant_foot_compensation = 0.15
ensure_vertical_shell_thickness = 1
external_perimeter_extrusion_width = 0.9
extra_perimeters = 1
extrusion_width = 0.9
first_layer_acceleration = 1000
first_layer_height = 0.3
first_layer_extrusion_width = 0.9
first_layer_speed = 20
fill_density = 0%
infill_extrusion_width = 0.9
ironing = 0
layer_height = 0.15
min_skirt_length = 4
max_print_speed = 100
only_retract_when_crossing_perimeters = 0
perimeters = 1
perimeter_extrusion_width = 0.9
seam_position = aligned
slice_closing_radius = 0.049
solid_infill_extrusion_width = 0.6
spiral_vase = 1
support_material = 0
top_solid_infill_speed = 40%
top_solid_min_thickness = 0.6
thin_walls = 0
top_fill_pattern = rectilinear
top_solid_layers = 0
[print:0.15mm VASE @FLSUN]
inherits = *0.15mm_vase_flsunq*
compatible_printers_condition = printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.4
bottom_solid_layers = 5
external_perimeter_speed = 50%
gap_fill_speed = 40
infill_speed = 100
perimeter_speed = 80
small_perimeter_speed = 25%
solid_infill_speed = 33%
[print:0.15mm VASE SPEED @FLSUN]
inherits = *0.15mm_vase_flsunq*
compatible_printers_condition = printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.4
bridge_speed = 80
bottom_solid_layers = 3
external_perimeter_speed = 60%
gap_fill_speed = 30
infill_speed = 80
perimeter_speed = 90
small_perimeter_speed = 50%
solid_infill_speed = 80%
# XXXXXXXXXXXXXXXXXXXX
# XXX--- 0.16mm ---XXX
# XXXXXXXXXXXXXXXXXXXX
[print:*0.16mm_flsunq*]
inherits = *common_flsunq*
bottom_solid_layers = 5
bridge_flow_ratio = 0.9
layer_height = 0.16
support_material_contact_distance = 0.12
top_solid_layers = 6
[print:0.16mm QUALITY @FLSUN]
inherits = *0.16mm_flsunq*; *QQSP*
compatible_printers_condition = printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.4
external_perimeter_speed = 50%
fill_density = 15%
fill_pattern = gyroid
infill_speed = 80
ironing = 0
perimeter_speed = 90
small_perimeter_speed = 25%
solid_infill_speed = 50%
top_solid_infill_speed = 30%
[print:0.16mm SPEED @FLSUN]
inherits = *0.16mm_flsunq*; *QQSP*
compatible_printers_condition = printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.4
external_perimeter_speed = 50%
infill_speed = 120
perimeter_speed = 60
small_perimeter_speed = 25%
solid_infill_speed = 85%
top_solid_infill_speed = 30%
[print:0.16mm DETAIL @0.6 nozzle FLSUN]
inherits = *0.16mm_flsunq*; *0.6nozzleFLSUN*
# alias = 0.16mm DETAIL
compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_FLSun.*/ and printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.6
external_perimeter_speed = 35
infill_speed = 70
max_print_speed = 80
perimeter_speed = 40
solid_infill_speed = 60
top_solid_infill_speed = 45
infill_extrusion_width = 0.65
solid_infill_extrusion_width = 0.65
# XXXXXXXXXXXXXXXXXXXX
# XXX--- 0.20mm ---XXX
# XXXXXXXXXXXXXXXXXXXX
[print:*0.20mm_flsunq*]
inherits = *common_flsunq*
bottom_solid_layers = 4
bridge_flow_ratio = 0.95
layer_height = 0.20
support_material_contact_distance = 0.2
top_solid_layers = 5
[print:0.20mm QUALITY @FLSUN]
inherits = *0.20mm_flsunq*; *QQSP*
avoid_crossing_perimeters = 1
bridge_speed = 60
compatible_printers_condition = printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.4
external_perimeter_speed = 50%
fill_density = 15%
gap_fill_speed = 30
infill_speed = 80
ironing = 0
ironing_speed = 20
perimeter_speed = 50
small_perimeter_speed = 85%
solid_infill_speed = 90%
thin_walls = 0
top_solid_infill_speed = 50%
[print:0.20mm DETAIL @0.6 nozzle FLSUN]
inherits = *0.20mm_flsunq*; *0.6nozzleFLSUN*
# alias = 0.20mm DETAIL
compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_FLSun.*/ and printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.6
external_perimeter_speed = 35
infill_speed = 70
max_print_speed = 80
perimeter_speed = 45
solid_infill_speed = 60
top_solid_infill_speed = 45
infill_extrusion_width = 0.65
solid_infill_extrusion_width = 0.65
[print:0.20mm SPEED @FLSUN]
inherits = *0.20mm_flsunq*; *QQSP*
compatible_printers_condition = printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.4
external_perimeter_speed = 50
extra_perimeters = 1
first_layer_speed = 35
infill_speed = 90
perimeter_speed = 60
small_perimeter_speed = 50%
solid_infill_speed = 85%
top_solid_infill_speed = 40%
# XXXXXXXXXXXXXXXXXXXX
# XXX--- 0.24mm ---XXX
# XXXXXXXXXXXXXXXXXXXX
[print:*0.24mm_flsunq*]
inherits = *common_flsunq*
bottom_solid_layers = 4
bridge_flow_ratio = 0.95
layer_height = 0.24
support_material_contact_distance = 0.18
top_solid_layers = 4
[print:0.24mm DRAFT @FLSUN]
inherits = *0.24mm_flsunq*; *QQSP*
compatible_printers_condition = printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.4
external_perimeter_speed = 50%
first_layer_speed = 20%
infill_speed = 120
perimeter_speed = 60
small_perimeter_speed = 50%
solid_infill_speed = 95%
top_solid_infill_speed = 50%
# XXXXXXXXXXXXXXXXXXXX
# XXX--- 0.30mm ---XXX
# XXXXXXXXXXXXXXXXXXXX
[print:*0.30mm_flsunq*]
inherits = *common_flsunq*
bottom_solid_layers = 3
bridge_flow_ratio = 0.95
external_perimeter_extrusion_width = 0.6
extrusion_width = 0.5
infill_extrusion_width = 0.5
layer_height = 0.30
perimeter_extrusion_width = 0.5
solid_infill_extrusion_width = 0.5
support_material_contact_distance = 0.22
top_infill_extrusion_width = 0.45
top_solid_layers = 4
[print:0.30mm QUALITY @0.6 nozzle FLSUN]
inherits = *0.30mm_flsunq*; *0.6nozzleFLSUN*
# alias = 0.30mm QUALITY
compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_FLSun.*/ and printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.6
external_perimeter_speed = 35
infill_speed = 90
max_print_speed = 100
perimeter_speed = 45
solid_infill_speed = 65
top_solid_infill_speed = 45
external_perimeter_extrusion_width = 0.68
perimeter_extrusion_width = 0.68
[print:0.30mm SPEED @FLSUN]
inherits = *0.30mm_flsunq*; *QQSP*
compatible_printers_condition = printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.4
external_perimeter_speed = 50%
first_layer_speed = 20%
infill_speed = 120
perimeter_speed = 80
small_perimeter_speed = 50%
solid_infill_speed = 85%
top_solid_infill_speed = 50%
# XXXXXXXXXXXXXXXXXXXX
# XXX--- 0.35mm ---XXX
# XXXXXXXXXXXXXXXXXXXX
[print:*0.35mm_flsunq*]
inherits = *common_flsunq*
bottom_solid_layers = 3
external_perimeter_extrusion_width = 0.6
external_perimeter_speed = 40
first_layer_extrusion_width = 0.75
layer_height = 0.35
perimeter_extrusion_width = 0.65
solid_infill_extrusion_width = 0.65
solid_infill_speed = 60
top_solid_infill_speed = 50
top_solid_layers = 4
[print:0.35mm SPEED @0.6 nozzle FLSUN]
inherits = *0.35mm_flsunq*; *0.6nozzleFLSUN*
# alias = 0.35mm SPEED
compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_FLSun.*/ and printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.6
external_perimeter_speed = 45
infill_speed = 100
max_print_speed = 120
perimeter_speed = 65
solid_infill_speed = 60
top_solid_infill_speed = 45
external_perimeter_extrusion_width = 0.68
perimeter_extrusion_width = 0.68
# XXXXXXXXXXXXXXXXXXXX
# XXX--- 0.40mm ---XXX
# XXXXXXXXXXXXXXXXXXXX
[print:*0.40mm_flsunq*]
inherits = *common_flsunq*
bottom_solid_layers = 3
external_perimeter_extrusion_width = 0.6
external_perimeter_speed = 40
first_layer_extrusion_width = 0.65
infill_acceleration = 2000
infill_speed = 60
layer_height = 0.4
perimeter_acceleration = 800
perimeter_extrusion_width = 0.65
perimeter_speed = 50
solid_infill_extrusion_width = 0.65
solid_infill_speed = 60
top_solid_infill_speed = 40
top_solid_layers = 4
[print:0.40mm DRAFT @0.6 nozzle FLSUN]
inherits = *0.40mm_flsunq*; *0.6nozzleFLSUN*
# alias = 0.40mm DRAFT
compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_FLSun.*/ and printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/ and nozzle_diameter[0]==0.6
external_perimeter_speed = 60
infill_speed = 100
max_print_speed = 120
perimeter_speed = 60
solid_infill_speed = 60
top_solid_infill_speed = 60
external_perimeter_extrusion_width = 0.68
perimeter_extrusion_width = 0.68
infill_extrusion_width = 0.68
solid_infill_extrusion_width = 0.68
#########################################
########### end print presets ###########
#########################################
#########################################
######## begin filament presets #########
#########################################
# Common filament preset
[filament:*common_flsunq*]
cooling = 0
compatible_printers =
compatible_printers_condition = printer_notes=~/.*PRINTER_VENDOR_FLSun.*/ and printer_notes=~/.*PRINTER_MODEL_Q(QSP|5).*/
end_filament_gcode = "; Filament-specific end gcode"
extrusion_multiplier = 1
filament_cost = 0
filament_density = 0
filament_diameter = 1.75
filament_notes = ""
filament_settings_id = ""
filament_soluble = 0
min_fan_speed = 20
min_print_speed = 15
slowdown_below_layer_time = 15
start_filament_gcode = "; Filament gcode\n;M900 K{if nozzle_diameter[0]==0.6}0.12{else}0.22{endif} ; Linear Advance 1.5\n"
[filament:*PLA_flsunq*]
inherits = *common_flsunq*
bed_temperature = 60
bridge_fan_speed = 95
cooling = 1
disable_fan_first_layers = 1
fan_always_on = 1
fan_below_layer_time = 100
filament_colour = #FF3232
filament_density = 1.24
filament_deretract_speed = 30
filament_retract_length = 3
filament_retract_lift = nil
filament_retract_speed = 30
filament_max_volumetric_speed = 10
filament_type = PLA
filament_wipe = nil
first_layer_bed_temperature = 60
first_layer_temperature = 205
max_fan_speed = 90
min_fan_speed = 50
temperature = 200
[filament:*PLA_VASE_flsunq*]
inherits = *PLA_flsunq*
bridge_fan_speed = 100
disable_fan_first_layers = 3
fan_below_layer_time = 60
max_fan_speed = 100
min_fan_speed = 35
min_print_speed = 10
slowdown_below_layer_time = 5
[filament:*SPLA_flsunq*]
inherits = *common_flsunq*
bed_temperature = 80
bridge_fan_speed = 100
cooling = 1
disable_fan_first_layers = 1
fan_always_on = 1
fan_below_layer_time = 100
filament_colour = #008000
filament_density = 1.24
filament_deretract_speed = 70
filament_max_volumetric_speed = 8
filament_retract_length = 7.5
filament_retract_lift = nil
filament_retract_speed = 70
filament_type = PLA
filament_wipe = nil
first_layer_bed_temperature = 80
first_layer_temperature = 230
max_fan_speed = 70
min_fan_speed = 50
temperature = 215
[filament:*PET_flsunq*]
inherits = *common_flsunq*
bed_temperature = 80
bridge_fan_speed = 100
cooling = 1
disable_fan_first_layers = 3
fan_always_on = 1
fan_below_layer_time = 20
filament_colour = #FFFFFF
filament_density = 1.27
filament_deretract_speed = 25
filament_max_volumetric_speed = 8
filament_retract_length = 4
filament_retract_lift = 0.2
filament_retract_speed = 45
filament_type = PETG
filament_wipe = 1
first_layer_bed_temperature =80
first_layer_temperature = 240
max_fan_speed = 50
min_fan_speed = 20
temperature = 230
[filament:*FLEX_flsunq*]
inherits = *common_flsunq*
bed_temperature = 50
bridge_fan_speed = 80
compatible_printers_condition = nozzle_diameter[0]>0.35
cooling = 1
disable_fan_first_layers = 3
extrusion_multiplier = 1.15
fan_always_on = 0
fan_below_layer_time = 100
filament_colour = #0000FF
filament_density = 1.22
filament_deretract_speed = 25
filament_max_volumetric_speed = 1.35
filament_retract_length = 0.8
filament_retract_lift = nil
filament_retract_speed = nil
filament_type = FLEX
filament_wipe = 0
first_layer_bed_temperature = 50
first_layer_temperature = 240
slowdown_below_layer_time = 10
start_filament_gcode = "; Filament gcode\n;M900 K0; Disable Linear Advance 1.5\n"
temperature = 240
[filament:*ABS_flsunq*]
inherits = *common_flsunq*
bed_temperature = 90
bridge_fan_speed = 30
cooling = 0
disable_fan_first_layers = 3
fan_always_on = 0
fan_below_layer_time = 20
filament_colour = #FF8000
filament_density = 1.04
filament_deretract_speed = nil
filament_retract_length = 5
filament_retract_lift = nil
filament_retract_speed = 50
filament_max_volumetric_speed = 10
filament_type = ABS
filament_wipe = nil
first_layer_bed_temperature = 90
first_layer_temperature = 245
max_fan_speed = 0
min_fan_speed = 0
slowdown_below_layer_time = 20
temperature = 245
top_fan_speed = 0
[filament:Generic PLA @FLSUN]
inherits = *PLA_flsunq*
filament_vendor = Generic
[filament:Generic PLA VASE @FLSUN]
inherits = *PLA_VASE_flsunq*
filament_vendor = Generic
[filament:Generic PETG @FLSUN]
inherits = *PET_flsunq*
filament_vendor = Generic
[filament:Generic ABS @FLSUN]
inherits = *ABS_flsunq*
filament_vendor = Generic
[filament:Generic FLEX @FLSUN]
inherits = *FLEX_flsunq*
filament_vendor = Generic
[filament:Generic SPLA @FLSUN]
inherits = *SPLA_flsunq*
filament_vendor = Generic
#########################################
######### end filament presets ##########
#########################################
#########################################
######### begin printer presets #########
#########################################
# Common printer preset
[printer:*common_flsunq*]
printer_technology = FFF
before_layer_gcode = ;BEFORE_LAYER_CHANGE\nG92 E0.0\n;[layer_z]\n\n
between_objects_gcode =
deretract_speed = 40
end_gcode =
extruder_colour = ""
extruder_offset = 0x0
gcode_flavor = marlin
layer_gcode = ;AFTER_LAYER_CHANGE\n;[layer_z]
machine_min_extruding_rate = 0,0
machine_min_travel_rate = 0,0
max_layer_height = 0.32
min_layer_height = 0.08
nozzle_diameter = 0.4
printer_notes =
printer_settings_id =
remaining_times = 0
retract_before_travel = 2
retract_before_wipe = 70%
retract_layer_change = 0
retract_length = 0
retract_length_toolchange = 1
retract_lift = 0
retract_lift_above = 0
retract_lift_below = 0
retract_restart_extra = 0
retract_restart_extra_toolchange = 0
silent_mode = 0
single_extruder_multi_material = 0
start_gcode =
toolchange_gcode =
use_firmware_retraction = 0
use_relative_e_distances = 1
variable_layer_height = 1
wipe = 1
z_offset = 0
default_print_profile = 0.20mm QUALITY @FLSUN
default_filament_profile = Generic PLA @FLSUN
[printer:FLSun QQS Pro]
inherits = *common_flsunq*
bed_shape = 129.505x11.3302,128.025x22.5743,125.57x33.6465,122.16x44.4626,117.82x54.9404,112.583x65,106.49x74.5649,99.5858x83.5624,91.9239x91.9239,83.5624x99.5858,74.5649x106.49,65x112.583,54.9404x117.82,44.4626x122.16,33.6465x125.57,22.5743x128.025,11.3302x129.505,7.9602e-15x130,-11.3302x129.505,-22.5743x128.025,-33.6465x125.57,-44.4626x122.16,-54.9404x117.82,-65x112.583,-74.5649x106.49,-83.5624x99.5858,-91.9239x91.9239,-99.5858x83.5624,-106.49x74.5649,-112.583x65,-117.82x54.9404,-122.16x44.4626,-125.57x33.6465,-128.025x22.5743,-129.505x11.3302,-130x1.59204e-14,-129.505x-11.3302,-128.025x-22.5743,-125.57x-33.6465,-122.16x-44.4626,-117.82x-54.9404,-112.583x-65,-106.49x-74.5649,-99.5858x-83.5624,-91.9239x-91.9239,-83.5624x-99.5858,-74.5649x-106.49,-65x-112.583,-54.9404x-117.82,-44.4626x-122.16,-33.6465x-125.57,-22.5743x-128.025,-11.3302x-129.505,-2.38806e-14x-130,11.3302x-129.505,22.5743x-128.025,33.6465x-125.57,44.4626x-122.16,54.9404x-117.82,65x-112.583,74.5649x-106.49,83.5624x-99.5858,91.9239x-91.9239,99.5858x-83.5624,106.49x-74.5649,112.583x-65,117.82x-54.9404,122.16x-44.4626,125.57x-33.6465,128.025x-22.5743,129.505x-11.3302,130x-3.18408e-14
end_gcode = ; printing object ENDGCODE\nG92 E0.0 ; prepare to retract\nG1 E-6 F3000; retract to avoid stringing\n; Anti-stringing end wiggle\n{if layer_z < max_print_height}G1 Z{min(layer_z+100, max_print_height)}{endif} F4000 ; Move print head up\nG1 X0 Y120 F3000 ; present print\n; Reset print setting overrides\nG92 E0\nM200 D0 ; disable volumetric e\nM220 S100 ; reset speed factor to 100%\nM221 S100 ; reset extruder factor to 100%\n;M900 K0 ; reset linear acceleration(Marlin)\n; Shut down printer\nM104 S0 ; turn off temperature\nM140 S0 ; turn off heatbed\nM107 ; turn off fan\nM18 S180 ;disable motors after 180s\nM300 S40 P10 ; Bip\nM117 Print finish.
machine_max_acceleration_e = 3000,800
machine_max_acceleration_extruding = 1500,800
machine_max_acceleration_retracting = 2000,800
machine_max_acceleration_x = 1500,800
machine_max_acceleration_y = 1500,800
machine_max_acceleration_z = 1500,800
machine_max_feedrate_e = 60,30
machine_max_feedrate_x = 200,150
machine_max_feedrate_y = 200,150
machine_max_feedrate_z = 200,150
machine_max_jerk_e = 5,5
machine_max_jerk_x = 5,10
machine_max_jerk_y = 5,10
machine_max_jerk_z = 5,10
max_print_height = 360
nozzle_diameter = 0.4
printer_model = QQSP
printer_variant = 0.4
printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_FLSun\nPRINTER_MODEL_QQSP\nPRINTER_HAS_BOWDEN\n
retract_length = 5
retract_speed = 30
retract_lift = 0.4
silent_mode = 1
start_gcode = ;STARTGCODE\nM117 Initializing\n; Set coordinate modes\nG90 ; use absolute coordinates\nM83 ; extruder relative mode\n; Reset speed and extrusion rates\nM200 D0 ; disable volumetric E\nM220 S100 ; reset speed\n; Set initial warmup temps\nM117 Nozzle preheat\nM104 S100 ; preheat extruder to no ooze temp\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed final temp\nM300 S40 P10 ; Bip\n; Home\nM117 Homing\nG28 ; home all with default mesh bed level\n; For ABL users put G29 for a leveling request\n; Final warmup routine\nM117 Final warmup\nM104 S[first_layer_temperature] ; set extruder final temp\nM109 S[first_layer_temperature] ; wait for extruder final temp\nM190 S[first_layer_bed_temperature] ; wait for bed final temp\nM300 S440 P200 ; 1st beep for printer ready and allow some time to clean nozzle\nM300 S0 P250 ; wait between dual beep\nM300 S440 P200 ; 2nd beep for printer ready\nG4 S10 ; wait to clean the nozzle\nM300 S440 P200 ; 3rd beep for ready to start printing\n; Prime line routine\nM117 Printing prime line\n;M900 K0; Disable Linear Advance (Marlin) for prime line\nG92 E0.0; reset extrusion distance\nG1 X-54.672 Y-95.203 Z0.3 F4000; go outside print area\nG92 E0.0; reset extrusion distance\nG1 E2 F1000 ; de-retract and push ooze\nG3 X38.904 Y-102.668 I54.672 J95.105 E20.999\nG3 X54.671 Y-95.203 I-38.815 J102.373 E5.45800\nG92 E0.0\nG1 E-5 F3000 ; retract 5mm\nG1 X52.931 Y-96.185 F1000 ; wipe\nG1 X50.985 Y-97.231 F1000 ; wipe\nG1 X49.018 Y-98.238 F1000 ; wipe\nG1 X0 Y-109.798 F1000\nG1 E4.8 F1500; de-retract\nG92 E0.0 ; reset extrusion distance\n; Final print adjustments\nM117 Preparing to print\n;M82 ; extruder absolute mode\nM221 S{if layer_height<0.075}100{else}95{endif}\nM300 S40 P10 ; chirp\nM117 Print [input_filename]; Display: Printing started...
thumbnails = 16x16,260x260
use_relative_e_distances = 1
use_volumetric_e = 0
[printer:FLSun QQS Pro 0.6 nozzle]
inherits = FLSun QQS Pro
printer_variant = 0.6
nozzle_diameter = 0.6
max_layer_height = 0.40
min_layer_height = 0.15
default_print_profile = 0.30mm QUALITY @0.6 nozzle FLSUN
retract_length = 3.5
retract_lift = 0.4
retract_speed = 30
deretract_speed = 40
retract_before_wipe = 70%
retract_before_travel = 1
[printer:FLSun Q5]
inherits = *common_flsunq*
bed_shape = 99.6195x8.71557,98.4808x17.3648,96.5926x25.8819,93.9693x34.202,90.6308x42.2618,86.6025x50,81.9152x57.3576,76.6044x64.2788,70.7107x70.7107,64.2788x76.6044,57.3576x81.9152,50x86.6025,42.2618x90.6308,34.202x93.9693,25.8819x96.5926,17.3648x98.4808,8.71557x99.6195,6.12323e-15x100,-8.71557x99.6195,-17.3648x98.4808,-25.8819x96.5926,-34.202x93.9693,-42.2618x90.6308,-50x86.6025,-57.3576x81.9152,-64.2788x76.6044,-70.7107x70.7107,-76.6044x64.2788,-81.9152x57.3576,-86.6025x50,-90.6308x42.2618,-93.9693x34.202,-96.5926x25.8819,-98.4808x17.3648,-99.6195x8.71557,-100x1.22465e-14,-99.6195x-8.71557,-98.4808x-17.3648,-96.5926x-25.8819,-93.9693x-34.202,-90.6308x-42.2618,-86.6025x-50,-81.9152x-57.3576,-76.6044x-64.2788,-70.7107x-70.7107,-64.2788x-76.6044,-57.3576x-81.9152,-50x-86.6025,-42.2618x-90.6308,-34.202x-93.9693,-25.8819x-96.5926,-17.3648x-98.4808,-8.71557x-99.6195,-1.83697e-14x-100,8.71557x-99.6195,17.3648x-98.4808,25.8819x-96.5926,34.202x-93.9693,42.2618x-90.6308,50x-86.6025,57.3576x-81.9152,64.2788x-76.6044,70.7107x-70.7107,76.6044x-64.2788,81.9152x-57.3576,86.6025x-50,90.6308x-42.2618,93.9693x-34.202,96.5926x-25.8819,98.4808x-17.3648,99.6195x-8.71557,100x-2.44929e-14
end_gcode = M107\nM104 S0\nM140 S0\nG92 E1\nG1 E-1 F300\nG28 X0 Y0\n;M84\nM18 S180 ;disable motors after 180s\n
machine_max_acceleration_e = 3000
machine_max_acceleration_extruding = 1500
machine_max_acceleration_retracting = 2000
machine_max_acceleration_x = 1500
machine_max_acceleration_y = 1500
machine_max_acceleration_z = 1500
machine_max_feedrate_e = 60
machine_max_feedrate_x = 200
machine_max_feedrate_y = 200
machine_max_feedrate_z = 200
machine_max_jerk_e = 5
machine_max_jerk_x = 5
machine_max_jerk_y = 5
machine_max_jerk_z = 5
max_print_height = 200
nozzle_diameter = 0.4
printer_model = Q5
printer_variant = 0.4
printer_notes = Don't remove the following keywords! These keywords are used in the "compatible printer" condition of the print and filament profiles to link the particular print and filament profiles to this printer profile.\nPRINTER_VENDOR_FLSun\nPRINTER_MODEL_Q5\nPRINTER_HAS_BOWDEN\n
retract_length = 3
retract_lift = 0.3
start_gcode = ;STARTGCODE\nM117 Initializing\n; G90 ; use absolute coordinates\nM83 ; extruder relative mode\nM107\nG28 ;Home\nM140 S[first_layer_bed_temperature] ; set bed temp\nM190 S[first_layer_bed_temperature] ; wait for bed temp\nM104 S[first_layer_temperature] ; set extruder temp\nM109 S[first_layer_temperature] ; wait for extruder temp\n\nG92 E0\nG1 X-98 Y0 Z0.2 F4000 ; move to arc start\nG3 X0 Y-98 I98 Z0.2 E40 F400 ; lay arc stripe 90deg\nG0 Z1 \nG92 E0.0\n
thumbnails = 16x16,200x200
use_relative_e_distances = 1
use_volumetric_e = 0
[printer:FLSun Q5 0.6 nozzle]
inherits = FLSun Q5
printer_variant = 0.6
nozzle_diameter = 0.6
max_layer_height = 0.40
min_layer_height = 0.15
default_print_profile = 0.30mm QUALITY @0.6 nozzle FLSUN
retract_length = 3
retract_lift = 0.4
retract_speed = 50
deretract_speed = 40
retract_before_wipe = 0
retract_before_travel = 1
#########################################
####### end common print presets ########
#########################################

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

File diff suppressed because one or more lines are too long

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

View File

@ -1,2 +1,4 @@
min_slic3r_version = 2.3.0-beta2
0.0.2 Removed obsolete host keys
min_slic3r_version = 2.2.0-alpha3
0.0.1 Initial version

View File

@ -3,7 +3,7 @@
[vendor]
# Vendor name will be shown by the Config Wizard.
name = LulzBot
config_version = 0.0.1
config_version = 0.0.2
config_update_url = https://files.prusa3d.com/wp-content/uploads/repository/PrusaSlicer-settings-master/live/LulzBot/
[printer_model:MINI_AERO]
@ -257,7 +257,6 @@ extruder_colour = ""
extruder_offset = 0x0
gcode_flavor = marlin
high_current_on_filament_swap = 0
host_type = octoprint
inherits =
layer_gcode =
machine_max_acceleration_e = 10000,5000
@ -281,10 +280,7 @@ max_print_height = 158
min_layer_height = 0.07
nozzle_diameter = 0.5
parking_pos_retraction = 92
print_host =
printer_notes = LulzBot Mini w/ Aerostruder profile for Delaware Library System, Rt9 Library and Innovation Center.
printhost_apikey =
printhost_cafile =
remaining_times = 0
retract_before_travel = 2
retract_before_wipe = 0%
@ -297,8 +293,6 @@ retract_lift_below = 0
retract_restart_extra = 0
retract_restart_extra_toolchange = 0
retract_speed = 40
serial_port =
serial_speed = 250000
silent_mode = 0
single_extruder_multi_material = 0
start_gcode = ;This G-Code has been generated specifically for the LulzBot Mini with Aerosturder\nM73 P0 ; clear GLCD progress bar\nM75 ; start GLCD timer\nG26 ; clear potential 'probe fail' condition\nM107 ; disable fans\nM420 S0 ; disable leveling matrix\nG90 ; absolute positioning\nM82 ; set extruder to absolute mode\nG92 E0 ; set extruder position to 0\nM140 S{first_layer_bed_temperature[0]} ; start bed heating up\nG28; home all axes\nG0 X0 Y187 Z156 F200 ; move away from endstops\nM109 R{first_layer_temperature[0] - 60} ; soften filament before retraction\n;G1 E-15 F75 ; retract filament (LulzBot Cura is apparently trying to cold pull, might be a contributing factor to hob gear filling with filament)\nM109 R{first_layer_temperature[0] - 60} ; wait for extruder to reach wiping temp\nG1 X45 Y173 F11520 ; move above wiper pad\nG1 Z0 F1200 ; push nozzle into wiper\nG1 X42 Y173 Z-.5 F4000 ; wiping\nG1 X52 Y171 Z-.5 F4000 ; wiping\nG1 X42 Y173 Z0 F4000 ; wiping\nG1 X52 Y171 F4000 ; wiping\nG1 X42 Y173 F4000 ; wiping\nG1 X52 Y171 F4000 ; wiping\nG1 X42 Y173 F4000 ; wiping\nG1 X52 Y171 F4000 ; wiping\nG1 X57 Y173 F4000 ; wiping\nG1 X77 Y171 F4000 ; wiping\nG1 X57 Y173 F4000 ; wiping\nG1 X77 Y171 F4000 ; wiping\nG1 X57 Y173 F4000 ; wiping\nG1 X87 Y171 F4000 ; wiping\nG1 X77 Y173 F4000 ; wiping\nG1 X97 Y171 F4000 ; wiping\nG1 X77 Y173 F4000 ; wiping\nG1 X97 Y171 F4000 ; wiping\nG1 X77 Y173 F4000 ; wiping\nG1 X97 Y171 F4000 ; wiping\nG1 X107 Y173 F4000 ; wiping\nG1 X97 Y171 F4000 ; wiping\nG1 X107 Y173 F4000 ; wiping\nG1 X97 Y171 F4000 ; wiping\nG1 X107 Y173 F4000 ; wiping\nG1 X112 Y171 Z-0.5 F1000 ; wiping\nG1 Z10 ; raise extruder\nG28 X0 Y0 ; home X and Y\nG0 X0 Y187 F200 ; move away from endstops\nM109 R{first_layer_temperature[0] - 60} ; wait for extruder to reach probe temp\nM204 S300 ; set probing acceleration\nG29 ; start auto-leveling sequence\nM420 S1 ; enable leveling matrix\nM425 Z ; use measured Z backlash for compensation\nM425 Z F0 ; turn off measured Z backlash compensation. (if activated in the quality settings, this command will automatically be ignored)\nM204 S2000 ; restore standard acceleration\nG28 X0 Y0 ; re-home to account for build variance of earlier mini builds\nG0 X0 Y187 F200 ; move away from endstops\nG0 Y152 F4000 ; move in front of wiper pad\nG4 S1 ; pause\nM400 ; wait for moves to finish\nM117 Heating... ; progress indicator message on LCD\nM109 R{first_layer_temperature[0]} ; wait for extruder to reach printing temp\nM190 R{first_layer_bed_temperature[0]} ; wait for bed to reach printing temp\nG1 Z2 E0 F75 ; prime tiny bit of filament into the nozzle\nM117 Mini Printing... ; progress indicator message on LCD\nM221 S74 ; Printer specific extrusion modifier.
@ -328,7 +322,6 @@ extruder_colour = ""
extruder_offset = 0x0
gcode_flavor = marlin
high_current_on_filament_swap = 0
host_type = octoprint
inherits =
layer_gcode =
machine_max_acceleration_e = 1000,5000
@ -352,11 +345,8 @@ max_print_height = 250
min_layer_height = 0.07
nozzle_diameter = 0.5
parking_pos_retraction = 92
print_host =
printer_notes = LulzBot Taz 6 w/ Aerostruder profile for Delaware Library System, Rt9 Library and Innovation Center.
printer_technology = FFF
printhost_apikey =
printhost_cafile =
remaining_times = 0
retract_before_travel = 2
retract_before_wipe = 0%
@ -369,8 +359,6 @@ retract_lift_below = 0
retract_restart_extra = 0
retract_restart_extra_toolchange = 0
retract_speed = 40
serial_port =
serial_speed = 250000
silent_mode = 0
single_extruder_multi_material = 0
start_gcode = ;This G-Code has been generated specifically for the LulzBot TAZ 6 with Aerosturder\nM73 P0 ; clear GLCD progress bar\nM75 ; start GLCD timer\nG26 ; clear potential 'probe fail' condition\nM107 ; disable fans\nM420 S0 ; disable leveling matrix\nG90 ; absolute positioning\nM82 ; set extruder to absolute mode\nG92 E0 ; set extruder position to 0\nM140 S{first_layer_bed_temperature[0]} ; start bed heating up\nG28 XY ; home X and Y\nG1 X-19 Y258 F1000 ; move to safe homing position\nM109 R{first_layer_temperature[0] - 60} ; soften filament before homing Z\nG28 Z ; home Z\nG1 E-15 F100 ; retract filament\nM109 R{first_layer_temperature[0] - 60} ; wait for extruder to reach wiping temp\nG1 X-15 Y100 F3000 ; move above wiper pad\nG1 Z1 ; push nozzle into wiper\nG1 X-17 Y95 F1000 ; slow wipe\nG1 X-17 Y90 F1000 ; slow wipe\nG1 X-17 Y85 F1000 ; slow wipe\nG1 X-15 Y90 F1000 ; slow wipe\nG1 X-17 Y80 F1000 ; slow wipe\nG1 X-15 Y95 F1000 ; slow wipe\nG1 X-17 Y75 F2000 ; fast wipe\nG1 X-15 Y65 F2000 ; fast wipe\nG1 X-17 Y70 F2000 ; fast wipe\nG1 X-15 Y60 F2000 ; fast wipe\nG1 X-17 Y55 F2000 ; fast wipe\nG1 X-15 Y50 F2000 ; fast wipe\nG1 X-17 Y40 F2000 ; fast wipe\nG1 X-15 Y45 F2000 ; fast wipe\nG1 X-17 Y35 F2000 ; fast wipe\nG1 X-15 Y40 F2000 ; fast wipe\nG1 X-17 Y70 F2000 ; fast wipe\nG1 X-15 Y30 Z2 F2000 ; fast wipe\nG1 X-17 Y35 F2000 ; fast wipe\nG1 X-15 Y25 F2000 ; fast wipe\nG1 X-17 Y30 F2000 ; fast wipe\nG1 X-15 Y25 Z1.5 F1000 ; slow wipe\nG1 X-17 Y23 F1000 ; slow wipe\nG1 Z10 ; raise extruder\nM109 R{first_layer_temperature[0] - 60} ; wait for extruder to reach probe temp\nG1 X-9 Y-9 ; move above first probe point\nM204 S100 ; set probing acceleration\nG29 ; start auto-leveling sequence\nM420 S1 ; enable leveling matrix\nM425 Z ; use measured Z backlash for compensation\nM425 Z F0 ; turn off measured Z backlash compensation. (if activated in the quality settings, this command will automatically be ignored)\nM204 S500 ; restore standard acceleration\nG1 X0 Y0 Z15 F5000 ; move up off last probe point\nG4 S1 ; pause\nM400 ; wait for moves to finish\nM117 Heating... ; progress indicator message on LCD\nM109 R{first_layer_temperature[0]} ; wait for extruder to reach printing temp\nM190 R{first_layer_bed_temperature[0]} ; wait for bed to reach printing temp\nG1 Z2 E0 F75 ; prime tiny bit of filament into the nozzle\nM117 TAZ 6 Printing... ; progress indicator message on LCD\n

Binary file not shown.

Before

Width:  |  Height:  |  Size: 46 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 42 KiB

View File

@ -1,4 +1,17 @@
min_slic3r_version = 2.3.0-rc1
1.2.2 Added Prusament PVB filament profile. Added 0.8mm nozzle profiles.
1.2.1 Updated FW version for MK2.5 family printers.
1.2.0 Added full_fan_speed_layer value for PETG. Increased support interface spacing for 0.6mm nozzle profiles. Updated firmware version.
min_slic3r_version = 2.3.0-beta2
1.2.0-beta1 Updated end g-code. Added full_fan_speed_layer values.
min_slic3r_version = 2.3.0-beta0
1.2.0-beta0 Adjusted infill anchor limits. Added filament spool weights.
min_slic3r_version = 2.3.0-alpha4
1.2.0-alpha1 Renamed MK3S and MINI printer profiles. Updated end g-code (MINI). Added new SLA materials and filament profiles.
1.2.0-alpha0 Added filament spool weights
min_slic3r_version = 2.2.0-alpha3
1.1.12 Added Prusament PVB filament profile. Added 0.8mm nozzle profiles.
1.1.11 Renamed MK3S and MINI printer profiles. Updated end g-code (MINI). Added new SLA materials and filament profiles.
1.1.10 Updated firmware version.
1.1.9 Updated K values in filament profiles (linear advance). Added new filament profiles and SLA materials.
1.1.8 Updated start/end g-code scripts for MK3 family printer profiles (reduced extruder motor current for some print profiles). Added new filament and SLA material profiles.

File diff suppressed because it is too large Load Diff

View File

@ -1,3 +1,8 @@
min_slic3r_version = 2.3.0-alpha3
0.0.6 Added material TPU 93A (SMARTFIL)
0.0.5 Removed obsolete host keys.
0.0.4 Added PLA, PETG profiles for 0.8 nozzle, update print materials
0.0.3 Added DeltiQ 2, DeltiQ 2 Plus printers, 0.10mm, 0.20mm FLEX print profiles, updated print materials, flexprint extension support
min_slic3r_version = 2.3.0-alpha0
0.0.2 Added 0.15mm print profile
0.0.1 Initial TriLAB bundle

File diff suppressed because it is too large Load Diff

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 36 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

View File

@ -16,8 +16,10 @@ struct SlopeDetection
uniform vec4 uniform_color;
uniform SlopeDetection slope;
uniform sampler2D environment_tex;
uniform bool use_environment_tex;
#ifdef ENABLE_ENVIRONMENT_MAP
uniform sampler2D environment_tex;
uniform bool use_environment_tex;
#endif // ENABLE_ENVIRONMENT_MAP
varying vec3 clipping_planes_dots;
@ -42,8 +44,10 @@ void main()
vec3 color = slope.actived ? slope_color() : uniform_color.rgb;
// if the fragment is outside the print volume -> use darker color
color = (any(lessThan(delta_box_min, ZERO)) || any(greaterThan(delta_box_max, ZERO))) ? mix(color, ZERO, 0.3333) : color;
#ifdef ENABLE_ENVIRONMENT_MAP
if (use_environment_tex)
gl_FragColor = vec4(0.45 * texture2D(environment_tex, normalize(eye_normal).xy * 0.5 + 0.5).xyz + 0.8 * color * intensity.x, uniform_color.a);
else
#endif
gl_FragColor = vec4(vec3(intensity.y) + color * intensity.x, uniform_color.a);
}

View File

@ -1,11 +1,22 @@
#version 110
uniform bool use_fixed_screen_size;
uniform float zoom;
uniform float point_size;
uniform float near_plane_height;
float fixed_screen_size()
{
return point_size;
}
float fixed_world_size()
{
return (gl_Position.w == 1.0) ? zoom * near_plane_height * point_size : near_plane_height * point_size / gl_Position.w;
}
void main()
{
gl_Position = ftransform();
gl_PointSize = (gl_Position.w == 1.0) ? zoom * near_plane_height * point_size : near_plane_height * point_size / gl_Position.w;
gl_PointSize = use_fixed_screen_size ? fixed_screen_size() : fixed_world_size();
}

View File

@ -1,11 +1,22 @@
#version 120
uniform bool use_fixed_screen_size;
uniform float zoom;
uniform float point_size;
uniform float near_plane_height;
float fixed_screen_size()
{
return point_size;
}
float fixed_world_size()
{
return (gl_Position.w == 1.0) ? zoom * near_plane_height * point_size : near_plane_height * point_size / gl_Position.w;
}
void main()
{
gl_Position = ftransform();
gl_PointSize = (gl_Position.w == 1.0) ? zoom * near_plane_height * point_size : near_plane_height * point_size / gl_Position.w;
gl_PointSize = use_fixed_screen_size ? fixed_screen_size() : fixed_world_size();
}

View File

@ -249,5 +249,5 @@ else ()
install(TARGETS PrusaSlicer RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}")
# Install the symlink for gcodeviewer
install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink prusa-slicer prusa-gcodeviewer WORKING_DIRECTORY ${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR})")
install(CODE "execute_process(COMMAND ${CMAKE_COMMAND} -E create_symlink prusa-slicer prusa-gcodeviewer WORKING_DIRECTORY \$ENV{DESTDIR}/${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_BINDIR})")
endif ()

View File

@ -28,12 +28,14 @@
#include <boost/nowide/cenv.hpp>
#include <boost/nowide/iostream.hpp>
#include <boost/nowide/integration/filesystem.hpp>
#include <boost/dll/runtime_symbol_info.hpp>
#include "unix/fhs.hpp" // Generated by CMake from ../platform/unix/fhs.hpp.in
#include "libslic3r/libslic3r.h"
#include "libslic3r/Config.hpp"
#include "libslic3r/Geometry.hpp"
#include "libslic3r/GCode/PostProcessor.hpp"
#include "libslic3r/Model.hpp"
#include "libslic3r/ModelArrange.hpp"
#include "libslic3r/Print.hpp"
@ -138,7 +140,6 @@ int CLI::run(int argc, char **argv)
m_print_config.apply(config);
}
#if ENABLE_GCODE_VIEWER
// are we starting as gcodeviewer ?
for (auto it = m_actions.begin(); it != m_actions.end(); ++it) {
if (*it == "gcodeviewer") {
@ -148,21 +149,14 @@ int CLI::run(int argc, char **argv)
break;
}
}
#endif // ENABLE_GCODE_VIEWER
// Read input file(s) if any.
#if ENABLE_GCODE_VIEWER
for (const std::string& file : m_input_files) {
std::string ext = boost::filesystem::path(file).extension().string();
if (ext == ".gcode" || ext == ".g") {
if (boost::filesystem::exists(file)) {
start_as_gcodeviewer = true;
break;
}
for (const std::string& file : m_input_files)
if (is_gcode_file(file) && boost::filesystem::exists(file)) {
start_as_gcodeviewer = true;
break;
}
}
if (!start_as_gcodeviewer) {
#endif // ENABLE_GCODE_VIEWER
for (const std::string& file : m_input_files) {
if (!boost::filesystem::exists(file)) {
boost::nowide::cerr << "No such file: " << file << std::endl;
@ -195,9 +189,7 @@ int CLI::run(int argc, char **argv)
}
m_models.push_back(model);
}
#if ENABLE_GCODE_VIEWER
}
#endif // ENABLE_GCODE_VIEWER
// Apply command line options to a more specific DynamicPrintConfig which provides normalize()
// (command line options override --load files)
@ -489,6 +481,12 @@ int CLI::run(int argc, char **argv)
if (printer_technology == ptFFF) {
for (auto* mo : model.objects)
fff_print.auto_assign_extruders(mo);
} else {
// The default for "output_filename_format" is good for FDM: "[input_filename_base].gcode"
// Replace it with a reasonable SLA default.
std::string &format = m_print_config.opt_string("output_filename_format", true);
if (format == static_cast<const ConfigOptionString*>(m_print_config.def()->get("output_filename_format")->default_value.get())->value)
format = "[input_filename_base].SL1";
}
print->apply(model, m_print_config);
std::string err = print->validate();
@ -504,11 +502,7 @@ int CLI::run(int argc, char **argv)
print->process();
if (printer_technology == ptFFF) {
// The outfile is processed by a PlaceholderParser.
#if ENABLE_GCODE_VIEWER
outfile = fff_print.export_gcode(outfile, nullptr, nullptr);
#else
outfile = fff_print.export_gcode(outfile, nullptr);
#endif // ENABLE_GCODE_VIEWER
outfile_final = fff_print.print_statistics().finalize_output_path(outfile);
} else {
outfile = sla_print.output_filepath(outfile);
@ -523,6 +517,8 @@ int CLI::run(int argc, char **argv)
}
outfile = outfile_final;
}
// Run the post-processing scripts if defined.
run_post_process_scripts(outfile, fff_print.full_print_config());
boost::nowide::cout << "Slicing result exported to " << outfile << std::endl;
} catch (const std::exception &ex) {
boost::nowide::cerr << ex.what() << std::endl;
@ -559,11 +555,6 @@ int CLI::run(int argc, char **argv)
<< " (" << print.total_extruded_volume()/1000 << "cm3)" << std::endl;
*/
}
#if !ENABLE_GCODE_VIEWER
} else if (opt_key == "gcodeviewer") {
start_gui = true;
start_as_gcodeviewer = true;
#endif // !ENABLE_GCODE_VIEWER
} else {
boost::nowide::cerr << "error: option not supported yet: " << opt_key << std::endl;
return 1;
@ -604,7 +595,9 @@ bool CLI::setup(int argc, char **argv)
}
}
boost::filesystem::path path_to_binary = boost::filesystem::system_complete(argv[0]);
// See Invoking prusa-slicer from $PATH environment variable crashes #5542
// boost::filesystem::path path_to_binary = boost::filesystem::system_complete(argv[0]);
boost::filesystem::path path_to_binary = boost::dll::program_location();
// Path from the Slic3r binary to its resources.
#ifdef __APPLE__

View File

@ -8,3 +8,5 @@ Customized with the following commits:
042880ba2df913916b2cc77f7bb677e07bfd2c58
67c55c74901f1d337ef08f2090a87cfb4263bb0f
a94c952b40d36b1505fb77b87c0dd739e1034659
3ca3a544a87cc569b69351a77996c287763388a5
6586a46ea23e86d54d228c55c63ca55680d25d56

View File

@ -113,14 +113,16 @@ namespace ImGui
const char PrinterSlaIconMarker = 0x6;
const char FilamentIconMarker = 0x7;
const char MaterialIconMarker = 0x8;
const char CloseIconMarker = 0xB;
const char CloseIconHoverMarker = 0xC;
const char CloseNotifButton = 0xB;
const char CloseNotifHoverButton = 0xC;
// const char TimerDotMarker = 0xE;
// const char TimerDotEmptyMarker = 0xF;
const char MinimalizeMarker = 0xE;
const char MinimalizeHoverMarker = 0xF;
const char MinimalizeButton = 0xE;
const char MinimalizeHoverButton = 0xF;
const char WarningMarker = 0x10;
const char ErrorMarker = 0x11;
const char EjectButton = 0x12;
const char EjectHoverButton = 0x13;
// void MyFunction(const char* name, const MyMatrix44& v);
}

View File

@ -741,6 +741,10 @@ public:
return impl_.getResult();
}
inline int lastPackedBinId() const {
return impl_.lastPackedBinId();
}
void clear() { impl_.clear(); }
};
@ -862,6 +866,10 @@ public:
{
return selector_.getResult();
}
inline int lastPackedBinId() const {
return selector_.lastPackedBinId();
}
};
}

View File

@ -167,6 +167,8 @@ struct NfpPConfig {
const ItemGroup& // remaining items
)> before_packing;
std::function<void(const ItemGroup &, NfpPConfig &config)> on_preload;
NfpPConfig(): rotations({0.0, Pi/2.0, Pi, 3*Pi/2}),
alignment(Alignment::CENTER), starting_point(Alignment::CENTER) {}
};
@ -479,13 +481,18 @@ class _NofitPolyPlacer: public PlacerBoilerplate<_NofitPolyPlacer<RawShape, TBin
using MaxNfpLevel = nfp::MaxNfpLevel<RawShape>;
// Norming factor for the optimization function
const double norm_;
public:
using Pile = nfp::Shapes<RawShape>;
private:
// Norming factor for the optimization function
const double norm_;
Pile merged_pile_;
public:
inline explicit _NofitPolyPlacer(const BinType& bin):
Base(bin),
norm_(std::sqrt(sl::area(bin)))
@ -572,6 +579,12 @@ public:
Base::clearItems();
}
void preload(const ItemGroup& packeditems) {
Base::preload(packeditems);
if (config_.on_preload)
config_.on_preload(packeditems, config_);
}
private:
using Shapes = TMultiShape<RawShape>;
@ -616,135 +629,9 @@ private:
template<class Level>
Shapes calcnfp(const Item &trsh, Level)
{ // Function for arbitrary level of nfp implementation
using namespace nfp;
Shapes nfps;
auto& orb = trsh.transformedShape();
bool orbconvex = trsh.isContourConvex();
for(Item& sh : items_) {
nfp::NfpResult<RawShape> subnfp;
auto& stat = sh.transformedShape();
if(sh.isContourConvex() && orbconvex)
subnfp = nfp::noFitPolygon<NfpLevel::CONVEX_ONLY>(stat, orb);
else if(orbconvex)
subnfp = nfp::noFitPolygon<NfpLevel::ONE_CONVEX>(stat, orb);
else
subnfp = nfp::noFitPolygon<Level::value>(stat, orb);
correctNfpPosition(subnfp, sh, trsh);
nfps = nfp::merge(nfps, subnfp.first);
}
return nfps;
}
// Very much experimental
void repack(Item& item, PackResult& result) {
if((sl::area(bin_) - this->filledArea()) >= item.area()) {
auto prev_func = config_.object_function;
unsigned iter = 0;
ItemGroup backup_rf = items_;
std::vector<Item> backup_cpy;
for(Item& itm : items_) backup_cpy.emplace_back(itm);
auto ofn = [this, &item, &result, &iter, &backup_cpy, &backup_rf]
(double ratio)
{
auto& bin = bin_;
iter++;
config_.object_function = [bin, ratio](
nfp::Shapes<RawShape>& pile,
const Item& item,
const ItemGroup& /*remaining*/)
{
pile.emplace_back(item.transformedShape());
auto ch = sl::convexHull(pile);
auto pbb = sl::boundingBox(pile);
pile.pop_back();
double parea = 0.5*(sl::area(ch) + sl::area(pbb));
double pile_area = std::accumulate(
pile.begin(), pile.end(), item.area(),
[](double sum, const RawShape& sh){
return sum + sl::area(sh);
});
// The pack ratio -- how much is the convex hull occupied
double pack_rate = (pile_area)/parea;
// ratio of waste
double waste = 1.0 - pack_rate;
// Score is the square root of waste. This will extend the
// range of good (lower) values and shrink the range of bad
// (larger) values.
auto wscore = std::sqrt(waste);
auto ibb = item.boundingBox();
auto bbb = sl::boundingBox(bin);
auto c = ibb.center();
double norm = 0.5*pl::distance(bbb.minCorner(),
bbb.maxCorner());
double dscore = pl::distance(c, pbb.center()) / norm;
return ratio*wscore + (1.0 - ratio) * dscore;
};
auto bb = sl::boundingBox(bin);
double norm = bb.width() + bb.height();
auto items = items_;
clearItems();
auto it = items.begin();
while(auto pr = _trypack(*it++)) {
this->accept(pr); if(it == items.end()) break;
}
auto count_diff = items.size() - items_.size();
double score = count_diff;
if(count_diff == 0) {
result = _trypack(item);
if(result) {
std::cout << "Success" << std::endl;
score = 0.0;
} else {
score += result.overfit() / norm;
}
} else {
result = PackResult();
items_ = backup_rf;
for(unsigned i = 0; i < items_.size(); i++) {
items_[i].get() = backup_cpy[i];
}
}
std::cout << iter << " repack result: " << score << " "
<< ratio << " " << count_diff << std::endl;
return score;
};
opt::StopCriteria stopcr;
stopcr.max_iterations = 30;
stopcr.stop_score = 1e-20;
opt::TOptimizer<opt::Method::L_SUBPLEX> solver(stopcr);
solver.optimize_min(ofn, opt::initvals(0.5),
opt::bound(0.0, 1.0));
// optimize
config_.object_function = prev_func;
}
// TODO: implement
return {};
}
struct Optimum {
@ -784,19 +671,80 @@ private:
remlist.insert(remlist.end(), remaining.from, remaining.to);
}
double global_score = std::numeric_limits<double>::max();
auto initial_tr = item.translation();
auto initial_rot = item.rotation();
Vertex final_tr = {0, 0};
Radians final_rot = initial_rot;
Shapes nfps;
auto& bin = bin_;
double norm = norm_;
auto pbb = sl::boundingBox(merged_pile_);
auto binbb = sl::boundingBox(bin);
// This is the kernel part of the object function that is
// customizable by the library client
std::function<double(const Item&)> _objfunc;
if(config_.object_function) _objfunc = config_.object_function;
else {
// Inside check has to be strict if no alignment was enabled
std::function<double(const Box&)> ins_check;
if(config_.alignment == Config::Alignment::DONT_ALIGN)
ins_check = [&binbb, norm](const Box& fullbb) {
double ret = 0;
if(!sl::isInside(fullbb, binbb))
ret += norm;
return ret;
};
else
ins_check = [&bin](const Box& fullbb) {
double miss = overfit(fullbb, bin);
miss = miss > 0? miss : 0;
return std::pow(miss, 2);
};
_objfunc = [norm, binbb, pbb, ins_check](const Item& item)
{
auto ibb = item.boundingBox();
auto fullbb = sl::boundingBox(pbb, ibb);
double score = pl::distance(ibb.center(),
binbb.center());
score /= norm;
score += ins_check(fullbb);
return score;
};
}
if(items_.empty()) {
setInitialPosition(item);
auto best_tr = item.translation();
auto best_rot = item.rotation();
best_overfit = overfit(item.transformedShape(), bin_);
for(auto rot : config_.rotations) {
item.translation(initial_tr);
item.rotation(initial_rot + rot);
setInitialPosition(item);
double of = 0.;
if ((of = overfit(item.transformedShape(), bin_)) < best_overfit) {
best_overfit = of;
best_tr = item.translation();
best_rot = item.rotation();
}
}
can_pack = best_overfit <= 0;
item.rotation(best_rot);
item.translation(best_tr);
} else {
double global_score = std::numeric_limits<double>::max();
auto initial_tr = item.translation();
auto initial_rot = item.rotation();
Vertex final_tr = {0, 0};
Radians final_rot = initial_rot;
Shapes nfps;
Pile merged_pile = merged_pile_;
for(auto rot : config_.rotations) {
@ -822,57 +770,6 @@ private:
ecache.back().accuracy(config_.accuracy);
}
Shapes pile;
pile.reserve(items_.size()+1);
// double pile_area = 0;
for(Item& mitem : items_) {
pile.emplace_back(mitem.transformedShape());
// pile_area += mitem.area();
}
auto merged_pile = nfp::merge(pile);
auto& bin = bin_;
double norm = norm_;
auto pbb = sl::boundingBox(merged_pile);
auto binbb = sl::boundingBox(bin);
// This is the kernel part of the object function that is
// customizable by the library client
std::function<double(const Item&)> _objfunc;
if(config_.object_function) _objfunc = config_.object_function;
else {
// Inside check has to be strict if no alignment was enabled
std::function<double(const Box&)> ins_check;
if(config_.alignment == Config::Alignment::DONT_ALIGN)
ins_check = [&binbb, norm](const Box& fullbb) {
double ret = 0;
if(!sl::isInside(fullbb, binbb))
ret += norm;
return ret;
};
else
ins_check = [&bin](const Box& fullbb) {
double miss = overfit(fullbb, bin);
miss = miss > 0? miss : 0;
return std::pow(miss, 2);
};
_objfunc = [norm, binbb, pbb, ins_check](const Item& item)
{
auto ibb = item.boundingBox();
auto fullbb = sl::boundingBox(pbb, ibb);
double score = pl::distance(ibb.center(),
binbb.center());
score /= norm;
score += ins_check(fullbb);
return score;
};
}
// Our object function for placement
auto rawobjfunc = [_objfunc, iv, startpos]
(Vertex v, Item& itm)
@ -1045,6 +942,7 @@ private:
if(can_pack) {
ret = PackResult(item);
merged_pile_ = nfp::merge(merged_pile_, item.transformedShape());
} else {
ret = PackResult(best_overfit);
}
@ -1075,10 +973,9 @@ private:
if(items_.empty() ||
config_.alignment == Config::Alignment::DONT_ALIGN) return;
nfp::Shapes<RawShape> m;
m.reserve(items_.size());
for(Item& item : items_) m.emplace_back(item.transformedShape());
auto&& bb = sl::boundingBox(m);
Box bb = items_.front().get().boundingBox();
for(Item& item : items_)
bb = sl::boundingBox(item.boundingBox(), bb);
Vertex ci, cb;

View File

@ -71,8 +71,9 @@ public:
std::sort(store_.begin(), store_.end(), sortfunc);
auto total = last-first;
auto makeProgress = [this, &total](Placer& placer, size_t idx) {
packed_bins_[idx] = placer.getItems();
auto makeProgress = [this, &total](Placer& placer, size_t bin_idx) {
packed_bins_[bin_idx] = placer.getItems();
this->last_packed_bin_id_ = int(bin_idx);
this->progress_(static_cast<unsigned>(--total));
};

View File

@ -18,6 +18,8 @@ public:
return packed_bins_;
}
inline int lastPackedBinId() const { return last_packed_bin_id_; }
inline void progressIndicator(ProgressFunction fn) { progress_ = fn; }
inline void stopCondition(StopCondition cond) { stopcond_ = cond; }
@ -54,6 +56,7 @@ protected:
PackGroup packed_bins_;
ProgressFunction progress_ = [](unsigned){};
StopCondition stopcond_ = [](){ return false; };
int last_packed_bin_id_ = -1;
};
}

View File

@ -726,6 +726,33 @@ inline bool is_any_triangle_in_radius(
return hit_point.allFinite();
}
// Traverse the tree and return the index of an entity whose bounding box
// contains a given point. Returns size_t(-1) when the point is outside.
template<typename TreeType, typename VectorType>
void get_candidate_idxs(const TreeType& tree, const VectorType& v, std::vector<size_t>& candidates, size_t node_idx = 0)
{
if (tree.empty() || ! tree.node(node_idx).bbox.contains(v))
return;
decltype(tree.node(node_idx)) node = tree.node(node_idx);
static_assert(std::is_reference<decltype(node)>::value,
"Nodes shall be addressed by reference.");
assert(node.is_valid());
assert(node.bbox.contains(v));
if (! node.is_leaf()) {
if (tree.left_child(node_idx).bbox.contains(v))
get_candidate_idxs(tree, v, candidates, tree.left_child_idx(node_idx));
if (tree.right_child(node_idx).bbox.contains(v))
get_candidate_idxs(tree, v, candidates, tree.right_child_idx(node_idx));
} else
candidates.push_back(node.idx);
return;
}
} // namespace AABBTreeIndirect
} // namespace Slic3r

Some files were not shown because too many files have changed in this diff Show More