Merge branch 'main' of https://github.com/koppensb/OrcaSlicer
This commit is contained in:
commit
53cb9dc73d
49 changed files with 4505 additions and 1756 deletions
1
.github/workflows/build_all.yml
vendored
1
.github/workflows/build_all.yml
vendored
|
@ -48,6 +48,7 @@ jobs:
|
|||
matrix:
|
||||
include:
|
||||
- os: ubuntu-20.04
|
||||
- os: ubuntu-24.04
|
||||
- os: windows-latest
|
||||
- os: macos-14
|
||||
arch: x86_64
|
||||
|
|
24
.github/workflows/build_deps.yml
vendored
24
.github/workflows/build_deps.yml
vendored
|
@ -82,16 +82,24 @@ jobs:
|
|||
brew install zstd
|
||||
|
||||
|
||||
- name: Build on Ubuntu
|
||||
if: inputs.os == 'ubuntu-20.04'
|
||||
- name: Install Ubuntu Build Dependencies
|
||||
if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04'
|
||||
working-directory: ${{ github.workspace }}
|
||||
env:
|
||||
apt-cmd: ${{ (inputs.os == 'ubuntu-20.04' && 'apt-fast') || (inputs.os == 'ubuntu-24.04' && 'sudo apt-get') || '' }}
|
||||
webkit-ver: ${{ (inputs.os == 'ubuntu-20.04' && '4.0') || (inputs.os == 'ubuntu-24.04' && '4.1') || '' }}
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y cmake git g++ build-essential libgl1-mesa-dev m4 \
|
||||
${{ env.apt-cmd }} update
|
||||
${{ env.apt-cmd }} install -y cmake git g++ build-essential libgl1-mesa-dev m4 \
|
||||
libwayland-dev libxkbcommon-dev wayland-protocols extra-cmake-modules pkgconf \
|
||||
libglu1-mesa-dev libcairo2-dev libgtk-3-dev libsoup2.4-dev libwebkit2gtk-4.0-dev \
|
||||
libglu1-mesa-dev libcairo2-dev libgtk-3-dev libsoup2.4-dev libwebkit2gtk-${{ env.webkit-ver }}-dev \
|
||||
libgstreamer1.0-dev libgstreamer-plugins-good1.0-dev libgstreamer-plugins-base1.0-dev \
|
||||
gstreamer1.0-plugins-bad libosmesa6-dev wget sudo autoconf curl libunwind-dev texinfo
|
||||
|
||||
- name: Build on Ubuntu
|
||||
if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04'
|
||||
working-directory: ${{ github.workspace }}
|
||||
run: |
|
||||
mkdir -p ${{ github.workspace }}/deps/build
|
||||
mkdir -p ${{ github.workspace }}/deps/build/destdir
|
||||
sudo ./BuildLinux.sh -ur
|
||||
|
@ -117,10 +125,12 @@ jobs:
|
|||
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep*.zip
|
||||
|
||||
- name: Upload Ubuntu artifacts
|
||||
if: ${{ ! env.ACT && inputs.os == 'ubuntu-20.04' }}
|
||||
if: ${{ ! env.ACT && inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04' }}
|
||||
env:
|
||||
ubuntu-ver: ${{ (inputs.os == 'ubuntu-20.04' && '2004') || (inputs.os == 'ubuntu-24.04' && '2404') || '' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: OrcaSlicer_dep_ubuntu_${{ env.date }}
|
||||
name: OrcaSlicer_dep_ubuntu_${{ env.ubuntu-ver }}_${{ env.date }}
|
||||
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep_ubuntu_*.tar.gz
|
||||
|
||||
build_orca:
|
||||
|
|
41
.github/workflows/build_orca.yml
vendored
41
.github/workflows/build_orca.yml
vendored
|
@ -221,32 +221,38 @@ jobs:
|
|||
|
||||
# Ubuntu
|
||||
- name: Install dependencies
|
||||
if: inputs.os == 'ubuntu-20.04'
|
||||
if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04'
|
||||
env:
|
||||
apt-cmd: ${{ (inputs.os == 'ubuntu-20.04' && 'apt-fast') || (inputs.os == 'ubuntu-24.04' && 'sudo apt-get') || '' }}
|
||||
webkit-ver: ${{ (inputs.os == 'ubuntu-20.04' && '4.0') || (inputs.os == 'ubuntu-24.04' && '4.1') || '' }}
|
||||
libfuse2-pkg: ${{ (inputs.os == 'ubuntu-20.04' && 'libfuse2') || (inputs.os == 'ubuntu-24.04' && 'libfuse2t64') || '' }}
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y autoconf build-essential cmake curl eglexternalplatform-dev \
|
||||
${{ env.apt-cmd }} update
|
||||
${{ env.apt-cmd }} install -y autoconf build-essential cmake curl eglexternalplatform-dev \
|
||||
extra-cmake-modules file git libcairo2-dev libcurl4-openssl-dev libdbus-1-dev libglew-dev libglu1-mesa-dev \
|
||||
libglu1-mesa-dev libgstreamer1.0-dev libgstreamerd-3-dev libgstreamer-plugins-base1.0-dev libgstreamer-plugins-good1.0-dev \
|
||||
libgtk-3-dev libgtk-3-dev libmspack-dev libosmesa6-dev libsecret-1-dev libsoup2.4-dev libssl-dev libudev-dev libwayland-dev \
|
||||
libwebkit2gtk-4.0-dev libxkbcommon-dev locales locales-all m4 pkgconf sudo wayland-protocols wget
|
||||
libwebkit2gtk-${{ env.webkit-ver }}-dev libxkbcommon-dev locales locales-all m4 pkgconf sudo wayland-protocols wget ${{ env.libfuse2-pkg }}
|
||||
|
||||
- name: Install dependencies from BuildLinux.sh
|
||||
if: inputs.os == 'ubuntu-20.04'
|
||||
if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04'
|
||||
shell: bash
|
||||
run: sudo ./BuildLinux.sh -ur
|
||||
|
||||
- name: Fix permissions
|
||||
if: inputs.os == 'ubuntu-20.04'
|
||||
if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04'
|
||||
shell: bash
|
||||
run: sudo chown $USER -R ./
|
||||
|
||||
- name: Build slicer
|
||||
if: inputs.os == 'ubuntu-20.04'
|
||||
if: inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04'
|
||||
shell: bash
|
||||
env:
|
||||
ubuntu-ver-str: ${{ (inputs.os == 'ubuntu-24.04' && '_Ubuntu2404') || '' }}
|
||||
run: |
|
||||
./BuildLinux.sh -isr
|
||||
mv -n ./build/OrcaSlicer_Linux_V${{ env.ver_pure }}.AppImage ./build/OrcaSlicer_Linux_${{ env.ver }}.AppImage
|
||||
chmod +x ./build/OrcaSlicer_Linux_${{ env.ver }}.AppImage
|
||||
mv -n ./build/OrcaSlicer_Linux_V${{ env.ver_pure }}.AppImage ./build/OrcaSlicer_Linux${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage
|
||||
chmod +x ./build/OrcaSlicer_Linux${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage
|
||||
|
||||
- name: Build orca_custom_preset_tests
|
||||
if: github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-20.04'
|
||||
|
@ -258,20 +264,25 @@ jobs:
|
|||
zip -r orca_custom_preset_tests.zip user/
|
||||
|
||||
- name: Upload artifacts Ubuntu
|
||||
if: ${{ ! env.ACT && inputs.os == 'ubuntu-20.04' }}
|
||||
if: ${{ ! env.ACT && inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04' }}
|
||||
env:
|
||||
ubuntu-ver: ${{ (inputs.os == 'ubuntu-20.04' && '2004') || (inputs.os == 'ubuntu-24.04' && '2404') || '' }}
|
||||
ubuntu-ver-str: ${{ (inputs.os == 'ubuntu-24.04' && '_Ubuntu2404') || '' }}
|
||||
uses: actions/upload-artifact@v4
|
||||
with:
|
||||
name: OrcaSlicer_Linux_${{ env.ver }}
|
||||
path: './build/OrcaSlicer_Linux_${{ env.ver }}.AppImage'
|
||||
name: OrcaSlicer_Linux_ubuntu_${{ env.ubuntu-ver }}_${{ env.ver }}
|
||||
path: './build/OrcaSlicer_Linux${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage'
|
||||
|
||||
- name: Deploy Ubuntu release
|
||||
if: ${{ ! env.ACT && github.ref == 'refs/heads/main' && inputs.os == 'ubuntu-20.04' }}
|
||||
if: ${{ ! env.ACT && github.ref == 'refs/heads/main' && (inputs.os == 'ubuntu-20.04' || inputs.os == 'ubuntu-24.04') }}
|
||||
env:
|
||||
ubuntu-ver-str: ${{ (inputs.os == 'ubuntu-24.04' && '_Ubuntu2404') || '' }}
|
||||
uses: WebFreak001/deploy-nightly@v3.1.0
|
||||
with:
|
||||
upload_url: https://uploads.github.com/repos/SoftFever/OrcaSlicer/releases/137995723/assets{?name,label}
|
||||
release_id: 137995723
|
||||
asset_path: ./build/OrcaSlicer_Linux_${{ env.ver }}.AppImage
|
||||
asset_name: OrcaSlicer_Linux_${{ env.ver }}.AppImage
|
||||
asset_path: ./build/OrcaSlicer_Linux${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage
|
||||
asset_name: OrcaSlicer_Linux${{ env.ubuntu-ver-str }}_${{ env.ver }}.AppImage
|
||||
asset_content_type: application/octet-stream
|
||||
max_releases: 1 # optional, if there are more releases than this matching the asset_name, the oldest ones are going to be deleted
|
||||
|
||||
|
|
20
.github/workflows/check_profiles.yml
vendored
20
.github/workflows/check_profiles.yml
vendored
|
@ -1,11 +1,19 @@
|
|||
name: Check profiles
|
||||
on:
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- 'resources/profiles/**'
|
||||
- ".github/workflows/check_profiles.yml"
|
||||
pull_request:
|
||||
branches:
|
||||
- main
|
||||
paths:
|
||||
- 'resources/profiles/**'
|
||||
- ".github/workflows/check_profiles.yml"
|
||||
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
logLevel:
|
||||
description: 'Log level'
|
||||
required: true
|
||||
default: 'warning'
|
||||
|
||||
|
||||
jobs:
|
||||
check_translation:
|
||||
|
|
8
.github/workflows/orca_bot.yml
vendored
8
.github/workflows/orca_bot.yml
vendored
|
@ -2,7 +2,13 @@ name: Orca bot
|
|||
on:
|
||||
schedule:
|
||||
- cron: "0 0 * * *"
|
||||
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
logLevel:
|
||||
description: 'Log level'
|
||||
required: true
|
||||
default: 'warning'
|
||||
|
||||
jobs:
|
||||
stale:
|
||||
runs-on: ubuntu-latest
|
||||
|
|
10
.github/workflows/publish_docs_to_wiki.yml
vendored
10
.github/workflows/publish_docs_to_wiki.yml
vendored
|
@ -8,6 +8,13 @@ on:
|
|||
branches:
|
||||
- main # This can be changed to any branch of your preference
|
||||
|
||||
workflow_dispatch:
|
||||
inputs:
|
||||
logLevel:
|
||||
description: 'Log level'
|
||||
required: true
|
||||
default: 'warning'
|
||||
|
||||
env:
|
||||
USER_TOKEN: ${{ secrets.GH_WIKI_PAT }} # This is the repository secret personal access token
|
||||
USER_NAME: ${{ vars.BOT_USER_NAME }} # Enter the username of your (bot) account
|
||||
|
@ -16,7 +23,6 @@ env:
|
|||
|
||||
jobs:
|
||||
publish_docs_to_wiki:
|
||||
if: ${{ !env.ACT }} # Skip if using `act`
|
||||
name: Publish docs to Wiki
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
|
@ -28,7 +34,7 @@ jobs:
|
|||
run: |
|
||||
git config --global user.name "$USER_NAME"
|
||||
git config --global user.email "$USER_NAME"@users.noreply.github.com
|
||||
git clone https://"$USER_TOKEN"@github.com/"$OWNER"/"$REPOSITORY_NAME".wiki.git tmp_wiki
|
||||
git clone https://"$USER_TOKEN"@github.com/SoftFever/"$REPOSITORY_NAME".wiki.git tmp_wiki
|
||||
# 4. Synchronize differences between `doc` & `tmp_wiki`
|
||||
# 5. Push new Wiki content
|
||||
- name: Push main repo content to wiki
|
||||
|
|
6
doc/precise-z-height.md
Normal file
6
doc/precise-z-height.md
Normal file
|
@ -0,0 +1,6 @@
|
|||
This feature ensures the accurate Z height of the model after slicing, even if the model height is not a multiple of the layer height.
|
||||
|
||||
For example, slicing a 20mm x 20mm x 20.1mm cube with a layer height of 0.2mm would typically result in a final height of 20.2mm due to the layer height increments.
|
||||
|
||||
By enabling this parameter, the layer height of the last five layers is adjusted so that the final sliced height matches the actual object height, resulting in an accurate 20.1mm (as shown in the picture).
|
||||

|
|
@ -39,8 +39,7 @@ then
|
|||
fi
|
||||
|
||||
# check which version of libwebkit2gtk is available
|
||||
apt show --quiet libwebkit2gtk-4.0-dev >/dev/null 2>&1
|
||||
if [ "$?" == "0" ]
|
||||
if [ "$(apt show --quiet libwebkit2gtk-4.0-dev)" != "" ]
|
||||
then
|
||||
REQUIRED_DEV_PACKAGES+=(libwebkit2gtk-4.0-dev)
|
||||
else
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: LANGUAGE <LL@li.org>\n"
|
||||
|
@ -5479,6 +5479,9 @@ msgstr ""
|
|||
msgid "View all object's settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -5555,6 +5558,9 @@ msgstr ""
|
|||
msgid "Search plate, object and part."
|
||||
msgstr ""
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6099,6 +6105,21 @@ msgstr ""
|
|||
msgid "Choose Download Directory"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr ""
|
||||
|
||||
|
@ -6285,36 +6306,6 @@ msgstr ""
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr ""
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr ""
|
||||
|
||||
|
@ -9758,6 +9749,19 @@ msgid ""
|
|||
"and should be accurate"
|
||||
msgstr ""
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr ""
|
||||
|
||||
|
@ -10392,6 +10396,12 @@ msgstr ""
|
|||
msgid "Klipper"
|
||||
msgstr ""
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr ""
|
||||
|
||||
|
@ -10486,6 +10496,51 @@ msgstr ""
|
|||
msgid "Interlocking depth of a segmented region. Zero disables this feature."
|
||||
msgstr ""
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr ""
|
||||
|
||||
|
@ -11059,6 +11114,14 @@ msgstr ""
|
|||
msgid "Spiral"
|
||||
msgstr ""
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -8,7 +8,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: 2024-06-15 11:02+0200\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
|
@ -5892,6 +5892,9 @@ msgstr "Comparar els perfils"
|
|||
msgid "View all object's settings"
|
||||
msgstr "Veure tots els paràmetres de l'objecte"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr "Treure la placa actual ( si no és l'última )"
|
||||
|
||||
|
@ -5968,6 +5971,9 @@ msgstr "Configurar els filaments a utilitzar"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Cercar placa, objecte i peça."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6589,6 +6595,21 @@ msgstr "Navega"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Triar el Directori de Descàrrega"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "Configuració general"
|
||||
|
||||
|
@ -6812,42 +6833,6 @@ msgstr "Associar enllaços web a OrcaSlicer"
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr "Associeu URLs a OrcaSlicer"
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr "Associació actual: "
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr "Associar prusaslicer://"
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr "No associar a cap aplicació"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
"Associar OrcaSlicer amb els enllaços prusaslicer:// perquè Orca pugui obrir "
|
||||
"models des de Printable.com"
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr "Associar bambustudio://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
"Associar OrcaSlicer amb els enllaços bambustudio:// perquè Orca pugui obrir "
|
||||
"models des de makerworld.com"
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr "Associar cura://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
"Associar OrcaSlicer amb els enllaços cura:// perquè Orca pugui obrir models "
|
||||
"des de thingiverse.com"
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Màxim projectes recents"
|
||||
|
||||
|
@ -10964,6 +10949,19 @@ msgstr ""
|
|||
"El diàmetre del filament s'utilitza per calcular l'extrusió en Codi-G, per "
|
||||
"la qual cosa és important i ha de ser precís"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr "Encongiment"
|
||||
|
||||
|
@ -11762,6 +11760,12 @@ msgstr "Amb quin tipus de Codi-G és compatible la impressora"
|
|||
msgid "Klipper"
|
||||
msgstr "Klipper"
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr "Admetre diversos tipus de llits"
|
||||
|
||||
|
@ -11885,6 +11889,51 @@ msgstr ""
|
|||
"Profunditat d'entrellaçament d'una regió segmentada. Zero desactiva aquesta "
|
||||
"funció."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Tipus de planxat"
|
||||
|
||||
|
@ -12612,6 +12661,14 @@ msgstr "Pendent"
|
|||
msgid "Spiral"
|
||||
msgstr "Espiral"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "Només aixecar Z per sobre"
|
||||
|
||||
|
@ -16925,6 +16982,42 @@ msgstr ""
|
|||
"augmentar adequadament la temperatura del llit pot reduir la probabilitat de "
|
||||
"deformació."
|
||||
|
||||
#~ msgid "Current association: "
|
||||
#~ msgstr "Associació actual: "
|
||||
|
||||
#~ msgid "Associate prusaslicer://"
|
||||
#~ msgstr "Associar prusaslicer://"
|
||||
|
||||
#~ msgid "Not associated to any application"
|
||||
#~ msgstr "No associar a cap aplicació"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with prusaslicer:// links so that Orca can open "
|
||||
#~ "models from Printable.com"
|
||||
#~ msgstr ""
|
||||
#~ "Associar OrcaSlicer amb els enllaços prusaslicer:// perquè Orca pugui "
|
||||
#~ "obrir models des de Printable.com"
|
||||
|
||||
#~ msgid "Associate bambustudio://"
|
||||
#~ msgstr "Associar bambustudio://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with bambustudio:// links so that Orca can open "
|
||||
#~ "models from makerworld.com"
|
||||
#~ msgstr ""
|
||||
#~ "Associar OrcaSlicer amb els enllaços bambustudio:// perquè Orca pugui "
|
||||
#~ "obrir models des de makerworld.com"
|
||||
|
||||
#~ msgid "Associate cura://"
|
||||
#~ msgstr "Associar cura://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
#~ "thingiverse.com"
|
||||
#~ msgstr ""
|
||||
#~ "Associar OrcaSlicer amb els enllaços cura:// perquè Orca pugui obrir "
|
||||
#~ "models des de thingiverse.com"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "File size exceeds the 100MB upload limit. Please upload your file through "
|
||||
#~ "the panel."
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: \n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: 2023-09-30 15:15+0200\n"
|
||||
"Last-Translator: René Mošner <Renemosner@seznam.cz>\n"
|
||||
"Language-Team: \n"
|
||||
|
@ -5766,6 +5766,9 @@ msgstr "Porovnání přednastavení"
|
|||
msgid "View all object's settings"
|
||||
msgstr "Zobrazit všechna nastavení objektu"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr "Odebrat aktuální podložku (pokud není poslední)"
|
||||
|
||||
|
@ -5842,6 +5845,9 @@ msgstr "Nastavit filamenty k použití"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr ""
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6446,6 +6452,21 @@ msgstr "Procházet"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Vyberte adresář pro stahování"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "Obecná nastavení"
|
||||
|
||||
|
@ -6644,36 +6665,6 @@ msgstr ""
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr ""
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Maximální počet nedávných projektů"
|
||||
|
||||
|
@ -10467,6 +10458,19 @@ msgstr ""
|
|||
"Průměr filamentu se používá k výpočtu extruze v gkódu, takže je důležitý a "
|
||||
"měl by být přesný"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr "Smrštění"
|
||||
|
||||
|
@ -11219,6 +11223,12 @@ msgstr "S jakým typem gkódu je tiskárna kompatibilní"
|
|||
msgid "Klipper"
|
||||
msgstr "Klipper"
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr ""
|
||||
|
||||
|
@ -11327,6 +11337,51 @@ msgstr "Hloubka propojení segmentované oblasti"
|
|||
msgid "Interlocking depth of a segmented region. Zero disables this feature."
|
||||
msgstr ""
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Způsob žehlení"
|
||||
|
||||
|
@ -12003,6 +12058,14 @@ msgstr "Sklon"
|
|||
msgid "Spiral"
|
||||
msgstr "Spirála"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "Zvednout Z pouze nad"
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Orca Slicer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: Heiko Liebscher <hliebschergmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
|
@ -5946,6 +5946,9 @@ msgstr "Profile vergleichen"
|
|||
msgid "View all object's settings"
|
||||
msgstr "Alle Einstellungen des Objekts anzeigen"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr "entferne aktuelle Platte (wenn nicht die letzte)"
|
||||
|
||||
|
@ -6022,6 +6025,9 @@ msgstr "Zu verwendende Filamente einstellen"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Suche Platte, Objekt und Teil."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6658,6 +6664,21 @@ msgstr "Suchen"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Wählen Sie das Download-Verzeichnis"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "Allgemeine Einstellungen"
|
||||
|
||||
|
@ -6868,42 +6889,6 @@ msgstr "Web-Links mit OrcaSlicer verknüpfen"
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr "URLs mit OrcaSlicer verknüpfen"
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr "Aktuelle Zuordnung:"
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr "prusaslicer:// verknüpfen"
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr "Nicht mit einer Anwendung verknüpft"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
"Verknüpfen Sie OrcaSlicer mit prusaslicer://-Links, damit Orca Modelle von "
|
||||
"Printable.com öffnen kann."
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr "Verknüpfen mit bambustudio://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
"Verknüpfen Sie OrcaSlicer mit bambustudio://-Links, damit Orca Modelle von "
|
||||
"makerworld.com öffnen kann."
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr "cura:// verknüpfen"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
"Verknüpfen Sie OrcaSlicer mit cura://-Links, damit Orca Modelle von "
|
||||
"thingiverse.com öffnen kann."
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Höchstanzahl an letzten Projekten"
|
||||
|
||||
|
@ -11060,6 +11045,19 @@ msgstr ""
|
|||
"Der Filamentdurchmesser wird für die Berechnung der Extrusion im G-Code "
|
||||
"verwendet, er ist also wichtig und sollte genau sein"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr "Schrumpfung"
|
||||
|
||||
|
@ -11852,6 +11850,12 @@ msgstr "Mit welcher Art von G-Code ist der Drucker kompatibel"
|
|||
msgid "Klipper"
|
||||
msgstr "Klipper"
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr "Unterstützung mehrerer Betttypen"
|
||||
|
||||
|
@ -11982,6 +11986,51 @@ msgstr ""
|
|||
"Verriegelungstiefe eines segmentierten Bereichs. Null deaktiviert diese "
|
||||
"Funktion."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Glättungsmethode"
|
||||
|
||||
|
@ -12696,6 +12745,14 @@ msgstr "Steigung"
|
|||
msgid "Spiral"
|
||||
msgstr "Spirale"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "Nur Z anheben über"
|
||||
|
||||
|
@ -15359,7 +15416,7 @@ msgid "PETG"
|
|||
msgstr "PETG"
|
||||
|
||||
msgid "PCTG"
|
||||
msgstr ""
|
||||
msgstr "PCTG"
|
||||
|
||||
msgid "TPU"
|
||||
msgstr "TPU"
|
||||
|
@ -16167,10 +16224,10 @@ msgid "Refresh Printers"
|
|||
msgstr "Drucker aktualisieren"
|
||||
|
||||
msgid "View print host webui in Device tab"
|
||||
msgstr ""
|
||||
msgstr "Druck-Host-Webui im Geräte-Tab anzeigen"
|
||||
|
||||
msgid "Replace the BambuLab's device tab with print host webui"
|
||||
msgstr ""
|
||||
msgstr "Ersetzen Sie den BambuLab-Geräte-Tab durch das Druck-Host-Webui"
|
||||
|
||||
msgid ""
|
||||
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
|
||||
|
@ -16619,7 +16676,7 @@ msgid "Could not connect to SimplyPrint"
|
|||
msgstr "Konnte keine Verbindung zu SimplyPrint herstellen"
|
||||
|
||||
msgid "Internal error"
|
||||
msgstr ""
|
||||
msgstr "Interner Fehler"
|
||||
|
||||
msgid "Unknown error"
|
||||
msgstr "Unbekannter Fehler"
|
||||
|
@ -17044,6 +17101,42 @@ msgstr ""
|
|||
"wie z.B. ABS, durch eine entsprechende Erhöhung der Heizbetttemperatur die "
|
||||
"Wahrscheinlichkeit von Verwerfungen verringert werden kann."
|
||||
|
||||
#~ msgid "Current association: "
|
||||
#~ msgstr "Aktuelle Zuordnung:"
|
||||
|
||||
#~ msgid "Associate prusaslicer://"
|
||||
#~ msgstr "prusaslicer:// verknüpfen"
|
||||
|
||||
#~ msgid "Not associated to any application"
|
||||
#~ msgstr "Nicht mit einer Anwendung verknüpft"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with prusaslicer:// links so that Orca can open "
|
||||
#~ "models from Printable.com"
|
||||
#~ msgstr ""
|
||||
#~ "Verknüpfen Sie OrcaSlicer mit prusaslicer://-Links, damit Orca Modelle "
|
||||
#~ "von Printable.com öffnen kann."
|
||||
|
||||
#~ msgid "Associate bambustudio://"
|
||||
#~ msgstr "Verknüpfen mit bambustudio://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with bambustudio:// links so that Orca can open "
|
||||
#~ "models from makerworld.com"
|
||||
#~ msgstr ""
|
||||
#~ "Verknüpfen Sie OrcaSlicer mit bambustudio://-Links, damit Orca Modelle "
|
||||
#~ "von makerworld.com öffnen kann."
|
||||
|
||||
#~ msgid "Associate cura://"
|
||||
#~ msgstr "cura:// verknüpfen"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
#~ "thingiverse.com"
|
||||
#~ msgstr ""
|
||||
#~ "Verknüpfen Sie OrcaSlicer mit cura://-Links, damit Orca Modelle von "
|
||||
#~ "thingiverse.com öffnen kann."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "File size exceeds the 100MB upload limit. Please upload your file through "
|
||||
#~ "the panel."
|
||||
|
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Orca Slicer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
|
@ -5720,6 +5720,9 @@ msgstr "Compare presets"
|
|||
msgid "View all object's settings"
|
||||
msgstr "View all object's settings"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -5796,6 +5799,9 @@ msgstr "Set filaments to use"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Search plate, object and part."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6393,6 +6399,21 @@ msgstr "Browse"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Choose Download Directory"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "General Settings"
|
||||
|
||||
|
@ -6592,36 +6613,6 @@ msgstr ""
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr ""
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Maximum recent projects"
|
||||
|
||||
|
@ -10390,6 +10381,19 @@ msgstr ""
|
|||
"Filament diameter is used to calculate extrusion variables in G-code, so it "
|
||||
"is important that this is accurate and precise."
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr ""
|
||||
|
||||
|
@ -11065,6 +11069,12 @@ msgstr "What kind of G-code the printer is compatible with."
|
|||
msgid "Klipper"
|
||||
msgstr ""
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr ""
|
||||
|
||||
|
@ -11165,6 +11175,51 @@ msgstr "Interlocking depth of a segmented region"
|
|||
msgid "Interlocking depth of a segmented region. Zero disables this feature."
|
||||
msgstr "Interlocking depth of a segmented region. Zero disables this feature."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Ironing type"
|
||||
|
||||
|
@ -11792,6 +11847,14 @@ msgstr "Slope"
|
|||
msgid "Spiral"
|
||||
msgstr "Spiral"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr ""
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Orca Slicer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: Carlos Fco. Caruncho Serrano <puzzlero@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
|
@ -5920,6 +5920,9 @@ msgstr "Comparar justes"
|
|||
msgid "View all object's settings"
|
||||
msgstr "Ver todos los ajustes del objeto"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr "Quitar bandeja actual (si no es la última)"
|
||||
|
||||
|
@ -5996,6 +5999,9 @@ msgstr "Elegir filamentos para usar"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Buscar placa, objeto y parte."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6626,6 +6632,21 @@ msgstr "Explorar"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Elegir Directorio de Descarga"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "Configuración General"
|
||||
|
||||
|
@ -6844,42 +6865,6 @@ msgstr "Asociar enlaces web a OrcaSlicer"
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr "Asociar URLs a OrcaSlicer"
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr "Asociación actual:"
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr "Asociar prusaslicer://"
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr "No asociado a ninguna aplicación"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
"Asociar OrcaSlicer con prusaslicer:// enlaces para que Orca puede abrir "
|
||||
"modelos de Printables.com"
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr "Asociar bambustudio://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
"Asociar OrcaSlicer con bambustudio:// enlaces para que Orca puede abrir "
|
||||
"modelos de makerworld.com"
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr "Asociar cura://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
"Asociar OrcaSlicer con enlaces cura:// para que Orca pueda abrir modelos "
|
||||
"desde thingiverse.com"
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Proyectos recientes máximos"
|
||||
|
||||
|
@ -7399,8 +7384,8 @@ msgid ""
|
|||
"start printing."
|
||||
msgstr ""
|
||||
"Hay algunos filamentos desconocidos en los mapeados AMS. Por favor, "
|
||||
"compruebe si son los filamentos requeridos. Si lo son, presione "
|
||||
"\"Confirmar\" para empezar a imprimir."
|
||||
"compruebe si son los filamentos requeridos. Si lo son, presione \"Confirmar"
|
||||
"\" para empezar a imprimir."
|
||||
|
||||
#, c-format, boost-format
|
||||
msgid "nozzle in preset: %s %s"
|
||||
|
@ -7765,8 +7750,8 @@ msgstr ""
|
|||
msgid ""
|
||||
"When recording timelapse without toolhead, it is recommended to add a "
|
||||
"\"Timelapse Wipe Tower\" \n"
|
||||
"by right-click the empty position of build plate and choose \"Add "
|
||||
"Primitive\"->\"Timelapse Wipe Tower\"."
|
||||
"by right-click the empty position of build plate and choose \"Add Primitive"
|
||||
"\"->\"Timelapse Wipe Tower\"."
|
||||
msgstr ""
|
||||
"Cuando grabamos timelapse sin cabezal de impresión, es recomendable añadir "
|
||||
"un \"Torre de Purga de Intervalo\" \n"
|
||||
|
@ -11023,6 +11008,19 @@ msgstr ""
|
|||
"El diámetro del filamento se utiliza para calcular la extrusión en el G-"
|
||||
"Code, por lo que es importante y debe ser preciso"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr "Contracción"
|
||||
|
||||
|
@ -11527,10 +11525,10 @@ msgstr "Velocidad máxima del ventilador en la capa"
|
|||
|
||||
msgid ""
|
||||
"Fan speed will be ramped up linearly from zero at layer "
|
||||
"\"close_fan_the_first_x_layers\" to maximum at layer "
|
||||
"\"full_fan_speed_layer\". \"full_fan_speed_layer\" will be ignored if lower "
|
||||
"than \"close_fan_the_first_x_layers\", in which case the fan will be running "
|
||||
"at maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
|
||||
"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer"
|
||||
"\". \"full_fan_speed_layer\" will be ignored if lower than "
|
||||
"\"close_fan_the_first_x_layers\", in which case the fan will be running at "
|
||||
"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
|
||||
msgstr ""
|
||||
"La velocidad de ventilador se incrementará linealmente de cero a "
|
||||
"\"close_fan_the_first_x_layers\" al máximo de capa \"full_fan_speed_layer\". "
|
||||
|
@ -11818,6 +11816,12 @@ msgstr "Con qué tipo de G-Code es compatible la impresora"
|
|||
msgid "Klipper"
|
||||
msgstr "Klipper"
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr "Admite varios tipos de cama"
|
||||
|
||||
|
@ -11942,6 +11946,51 @@ msgstr ""
|
|||
"Profundidad de entrelazado de una región segmentada. Zero desactiva esta "
|
||||
"característica."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Tipo de alisado"
|
||||
|
||||
|
@ -12671,6 +12720,14 @@ msgstr "Pendiente"
|
|||
msgid "Spiral"
|
||||
msgstr "Espiral"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "Solo elevar Z por encima"
|
||||
|
||||
|
@ -14901,12 +14958,12 @@ msgstr ""
|
|||
"wiki.\n"
|
||||
"\n"
|
||||
"Normalmente la calibración es innecesaria. Cuando se inicia una impresión de "
|
||||
"un solo color/material, con la opción \"calibración de la dinámica de "
|
||||
"flujo\" marcada en el menú de inicio de impresión, la impresora seguirá el "
|
||||
"camino antiguo, calibrar el filamento antes de la impresión; cuando se "
|
||||
"inicia una impresión de varios colores/materiales, la impresora utilizará el "
|
||||
"parámetro de compensación por defecto para el filamento durante cada cambio "
|
||||
"de filamento que tendrá un buen resultado en la mayoría de los casos.\n"
|
||||
"un solo color/material, con la opción \"calibración de la dinámica de flujo"
|
||||
"\" marcada en el menú de inicio de impresión, la impresora seguirá el camino "
|
||||
"antiguo, calibrar el filamento antes de la impresión; cuando se inicia una "
|
||||
"impresión de varios colores/materiales, la impresora utilizará el parámetro "
|
||||
"de compensación por defecto para el filamento durante cada cambio de "
|
||||
"filamento que tendrá un buen resultado en la mayoría de los casos.\n"
|
||||
"\n"
|
||||
"Tenga en cuenta que hay algunos casos que pueden hacer que los resultados de "
|
||||
"la calibración no sean fiables, como una adhesión insuficiente en la placa "
|
||||
|
@ -15662,8 +15719,8 @@ msgstr ""
|
|||
"¿Quieres reescribirlo?"
|
||||
|
||||
msgid ""
|
||||
"We would rename the presets as \"Vendor Type Serial @printer you "
|
||||
"selected\". \n"
|
||||
"We would rename the presets as \"Vendor Type Serial @printer you selected"
|
||||
"\". \n"
|
||||
"To add preset for more printers, Please go to printer selection"
|
||||
msgstr ""
|
||||
"Cambiaríamos el nombre de los preajustes a \"Número de serie del Vendedor "
|
||||
|
@ -17006,6 +17063,42 @@ msgstr ""
|
|||
"aumentar adecuadamente la temperatura del lecho térmico puede reducir la "
|
||||
"probabilidad de deformaciones."
|
||||
|
||||
#~ msgid "Current association: "
|
||||
#~ msgstr "Asociación actual:"
|
||||
|
||||
#~ msgid "Associate prusaslicer://"
|
||||
#~ msgstr "Asociar prusaslicer://"
|
||||
|
||||
#~ msgid "Not associated to any application"
|
||||
#~ msgstr "No asociado a ninguna aplicación"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with prusaslicer:// links so that Orca can open "
|
||||
#~ "models from Printable.com"
|
||||
#~ msgstr ""
|
||||
#~ "Asociar OrcaSlicer con prusaslicer:// enlaces para que Orca puede abrir "
|
||||
#~ "modelos de Printables.com"
|
||||
|
||||
#~ msgid "Associate bambustudio://"
|
||||
#~ msgstr "Asociar bambustudio://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with bambustudio:// links so that Orca can open "
|
||||
#~ "models from makerworld.com"
|
||||
#~ msgstr ""
|
||||
#~ "Asociar OrcaSlicer con bambustudio:// enlaces para que Orca puede abrir "
|
||||
#~ "modelos de makerworld.com"
|
||||
|
||||
#~ msgid "Associate cura://"
|
||||
#~ msgstr "Asociar cura://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
#~ "thingiverse.com"
|
||||
#~ msgstr ""
|
||||
#~ "Asociar OrcaSlicer con enlaces cura:// para que Orca pueda abrir modelos "
|
||||
#~ "desde thingiverse.com"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "File size exceeds the 100MB upload limit. Please upload your file through "
|
||||
#~ "the panel."
|
||||
|
@ -17451,8 +17544,8 @@ msgstr ""
|
|||
#~ msgstr "Capas de baja densidad (EXPERIMENTAL)"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "We would rename the presets as \"Vendor Type Serial @printer you "
|
||||
#~ "selected\". \n"
|
||||
#~ "We would rename the presets as \"Vendor Type Serial @printer you selected"
|
||||
#~ "\". \n"
|
||||
#~ "To add preset for more prinetrs, Please go to printer selection"
|
||||
#~ msgstr ""
|
||||
#~ "Cambiaremos el nombre de los perfiles a \"Tipo Número de Serie @impresora "
|
||||
|
|
|
@ -6,7 +6,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Orca Slicer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Guislain Cyril, Thomas Lété\n"
|
||||
|
@ -5929,6 +5929,9 @@ msgstr "Comparer les Préréglages"
|
|||
msgid "View all object's settings"
|
||||
msgstr "Afficher tous les paramètres de l'objet"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr "Retirer la plaque actuelle (si elle n'est pas la dernière)"
|
||||
|
||||
|
@ -6005,6 +6008,9 @@ msgstr "Définir les filaments à utiliser"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Recherche de plaque, d'objet et de pièce."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6646,6 +6652,21 @@ msgstr "Parcourir"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Choisissez le répertoire de téléchargement"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "Paramètres généraux"
|
||||
|
||||
|
@ -6871,42 +6892,6 @@ msgstr "Associer des liens web à OrcaSlicer"
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr "Associer des URL à OrcaSlicer"
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr "Association actuelle : "
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr "Associer prusaslicer://"
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr "N’est associé à aucune application"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
"Associer OrcaSlicer aux liens prusaslicer:// afin qu’Orca puisse ouvrir des "
|
||||
"modèles provenant de Printable.com"
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr "Associer bambustudio://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
"Associer OrcaSlicer aux liens bambustudio:// afin qu’Orca puisse ouvrir des "
|
||||
"modèles provenant de makerworld.com"
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr "Associer cura://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
"Associer OrcaSlicer aux liens cura:// pour qu’Orca puisse ouvrir les modèles "
|
||||
"de thingiverse.com"
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Projets récents maximum"
|
||||
|
||||
|
@ -7814,8 +7799,8 @@ msgstr ""
|
|||
msgid ""
|
||||
"When recording timelapse without toolhead, it is recommended to add a "
|
||||
"\"Timelapse Wipe Tower\" \n"
|
||||
"by right-click the empty position of build plate and choose \"Add "
|
||||
"Primitive\"->\"Timelapse Wipe Tower\"."
|
||||
"by right-click the empty position of build plate and choose \"Add Primitive"
|
||||
"\"->\"Timelapse Wipe Tower\"."
|
||||
msgstr ""
|
||||
"Lorsque vous enregistrez un timelapse sans tête d’outil, il est recommandé "
|
||||
"d’ajouter une \"Tour d’essuyage timelapse\".\n"
|
||||
|
@ -7970,9 +7955,9 @@ msgid ""
|
|||
"Bed temperature when cool plate is installed. Value 0 means the filament "
|
||||
"does not support to print on the Cool Plate"
|
||||
msgstr ""
|
||||
"Il s'agit de la température du plateau lorsque le plateau froid (\"Cool "
|
||||
"plate\") est installé. Une valeur à 0 signifie que ce filament ne peut pas "
|
||||
"être imprimé sur le plateau froid."
|
||||
"Il s'agit de la température du plateau lorsque le plateau froid (\"Cool plate"
|
||||
"\") est installé. Une valeur à 0 signifie que ce filament ne peut pas être "
|
||||
"imprimé sur le plateau froid."
|
||||
|
||||
msgid "Engineering plate"
|
||||
msgstr "Plaque Engineering"
|
||||
|
@ -11123,6 +11108,19 @@ msgstr ""
|
|||
"Le diamètre du filament est utilisé pour calculer les variables d'extrusion "
|
||||
"dans le G-code, il est donc important qu'il soit exact et précis."
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr "Pourcentage de retrait"
|
||||
|
||||
|
@ -11630,10 +11628,10 @@ msgstr "Ventilateur à pleine vitesse à la couche"
|
|||
|
||||
msgid ""
|
||||
"Fan speed will be ramped up linearly from zero at layer "
|
||||
"\"close_fan_the_first_x_layers\" to maximum at layer "
|
||||
"\"full_fan_speed_layer\". \"full_fan_speed_layer\" will be ignored if lower "
|
||||
"than \"close_fan_the_first_x_layers\", in which case the fan will be running "
|
||||
"at maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
|
||||
"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer"
|
||||
"\". \"full_fan_speed_layer\" will be ignored if lower than "
|
||||
"\"close_fan_the_first_x_layers\", in which case the fan will be running at "
|
||||
"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
|
||||
msgstr ""
|
||||
"La vitesse du ventilateur augmentera de manière linéaire à partir de zéro à "
|
||||
"la couche \"close_fan_the_first_x_layers\" jusqu’au maximum à la couche "
|
||||
|
@ -11924,6 +11922,12 @@ msgstr "Avec quel type de G-code l'imprimante est-elle compatible"
|
|||
msgid "Klipper"
|
||||
msgstr "Klipper"
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr "Prise en charge de plusieurs types de plateaux"
|
||||
|
||||
|
@ -12050,6 +12054,51 @@ msgstr ""
|
|||
"Profondeur d’imbrication d’une région segmentée. Zéro désactive cette "
|
||||
"fonction."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Type de lissage"
|
||||
|
||||
|
@ -12790,6 +12839,14 @@ msgstr "Pente"
|
|||
msgid "Spiral"
|
||||
msgstr "Spirale"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "Décalage en Z au-dessus uniquement"
|
||||
|
||||
|
@ -13370,8 +13427,8 @@ msgid ""
|
|||
"Use \"Even-odd\" for 3DLabPrint airplane models. Use \"Close holes\" to "
|
||||
"close all holes in the model."
|
||||
msgstr ""
|
||||
"Utilisez « Pair-impair » pour les modèles d'avion 3DLabPrint. Utilisez "
|
||||
"« Fermer les trous » pour fermer tous les trous du modèle."
|
||||
"Utilisez « Pair-impair » pour les modèles d'avion 3DLabPrint. Utilisez « "
|
||||
"Fermer les trous » pour fermer tous les trous du modèle."
|
||||
|
||||
msgid "Regular"
|
||||
msgstr "Standard"
|
||||
|
@ -14180,8 +14237,8 @@ msgid ""
|
|||
"Wipe tower is only compatible with relative mode. It is recommended on most "
|
||||
"printers. Default is checked"
|
||||
msgstr ""
|
||||
"L’extrusion relative est recommandée lors de l’utilisation de l’option "
|
||||
"« label_objects ». Certains extrudeurs fonctionnent mieux avec cette option "
|
||||
"L’extrusion relative est recommandée lors de l’utilisation de l’option « "
|
||||
"label_objects ». Certains extrudeurs fonctionnent mieux avec cette option "
|
||||
"non verrouillée (mode d’extrusion absolu). La tour d’essuyage n’est "
|
||||
"compatible qu’avec le mode relatif. Il est recommandé sur la plupart des "
|
||||
"imprimantes. L’option par défaut est cochée"
|
||||
|
@ -15812,8 +15869,8 @@ msgstr ""
|
|||
"Voulez-vous le réécrire ?"
|
||||
|
||||
msgid ""
|
||||
"We would rename the presets as \"Vendor Type Serial @printer you "
|
||||
"selected\". \n"
|
||||
"We would rename the presets as \"Vendor Type Serial @printer you selected"
|
||||
"\". \n"
|
||||
"To add preset for more printers, Please go to printer selection"
|
||||
msgstr ""
|
||||
"Nous renommerions les préréglages en « Vendor Type Serial @printer you "
|
||||
|
@ -16756,8 +16813,8 @@ msgstr "Connexion à SimplyPrint réussie !"
|
|||
msgid "Could not connect to SimplyPrint"
|
||||
msgstr "Impossible de se connecter à SimplyPrint"
|
||||
|
||||
msgid "Internel error"
|
||||
msgstr "Erreur interne"
|
||||
msgid "Internal error"
|
||||
msgstr ""
|
||||
|
||||
msgid "Unknown error"
|
||||
msgstr "Erreur inconnue"
|
||||
|
@ -17185,6 +17242,45 @@ msgstr ""
|
|||
"déformer, tels que l’ABS, une augmentation appropriée de la température du "
|
||||
"plateau chauffant peut réduire la probabilité de déformation."
|
||||
|
||||
#~ msgid "Current association: "
|
||||
#~ msgstr "Association actuelle : "
|
||||
|
||||
#~ msgid "Associate prusaslicer://"
|
||||
#~ msgstr "Associer prusaslicer://"
|
||||
|
||||
#~ msgid "Not associated to any application"
|
||||
#~ msgstr "N’est associé à aucune application"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with prusaslicer:// links so that Orca can open "
|
||||
#~ "models from Printable.com"
|
||||
#~ msgstr ""
|
||||
#~ "Associer OrcaSlicer aux liens prusaslicer:// afin qu’Orca puisse ouvrir "
|
||||
#~ "des modèles provenant de Printable.com"
|
||||
|
||||
#~ msgid "Associate bambustudio://"
|
||||
#~ msgstr "Associer bambustudio://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with bambustudio:// links so that Orca can open "
|
||||
#~ "models from makerworld.com"
|
||||
#~ msgstr ""
|
||||
#~ "Associer OrcaSlicer aux liens bambustudio:// afin qu’Orca puisse ouvrir "
|
||||
#~ "des modèles provenant de makerworld.com"
|
||||
|
||||
#~ msgid "Associate cura://"
|
||||
#~ msgstr "Associer cura://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
#~ "thingiverse.com"
|
||||
#~ msgstr ""
|
||||
#~ "Associer OrcaSlicer aux liens cura:// pour qu’Orca puisse ouvrir les "
|
||||
#~ "modèles de thingiverse.com"
|
||||
|
||||
#~ msgid "Internel error"
|
||||
#~ msgstr "Erreur interne"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "File size exceeds the 100MB upload limit. Please upload your file through "
|
||||
#~ "the panel."
|
||||
|
@ -17733,8 +17829,8 @@ msgstr ""
|
|||
#~ "thickness (top+bottom solid layers)"
|
||||
#~ msgstr ""
|
||||
#~ "Ajoutez du remplissage solide à proximité des surfaces inclinées pour "
|
||||
#~ "garantir l'épaisseur verticale de la coque (couches solides "
|
||||
#~ "supérieure+inférieure)."
|
||||
#~ "garantir l'épaisseur verticale de la coque (couches solides supérieure"
|
||||
#~ "+inférieure)."
|
||||
|
||||
#~ msgid "Further reduce solid infill on walls (beta)"
|
||||
#~ msgstr "Réduire davantage le remplissage solide des parois (expérimental)"
|
||||
|
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Orca Slicer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"Language: hu\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -5765,6 +5765,9 @@ msgstr "Beállítások összehasonlítása"
|
|||
msgid "View all object's settings"
|
||||
msgstr "Összes objektum beállításainak megtekintése"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -5841,6 +5844,9 @@ msgstr "Használni kívánt filament beállítása"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Tálca, objektum és tárgy keresése."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6443,6 +6449,21 @@ msgstr "Tallózás"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Válassz letöltési mappát"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "Általános beállítások"
|
||||
|
||||
|
@ -6650,36 +6671,6 @@ msgstr ""
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr ""
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Maximum recent projects"
|
||||
|
||||
|
@ -10507,6 +10498,19 @@ msgstr ""
|
|||
"A filament átmérő a G-kódban az extrudálás kiszámításához szükséges, ezért "
|
||||
"fontos, hogy pontos legyen"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr ""
|
||||
|
||||
|
@ -11197,6 +11201,12 @@ msgstr "Milyen G-kóddal kompatibilis a nyomtató."
|
|||
msgid "Klipper"
|
||||
msgstr ""
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr ""
|
||||
|
||||
|
@ -11304,6 +11314,51 @@ msgstr ""
|
|||
"Szegmentált régió összekapcsolódási mélysége. A 0 érték letiltja ezt a "
|
||||
"funkciót."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Vasalás típusa"
|
||||
|
||||
|
@ -11946,6 +12001,14 @@ msgstr "Lejtő"
|
|||
msgid "Spiral"
|
||||
msgstr "Spirál"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "Z emelés csak efelett"
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Orca Slicer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
|
@ -5880,6 +5880,9 @@ msgstr "Confronta i preset"
|
|||
msgid "View all object's settings"
|
||||
msgstr "Visualizza tutte le impostazioni oggetto"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr "Rimuovere la piastra corrente (se non l'ultima)"
|
||||
|
||||
|
@ -5956,6 +5959,9 @@ msgstr "Imposta filamenti da usare"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Cerca piastra, oggetto e parte."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6583,6 +6589,21 @@ msgstr "Sfoglia"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Scegliere la directory di download"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "Impostazioni generali"
|
||||
|
||||
|
@ -6789,36 +6810,6 @@ msgstr ""
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr ""
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Numero massimo di progetti recenti"
|
||||
|
||||
|
@ -10936,6 +10927,19 @@ msgstr ""
|
|||
"Il diametro del filamento viene utilizzato per calcolare le variabili di "
|
||||
"estrusione nel G-code, quindi è importante che sia accurato e preciso."
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr "Restringimento"
|
||||
|
||||
|
@ -11723,6 +11727,12 @@ msgstr "Con che tipo di G-code è compatibile la stampante."
|
|||
msgid "Klipper"
|
||||
msgstr "Klipper"
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr "Supporta i tipi di letti multipli"
|
||||
|
||||
|
@ -11836,6 +11846,51 @@ msgstr ""
|
|||
"Profondità di incastro di una regione segmentata. Zero disabilita questa "
|
||||
"funzione."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Tipo di stiratura"
|
||||
|
||||
|
@ -12570,6 +12625,14 @@ msgstr "Inclinato"
|
|||
msgid "Spiral"
|
||||
msgstr "Spirale"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "Solleva Z solo al di sopra"
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Orca Slicer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: \n"
|
||||
|
@ -5685,6 +5685,9 @@ msgstr "プリセットを比較"
|
|||
msgid "View all object's settings"
|
||||
msgstr "全てのオブジェクトの設定"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -5761,6 +5764,9 @@ msgstr "フィラメントを選択"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Search plate, object and part."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6358,6 +6364,21 @@ msgstr "閲覧"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "ダウンロードフォルドを選択"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "一般設定"
|
||||
|
||||
|
@ -6553,36 +6574,6 @@ msgstr ""
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr ""
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Maximum recent projects"
|
||||
|
||||
|
@ -10275,6 +10266,19 @@ msgstr ""
|
|||
"押出制御に使用されるパラメータなので、精確なフィラメント直径を入力してくださ"
|
||||
"い"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr ""
|
||||
|
||||
|
@ -10946,6 +10950,12 @@ msgstr "プリンターが対応するG-code"
|
|||
msgid "Klipper"
|
||||
msgstr ""
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr ""
|
||||
|
||||
|
@ -11049,6 +11059,51 @@ msgstr "Interlocking depth of a segmented region"
|
|||
msgid "Interlocking depth of a segmented region. Zero disables this feature."
|
||||
msgstr "Interlocking depth of a segmented region. Zero disables this feature."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "アイロン面"
|
||||
|
||||
|
@ -11668,6 +11723,14 @@ msgstr "スロープ"
|
|||
msgid "Spiral"
|
||||
msgstr "スパイラル"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "これ以上でリフトZ"
|
||||
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Orca Slicer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: 2024-05-31 23:33+0900\n"
|
||||
"Last-Translator: Hotsolidinfill <138652683+Hotsolidinfill@users.noreply."
|
||||
"github.com>, crwusiz <crwusiz@gmail.com>\n"
|
||||
|
@ -1503,8 +1503,7 @@ msgid "User logged out"
|
|||
msgstr "사용자가 로그아웃됨"
|
||||
|
||||
msgid "new or open project file is not allowed during the slicing process!"
|
||||
msgstr ""
|
||||
"슬라이싱 중에는 새 프로젝트를 만들거나 프로젝트 파일을 열 수 없습니다!"
|
||||
msgstr "슬라이싱 중에는 새 프로젝트를 만들거나 프로젝트 파일을 열 수 없습니다!"
|
||||
|
||||
msgid "Open Project"
|
||||
msgstr "프로젝트 열기"
|
||||
|
@ -5729,6 +5728,9 @@ msgstr "사전 설정 비교"
|
|||
msgid "View all object's settings"
|
||||
msgstr "모든 개체 설정 보기"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr "재료 설정"
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr "현재 플레이트 제거(마지막 플레이트가 아닌 경우)"
|
||||
|
||||
|
@ -5805,6 +5807,9 @@ msgstr "사용할 필라멘트 설정"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "플레이트, 개체 및 부품을 검색합니다."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr "펠릿"
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6406,6 +6411,21 @@ msgstr "탐색"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "다운로드 폴더 선택"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr "링크"
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr "를 OrcaSlicer와 연결하여 Orca가 다음 사이트의 모델을 열 수 있게 합니다"
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr "현재 연결: "
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr "현재 인스턴스"
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr "현재 인스턴스 경로: "
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "일반 설정"
|
||||
|
||||
|
@ -6550,8 +6570,8 @@ msgid ""
|
|||
"If enabled, Orca will remember and switch filament/process configuration for "
|
||||
"each printer automatically."
|
||||
msgstr ""
|
||||
"활성화하면 Orca는 각 프린터의 필라멘트/프로세스 구성을 자동으로 기억하고 "
|
||||
"전환합니다."
|
||||
"활성화하면 Orca는 각 프린터의 필라멘트/프로세스 구성을 자동으로 기억하고 전환"
|
||||
"합니다."
|
||||
|
||||
msgid "Multi-device Management(Take effect after restarting Orca)."
|
||||
msgstr "다중 장치 관리 (Orca를 다시 시작한 후 적용됨)."
|
||||
|
@ -6560,8 +6580,7 @@ msgid ""
|
|||
"With this option enabled, you can send a task to multiple devices at the "
|
||||
"same time and manage multiple devices."
|
||||
msgstr ""
|
||||
"활성화하면 여러 장치에 동시에 작업을 보내고 여러 장치를 관리할 수 "
|
||||
"있습니다."
|
||||
"활성화하면 여러 장치에 동시에 작업을 보내고 여러 장치를 관리할 수 있습니다."
|
||||
|
||||
msgid "Network"
|
||||
msgstr "네트워크"
|
||||
|
@ -6612,42 +6631,6 @@ msgstr "OrcaSlicer에 웹 링크 연결"
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr "OrcaSlicer에 URL 연결"
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr "현재 연결:"
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr "prusaslicer:// 연결"
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr "어떤 애플리케이션과도 연결되지 않음"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
"OrcaSlicer가 Printable.com에서 모델을 열 수 있도록 OrcaSlicer를 prusaslicer:// 링크"
|
||||
"와 연결합니다."
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr "bambustudio:// 연결"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
"OrcaSlicer가 makerworld.com에서 모델을 열 수 있도록 OrcaSlicer를 bambustudio:// 링"
|
||||
"크와 연결합니다."
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr "cura:// 연결"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
"OOrcaSlicer가 thingiverse.com에서 모델을 열 수 있도록 OrcaSlicer를 cura:// 링크와 연"
|
||||
"결합니다."
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "최근 프로젝트 최대 표시"
|
||||
|
||||
|
@ -8257,8 +8240,9 @@ msgstr "으로"
|
|||
msgid ""
|
||||
"Windows Media Player is required for this task! Do you want to enable "
|
||||
"'Windows Media Player' for your operation system?"
|
||||
msgstr "이 작업에는 Windows Media Player가 필요합니다! 운영 체제에서 Windows Media Player를 "
|
||||
"활성화하시겠습니까?"
|
||||
msgstr ""
|
||||
"이 작업에는 Windows Media Player가 필요합니다! 운영 체제에서 Windows Media "
|
||||
"Player를 활성화하시겠습니까?"
|
||||
|
||||
msgid ""
|
||||
"BambuSource has not correctly been registered for media playing! Press Yes "
|
||||
|
@ -8280,6 +8264,9 @@ msgid ""
|
|||
"play video. (Try installing the gstreamer1.0-plugins-bad or gstreamer1.0-"
|
||||
"libav packages, then restart Orca Slicer?)"
|
||||
msgstr ""
|
||||
"시스템에 동영상 재생을 위해 필요한 GStreamer용 H.264 코덱이 존재하지 않습니"
|
||||
"다. (gstreamer1.0-plugins-bad 또는 gstreamer1.0-libav 패키지를 설치한 다음 "
|
||||
"Orca Slicer를 다시 실행하십시오.)"
|
||||
|
||||
msgid "Bambu Network plug-in not detected."
|
||||
msgstr "뱀부 네트워크 플러그인이 감지되지 않습니다."
|
||||
|
@ -10107,7 +10094,8 @@ msgid ""
|
|||
"Insert Gcode between objects. This parameter will only come into effect when "
|
||||
"you print your models object by object"
|
||||
msgstr ""
|
||||
"개체 사이에 G코드를 삽입하세요. 이 매개변수는 개체별 출력을 사용할 때만 적용됩니다."
|
||||
"개체 사이에 G코드를 삽입하세요. 이 매개변수는 개체별 출력을 사용할 때만 적용"
|
||||
"됩니다."
|
||||
|
||||
msgid "End G-code when finish the printing of this filament"
|
||||
msgstr "이 필라멘트의 출력이 끝날때의 종료 G코드"
|
||||
|
@ -10545,14 +10533,35 @@ msgid "Filament unload time"
|
|||
msgstr "필라멘트 빼기 시간"
|
||||
|
||||
msgid "Time to unload old filament when switch filament. For statistics only"
|
||||
msgstr "필라멘트를 교체할 때 기존 필라멘트를 빼는 시간입니다. 통계에만 사용됩니다"
|
||||
msgstr ""
|
||||
"필라멘트를 교체할 때 기존 필라멘트를 빼는 시간입니다. 통계에만 사용됩니다"
|
||||
|
||||
msgid ""
|
||||
"Filament diameter is used to calculate extrusion in gcode, so it's important "
|
||||
"and should be accurate"
|
||||
msgstr ""
|
||||
"필라멘트 직경은 G코드에서 압출량을 계산하는데 사용되므로 중요하며 정확해야 합니"
|
||||
"다"
|
||||
"필라멘트 직경은 G코드에서 압출량을 계산하는데 사용되므로 중요하며 정확해야 합"
|
||||
"니다"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr "펠릿 유량 계수"
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
"펠릿 유량 계수는 경험적으로 추산되며 펠릿 프린터에서의 부피 계산에 사용됩니"
|
||||
"다.\n"
|
||||
"\n"
|
||||
"내부적으로 이 값은 filament_diameter로 변환됩니다. 다른 부피 계산은 영향을 받"
|
||||
"지 않습니다.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr "수축"
|
||||
|
@ -10566,7 +10575,8 @@ msgid ""
|
|||
"after the checks."
|
||||
msgstr ""
|
||||
"냉각 후 필라멘트가 얻게 될 수축률을 입력합니다(100mm 대신 94mm를 측정하는 경"
|
||||
"우 94%). 출력물은 xy 방향으로 보정됩니다. 외벽에 사용되는 필라멘트에만 적용됩니다.\n"
|
||||
"우 94%). 출력물은 xy 방향으로 보정됩니다. 외벽에 사용되는 필라멘트에만 적용됩"
|
||||
"니다.\n"
|
||||
"이 보정은 확인 후 수행되므로 개체 사이에 충분한 공간을 허용해야 합니다."
|
||||
|
||||
msgid "Loading speed"
|
||||
|
@ -11295,6 +11305,12 @@ msgstr "프린터와 호환되는 G코드 종류"
|
|||
msgid "Klipper"
|
||||
msgstr "Klipper"
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr "펠릿 프린터"
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr "프린터가 필라멘트 대신 펠릿을 사용할 경우 활성화하세요"
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr "멀티 배드 유형 지원"
|
||||
|
||||
|
@ -11409,6 +11425,58 @@ msgstr "분할된 영역의 연동 깊이"
|
|||
msgid "Interlocking depth of a segmented region. Zero disables this feature."
|
||||
msgstr "분할된 영역의 깊이를 연동합니다. 0은 이 기능을 비활성화합니다."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr "인터로킹 빔 사용"
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
"서로 다른 필라멘트가 접촉하는 곳에 맞물리는 구조의 (인터로킹) 빔을 생성합니"
|
||||
"다. 이 기능은 필라멘트 간의 결합력을 향상시키며, 서로 다른 재료로 출력한 모델"
|
||||
"에 특히 유용합니다."
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr "인터로킹 빔 너비"
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr "인터로킹 빔 구조의 너비"
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr "맞물림 방향"
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr "인터로킹 빔의 배치 방향"
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr "인터로킹 빔 레이어 수"
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
"맞물림 구조의 높이를 레이어 수로 나타낸 값입니다. 레이어 수가 적을수록 강도"
|
||||
"가 올라가나, 결함이 발생하기 더 쉬워집니다."
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr "맞물림 깊이"
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
"필라멘트 간의 접촉면으로부터 맞물림 구조를 생성할 거리를 셀의 수로 나타낸 값"
|
||||
"입니다. 너무 적은 수의 셀을 사용할 경우 결합력이 저하될 수 있습니다."
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr "맞물림 방지 거리"
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr "모델의 외벽으로부터 맞물림 구조를 생성하기 시작할 거리를 설정합니다."
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "다림질 유형"
|
||||
|
||||
|
@ -12092,6 +12160,14 @@ msgstr "경사"
|
|||
msgid "Spiral"
|
||||
msgstr "나선형"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "Z값 위에서만 올리기"
|
||||
|
||||
|
@ -14176,6 +14252,22 @@ msgid ""
|
|||
"cause the result not exactly the same in each calibration. We are still "
|
||||
"investigating the root cause to do improvements with new updates."
|
||||
msgstr ""
|
||||
"우리 위키에서 동적 유량 교정에 대한 자세한 내용을 찾아보세요.\n"
|
||||
"\n"
|
||||
"일반적으로 교정은 필요하지 않습니다. 출력 시작 메뉴에서 \"동적 유량 교정\" 옵"
|
||||
"션을 선택한 상태에서 단일 색상/재료 출력을 시작하면 프린터는 이전 방식을 따르"
|
||||
"며 출력 전에 필라멘트를 교정합니다. 다중 색상/재료 출력을 시작하면 프린터는 "
|
||||
"모든 필라멘트 전환 중에 필라멘트에 대한 기본 보상 매개변수를 사용하므로 대부"
|
||||
"분의 경우 좋은 결과를 얻을 수 있습니다.\n"
|
||||
"\n"
|
||||
"교정 결과를 신뢰할 수 없게 만드는 몇 가지 경우가 있습니다. 텍스처 플레이트를 "
|
||||
"사용하여 보정을 수행합니다. 빌드 플레이트의 접착력이 좋지 않습니다. (빌드 플"
|
||||
"레이트를 세척하거나 풀을 바르십시오!) ...위키에서 자세한 내용을 확인할 수 있"
|
||||
"습니다.\n"
|
||||
"\n"
|
||||
"테스트에서 교정 결과에는 약 10%의 오차가 있으며, 이로 인해 각 교정에서 결과"
|
||||
"가 정확히 동일하지 않을 수 있습니다. 새로운 업데이트로 개선하기 위해 근본 원"
|
||||
"인을 계속 조사하고 있습니다."
|
||||
|
||||
msgid "When to use Flow Rate Calibration"
|
||||
msgstr "유량 교정을 사용해야 하는 경우"
|
||||
|
@ -14299,7 +14391,8 @@ msgid ""
|
|||
"Only one of the results with the same name will be saved. Are you sure you "
|
||||
"want to override the other results?"
|
||||
msgstr ""
|
||||
"단 하나의 결과만을 같은 이름으로 저장할 수 있습니다. 다른 결과들을 덮어쓸까요?"
|
||||
"단 하나의 결과만을 같은 이름으로 저장할 수 있습니다. 다른 결과들을 덮어쓸까"
|
||||
"요?"
|
||||
|
||||
msgid "Please find the best line on your plate"
|
||||
msgstr "당신의 플레이트에서 가장 좋은 선을 찾아보세요"
|
||||
|
@ -14915,7 +15008,7 @@ msgid "Create Type"
|
|||
msgstr "유형 생성"
|
||||
|
||||
msgid "The model is not fond, place reselect vendor."
|
||||
msgstr "모델이 마음에 들지 않으면 공급업체를 다시 선택하세요."
|
||||
msgstr "모델을 찾을 수 없습니다. 공급업체를 다시 선택하세요."
|
||||
|
||||
msgid "Select Model"
|
||||
msgstr "모델 선택"
|
||||
|
@ -15781,7 +15874,8 @@ msgid ""
|
|||
"consistency?"
|
||||
msgstr ""
|
||||
"정밀한 벽\n"
|
||||
"정밀한 벽을 켜면 정밀도와 레이어 일관성이 향상될 수 있다는 사실을 알고 계셨나요?"
|
||||
"정밀한 벽을 켜면 정밀도와 레이어 일관성이 향상될 수 있다는 사실을 알고 계셨나"
|
||||
"요?"
|
||||
|
||||
#: resources/data/hints.ini: [hint:Sandwich mode]
|
||||
msgid ""
|
||||
|
@ -15939,8 +16033,8 @@ msgid ""
|
|||
"Slicer setting?"
|
||||
msgstr ""
|
||||
"검색 기능\n"
|
||||
"검색 도구를 사용하여 원하는 Orca Slicer 설정을 빠르게 찾을 수 있다는 사실을 알고 "
|
||||
"계섰나요?"
|
||||
"검색 도구를 사용하여 원하는 Orca Slicer 설정을 빠르게 찾을 수 있다는 사실을 "
|
||||
"알고 계섰나요?"
|
||||
|
||||
#: resources/data/hints.ini: [hint:Simplify Model]
|
||||
msgid ""
|
||||
|
@ -15981,8 +16075,8 @@ msgid ""
|
|||
msgstr ""
|
||||
"부품 빼기\n"
|
||||
"네거티브 부분 수정자를 사용하여 하나의 메시를 다른 메시에서 뺄 수 있다는 것"
|
||||
"을 알고 계섰나요? 예를 들어, 이렇게 하면 Orca Slicer에서 직접 쉽게 크기 조"
|
||||
"정이 가능한 구멍을 만들 수 있습니다."
|
||||
"을 알고 계섰나요? 예를 들어, 이렇게 하면 Orca Slicer에서 직접 쉽게 크기 조정"
|
||||
"이 가능한 구멍을 만들 수 있습니다."
|
||||
|
||||
#: resources/data/hints.ini: [hint:STEP]
|
||||
msgid ""
|
||||
|
@ -15995,8 +16089,8 @@ msgstr ""
|
|||
"STEP\n"
|
||||
"STL 대신 STEP 파일을 슬라이싱하여 출력 품질을 향상시킬 수 있다는 사실을 알고 "
|
||||
"계섰나요?\n"
|
||||
"Orca Slicer는 STEP 파일 슬라이싱을 지원하며, 저해상도 STL을 사용할 때 보다 더 "
|
||||
"부드러운 결과를 얻을 수 있습니다. 시도해 보세요!"
|
||||
"Orca Slicer는 STEP 파일 슬라이싱을 지원하며, 저해상도 STL을 사용할 때 보다 "
|
||||
"더 부드러운 결과를 얻을 수 있습니다. 시도해 보세요!"
|
||||
|
||||
#: resources/data/hints.ini: [hint:Z seam location]
|
||||
msgid ""
|
||||
|
@ -16018,8 +16112,8 @@ msgid ""
|
|||
"printed model by doing some fine-tuning."
|
||||
msgstr ""
|
||||
"유량 미세 조정\n"
|
||||
"더 보기 좋은 출력물을 위해 유량을 미세 조정할 수 있다는 사실을 알고 계셨나요? "
|
||||
"재료에 따라 약간의 미세 조정을 통해 출력된 모델의 전체적인 마감을 개선할 "
|
||||
"더 보기 좋은 출력물을 위해 유량을 미세 조정할 수 있다는 사실을 알고 계셨나"
|
||||
"요? 재료에 따라 약간의 미세 조정을 통해 출력된 모델의 전체적인 마감을 개선할 "
|
||||
"수 있습니다."
|
||||
|
||||
#: resources/data/hints.ini: [hint:Split your prints into plates]
|
||||
|
@ -16075,9 +16169,8 @@ msgid ""
|
|||
"the best results."
|
||||
msgstr ""
|
||||
"실크 필라멘트 출력\n"
|
||||
"실크 필라멘트를 성공적으로 출력하려면 특별한 주의가 필요하다는 사실을 알고 "
|
||||
"계셨나요? 최상의 결과를 얻으려면 항상 더 높은 온도와 더 낮은 속도를 권장합니"
|
||||
"다."
|
||||
"실크 필라멘트를 성공적으로 출력하려면 특별한 주의가 필요하다는 사실을 알고 계"
|
||||
"셨나요? 최상의 결과를 얻으려면 항상 더 높은 온도와 더 낮은 속도를 권장합니다."
|
||||
|
||||
#: resources/data/hints.ini: [hint:Brim for better adhesion]
|
||||
msgid ""
|
||||
|
@ -16114,8 +16207,8 @@ msgid ""
|
|||
"support/objects/infill during filament change?"
|
||||
msgstr ""
|
||||
"지지대/개체/채우기에 내보내기\n"
|
||||
"필라멘트를 교체하는 동안 낭비되는 필라멘트를 지지대/개체/채우기 출력에 활용할 "
|
||||
"수 있다는 사실을 알고 계섰나요?"
|
||||
"필라멘트를 교체하는 동안 낭비되는 필라멘트를 지지대/개체/채우기 출력에 활용"
|
||||
"할 수 있다는 사실을 알고 계섰나요?"
|
||||
|
||||
#: resources/data/hints.ini: [hint:Improve strength]
|
||||
msgid ""
|
||||
|
@ -16124,8 +16217,8 @@ msgid ""
|
|||
"density to improve the strength of the model?"
|
||||
msgstr ""
|
||||
"강도 향상\n"
|
||||
"더 많은 외벽과 더 높은 드문 채우기 밀도를 사용하여 모델의 강도를 높일 수 "
|
||||
"있다는 사실을 알고 계섰나요?"
|
||||
"더 많은 외벽과 더 높은 드문 채우기 밀도를 사용하여 모델의 강도를 높일 수 있다"
|
||||
"는 사실을 알고 계섰나요?"
|
||||
|
||||
#: resources/data/hints.ini: [hint:When need to print with the printer door
|
||||
#: opened]
|
||||
|
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Orca Slicer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"Language: nl\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -5806,6 +5806,9 @@ msgstr "Instellingen vergelijken"
|
|||
msgid "View all object's settings"
|
||||
msgstr "Alle instellingen van het object weergeven"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -5882,6 +5885,9 @@ msgstr "Stel filamenten in om te gebruiken"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Zoek plaat, object en onderdeel."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6501,6 +6507,21 @@ msgstr "Browsen"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Kies Downloadmap"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "Algemene instellingen"
|
||||
|
||||
|
@ -6709,36 +6730,6 @@ msgstr ""
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr ""
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Maximum recent projects"
|
||||
|
||||
|
@ -10607,6 +10598,19 @@ msgstr ""
|
|||
"Filamentdiameter wordt gebruikt om de extrusie in de G-code te berekenen, "
|
||||
"het is dus belangrijk dat deze nauwkeurig wordt ingegeven"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr ""
|
||||
|
||||
|
@ -11304,6 +11308,12 @@ msgstr "Het type G-code waarmee de printer compatibel is"
|
|||
msgid "Klipper"
|
||||
msgstr ""
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr ""
|
||||
|
||||
|
@ -11409,6 +11419,51 @@ msgid "Interlocking depth of a segmented region. Zero disables this feature."
|
|||
msgstr ""
|
||||
"Insluitdiepte van een gesegmenteerd gebied. Nul schakelt deze functie uit."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Strijk type"
|
||||
|
||||
|
@ -12061,6 +12116,14 @@ msgstr "Helling"
|
|||
msgid "Spiral"
|
||||
msgstr "Spiraal"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "Beweeg Z alleen omhoog boven"
|
||||
|
||||
|
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: OrcaSlicer 2.1\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: \n"
|
||||
"Last-Translator: Krzysztof Morga <tlumaczeniebs@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
|
@ -5881,6 +5881,9 @@ msgstr "Porównaj profile"
|
|||
msgid "View all object's settings"
|
||||
msgstr "Wyświetl wszystkie ustawienia obiektów"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr "Ustawienia materiału"
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr "Usuń bieżący stół (jeśli nie jest ostatnim)"
|
||||
|
||||
|
@ -5957,6 +5960,9 @@ msgstr "Wybierz filamenty do użycia"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Szukaj stołu, obiektu i części."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr "Granulat"
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6579,6 +6585,21 @@ msgstr "Przeglądaj"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Wybierz Katalog Pobierania"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr "Powiąż"
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr "aktualne skojarzenie z OrcaSlicer, aby Orca mogła otwierać modele z"
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr "Aktualnie powiązano:"
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr "Aktualna instancja"
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr "Aktualna ścieżka instancji:"
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "Ustawienia Ogólne"
|
||||
|
||||
|
@ -6799,42 +6820,6 @@ msgstr "Powiąż linki z OrcaSlicer"
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr "Powiąż URL z OrcaSlicer"
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr "Aktualnie powiązano: "
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr "z prusaslicer://"
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr "Nie skojarzony z żadną aplikacją"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
"Powiąż OrcaSlicer z linkami prusaslicer://, aby Orca mogła otwierać modele z "
|
||||
"Printable.com"
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr "z bambustudio://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
"Powiąż OrcaSlicer z linkami bambustudio://, aby Orca mogła otwierać modele z "
|
||||
"makerworld.com"
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr "z cura://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
"Powiąż OrcaSlicer z linkami cura://, aby Orca mogła otwierać modele z "
|
||||
"thingiverse.com"
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Maksymalna liczba ostatnich projektów"
|
||||
|
||||
|
@ -10950,6 +10935,26 @@ msgstr ""
|
|||
"Średnica filamentu jest używana do obliczania ekstruzji w G-code, więc jest "
|
||||
"bardzo ważna i powinna być dokładna"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr "Współczynnik przepływu granulatu"
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
"Współczynnik przepływu granulatu (Pellet) jest empirycznie wyprowadzony i "
|
||||
"umożliwia obliczanie objętości w drukarkach korzystających z granulatów.\n"
|
||||
"\n"
|
||||
"Wewnętrznie jest przeliczany na średnicę filamentu. Wszystkie pozostałe "
|
||||
"obliczenia objętości pozostają bez zmian.\n"
|
||||
"\n"
|
||||
"średnica_filamentu = sqrt( (4 * współczynnik_przepływu_granulatu) / PI )"
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr "Skurcz"
|
||||
|
||||
|
@ -11739,6 +11744,12 @@ msgstr "Z jakim rodzajem G-code drukarka jest kompatybilna"
|
|||
msgid "Klipper"
|
||||
msgstr "Klipper"
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr "Drukarka do druku granulatem"
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr "Włącz tę opcję, jeśli Twoja drukarka używa granulatu zamiast filamentu"
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr "Wspiera różne typy płyt roboczych"
|
||||
|
||||
|
@ -11860,6 +11871,51 @@ msgid "Interlocking depth of a segmented region. Zero disables this feature."
|
|||
msgstr ""
|
||||
"Głębokość blokowania obszaru segmentowego. Wartość zero wyłącza tę funkcję."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Rodzaj prasowania"
|
||||
|
||||
|
@ -12590,6 +12646,16 @@ msgstr "Ukośny"
|
|||
msgid "Spiral"
|
||||
msgstr "Spiralny"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr "Kąt ruchu"
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
"Kąt ruchu dla typu Z-hop: \"Ukośny\" i \"Spiralny\". Ustawienie go na 90° "
|
||||
"skutkuje standardowym uniesieniem."
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "Z-hop tylko powyżej"
|
||||
|
||||
|
@ -12701,7 +12767,7 @@ msgid "Aligned"
|
|||
msgstr "Wyrównany"
|
||||
|
||||
msgid "Back"
|
||||
msgstr "Z tyłu"
|
||||
msgstr "Tył"
|
||||
|
||||
msgid "Random"
|
||||
msgstr "Losowo"
|
||||
|
@ -15209,7 +15275,7 @@ msgid "PETG"
|
|||
msgstr "PETG"
|
||||
|
||||
msgid "PCTG"
|
||||
msgstr ""
|
||||
msgstr "PCTG"
|
||||
|
||||
msgid "TPU"
|
||||
msgstr "TPU"
|
||||
|
@ -15310,7 +15376,7 @@ msgid "Upload to storage"
|
|||
msgstr "Prześlij do pamięci"
|
||||
|
||||
msgid "Switch to Device tab after upload."
|
||||
msgstr ""
|
||||
msgstr "Przełącz na zakładkę \"Urządzenie\" po przesłaniu zadania"
|
||||
|
||||
#, c-format, boost-format
|
||||
msgid "Upload filename doesn't end with \"%s\". Do you wish to continue?"
|
||||
|
@ -16002,10 +16068,11 @@ msgid "Refresh Printers"
|
|||
msgstr "Odśwież drukarki"
|
||||
|
||||
msgid "View print host webui in Device tab"
|
||||
msgstr ""
|
||||
msgstr "Wyświetl interfejs użytkownika serwera druku w zakładce \"Urządzenie\""
|
||||
|
||||
msgid "Replace the BambuLab's device tab with print host webui"
|
||||
msgstr ""
|
||||
"Zamień zakładkę urządzeń BambuLab na interfejs użytkownika serwera druku"
|
||||
|
||||
msgid ""
|
||||
"HTTPS CA file is optional. It is only needed if you use HTTPS with a self-"
|
||||
|
@ -16454,7 +16521,7 @@ msgid "Could not connect to SimplyPrint"
|
|||
msgstr "Nie można połączyć się z SimplyPrint"
|
||||
|
||||
msgid "Internal error"
|
||||
msgstr ""
|
||||
msgstr "Błąd wewnętrzny"
|
||||
|
||||
msgid "Unknown error"
|
||||
msgstr "Nieznany błąd"
|
||||
|
@ -16870,6 +16937,42 @@ msgstr ""
|
|||
"takimi jak ABS, odpowiednie zwiększenie temperatury podgrzewanej płyty może "
|
||||
"zmniejszyć prawdopodobieństwo odkształceń."
|
||||
|
||||
#~ msgid "Current association: "
|
||||
#~ msgstr "Aktualnie powiązano: "
|
||||
|
||||
#~ msgid "Associate prusaslicer://"
|
||||
#~ msgstr "z prusaslicer://"
|
||||
|
||||
#~ msgid "Not associated to any application"
|
||||
#~ msgstr "Nie skojarzony z żadną aplikacją"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with prusaslicer:// links so that Orca can open "
|
||||
#~ "models from Printable.com"
|
||||
#~ msgstr ""
|
||||
#~ "Powiąż OrcaSlicer z linkami prusaslicer://, aby Orca mogła otwierać "
|
||||
#~ "modele z Printable.com"
|
||||
|
||||
#~ msgid "Associate bambustudio://"
|
||||
#~ msgstr "z bambustudio://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with bambustudio:// links so that Orca can open "
|
||||
#~ "models from makerworld.com"
|
||||
#~ msgstr ""
|
||||
#~ "Powiąż OrcaSlicer z linkami bambustudio://, aby Orca mogła otwierać "
|
||||
#~ "modele z makerworld.com"
|
||||
|
||||
#~ msgid "Associate cura://"
|
||||
#~ msgstr "z cura://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
#~ "thingiverse.com"
|
||||
#~ msgstr ""
|
||||
#~ "Powiąż OrcaSlicer z linkami cura://, aby Orca mogła otwierać modele z "
|
||||
#~ "thingiverse.com"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "File size exceeds the 100MB upload limit. Please upload your file through "
|
||||
#~ "the panel."
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
msgid ""
|
||||
msgstr ""
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: 2024-06-01 21:51-0300\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: Portuguese, Brazilian\n"
|
||||
|
@ -5876,6 +5876,9 @@ msgstr "Comparar presets"
|
|||
msgid "View all object's settings"
|
||||
msgstr "Ver todas as configurações do objeto"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr "Remover a mesa atual (se não for a última)"
|
||||
|
||||
|
@ -5952,6 +5955,9 @@ msgstr "Definir filamentos para usar"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Pesquisar mesa, objeto e peça."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6576,6 +6582,21 @@ msgstr "Procurar"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Escolha o Diretório de Download"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "Configurações Gerais"
|
||||
|
||||
|
@ -6786,42 +6807,6 @@ msgstr "Associar links da web ao OrcaSlicer"
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr "Associar URLs ao OrcaSlicer"
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr "Associação atual: "
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr "Associar prusaslicer://"
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr "Não associado a nenhum aplicativo"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
"Associar OrcaSlicer com links prusaslicer:// para que o Orca possa abrir "
|
||||
"modelos do Printable.com"
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr "Associar bambustudio://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
"Associar OrcaSlicer com bambustudio:// para que o Orca possa abrir modelos "
|
||||
"de makerworld.com"
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr "Associar cura://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
"Associar OrcaSlicer com links cura:// para que o Orca possa abrir modelos do "
|
||||
"thingiverse.com"
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Máximo de projetos recentes"
|
||||
|
||||
|
@ -10905,6 +10890,19 @@ msgstr ""
|
|||
"O diâmetro do filamento é usado para calcular a extrusão no gcode, portanto, "
|
||||
"é importante e deve ser preciso"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr "Retração"
|
||||
|
||||
|
@ -11703,6 +11701,12 @@ msgstr "Com que tipo de G-code a impressora é compatível"
|
|||
msgid "Klipper"
|
||||
msgstr "Klipper"
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr "Suportar vários tipos de mesa"
|
||||
|
||||
|
@ -11826,6 +11830,51 @@ msgstr ""
|
|||
"Profundidade de entrelaçamento de uma região segmentada. Zero desativa essa "
|
||||
"funcionalidade."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Tipo do passar ferro"
|
||||
|
||||
|
@ -12545,6 +12594,14 @@ msgstr "Declive"
|
|||
msgid "Spiral"
|
||||
msgstr "Espiral"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "Elevar Z apenas acima de"
|
||||
|
||||
|
@ -16800,6 +16857,42 @@ msgstr ""
|
|||
"aumentar adequadamente a temperatura da mesa aquecida pode reduzir a "
|
||||
"probabilidade de empenamento?"
|
||||
|
||||
#~ msgid "Current association: "
|
||||
#~ msgstr "Associação atual: "
|
||||
|
||||
#~ msgid "Associate prusaslicer://"
|
||||
#~ msgstr "Associar prusaslicer://"
|
||||
|
||||
#~ msgid "Not associated to any application"
|
||||
#~ msgstr "Não associado a nenhum aplicativo"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with prusaslicer:// links so that Orca can open "
|
||||
#~ "models from Printable.com"
|
||||
#~ msgstr ""
|
||||
#~ "Associar OrcaSlicer com links prusaslicer:// para que o Orca possa abrir "
|
||||
#~ "modelos do Printable.com"
|
||||
|
||||
#~ msgid "Associate bambustudio://"
|
||||
#~ msgstr "Associar bambustudio://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with bambustudio:// links so that Orca can open "
|
||||
#~ "models from makerworld.com"
|
||||
#~ msgstr ""
|
||||
#~ "Associar OrcaSlicer com bambustudio:// para que o Orca possa abrir "
|
||||
#~ "modelos de makerworld.com"
|
||||
|
||||
#~ msgid "Associate cura://"
|
||||
#~ msgstr "Associar cura://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
#~ "thingiverse.com"
|
||||
#~ msgstr ""
|
||||
#~ "Associar OrcaSlicer com links cura:// para que o Orca possa abrir modelos "
|
||||
#~ "do thingiverse.com"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "File size exceeds the 100MB upload limit. Please upload your file through "
|
||||
#~ "the panel."
|
||||
|
|
|
@ -7,7 +7,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: OrcaSlicer V2.0.0 Official Release\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 21:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: 2024-06-19 16:50+0700\n"
|
||||
"Last-Translator: \n"
|
||||
"Language-Team: andylg@yandex.ru\n"
|
||||
|
@ -15,8 +15,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && "
|
||||
"n%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n"
|
||||
"%10<=4 && (n%100<12 || n%100>14) ? 1 : 2);\n"
|
||||
"X-Generator: Poedit 3.4.2\n"
|
||||
|
||||
msgid "Supports Painting"
|
||||
|
@ -3152,8 +3152,8 @@ msgid ""
|
|||
"Detects clogging and filament grinding, halting printing immediately to "
|
||||
"conserve time and filament."
|
||||
msgstr ""
|
||||
"При обнаружении засорения сопла или истирания прутка, печать немедленно прекращается "
|
||||
"для экономии времени и материала."
|
||||
"При обнаружении засорения сопла или истирания прутка, печать немедленно "
|
||||
"прекращается для экономии времени и материала."
|
||||
|
||||
msgid "File"
|
||||
msgstr "Файл"
|
||||
|
@ -5915,6 +5915,9 @@ msgstr "Сравнение профилей"
|
|||
msgid "View all object's settings"
|
||||
msgstr "Просмотр всех настроек модели"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr "Удалить текущую печатную пластину (кроме последней)"
|
||||
|
||||
|
@ -5991,6 +5994,9 @@ msgstr "Выбор пластиковой нити"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Поиск печатной пластины, модели или части модели."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6611,6 +6617,21 @@ msgstr "Обзор"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Выбор папки загрузки"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr "Ассоциация"
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr "Текущая ассоциация: "
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "Общие настройки"
|
||||
|
||||
|
@ -6839,45 +6860,6 @@ msgstr "Сопоставление веб-ссылок с OrcaSlicer"
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr "Ассоциировать URL-адреса с OrcaSlicer"
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr "Текущая ассоциация: "
|
||||
|
||||
msgid "Associate"
|
||||
msgstr "Ассоциация"
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr "Ассоциация c prusaslicer://"
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr "Нет ассоциации ни с одним приложением"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
"Ассоциировать OrcaSlicer с ссылками prusaslicer://, чтобы она могла "
|
||||
"открывать модели сразу с printable.com"
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr "Ассоциация c bambustudio://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
"Ассоциировать OrcaSlicer с ссылками bambustudio://, чтобы она могла "
|
||||
"открывать модели сразу с makerworld.com"
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr "Ассоциация c cura://"
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
"Ассоциировать OrcaSlicer с ссылками bambustudio://, чтобы она могла "
|
||||
"открывать модели сразу с thingiverse.com"
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Максимальное количество недавних проектов"
|
||||
|
||||
|
@ -7559,8 +7541,8 @@ msgid ""
|
|||
"Bambu Lab Privacy Policy, please do not use Bambu Lab equipment and services."
|
||||
msgstr ""
|
||||
"Перед использованием устройства Bambu Lab ознакомьтесь с правилами и "
|
||||
"условиями. Нажимая на кнопку \"Согласие на использование устройства Bambu "
|
||||
"Lab\", вы соглашаетесь соблюдать Политику конфиденциальности и Условия "
|
||||
"условиями. Нажимая на кнопку \"Согласие на использование устройства Bambu Lab"
|
||||
"\", вы соглашаетесь соблюдать Политику конфиденциальности и Условия "
|
||||
"использования (далее - \"Условия\"). Если вы не соблюдаете или не согласны с "
|
||||
"Политикой конфиденциальности Bambu Lab, пожалуйста, не пользуйтесь "
|
||||
"оборудованием и услугами Bambu Lab."
|
||||
|
@ -7764,8 +7746,8 @@ msgstr ""
|
|||
msgid ""
|
||||
"When recording timelapse without toolhead, it is recommended to add a "
|
||||
"\"Timelapse Wipe Tower\" \n"
|
||||
"by right-click the empty position of build plate and choose \"Add "
|
||||
"Primitive\"->\"Timelapse Wipe Tower\"."
|
||||
"by right-click the empty position of build plate and choose \"Add Primitive"
|
||||
"\"->\"Timelapse Wipe Tower\"."
|
||||
msgstr ""
|
||||
"При записи таймлапса без видимости головы рекомендуется добавить «Черновая "
|
||||
"башня таймлапса». \n"
|
||||
|
@ -9972,6 +9954,7 @@ msgstr ""
|
|||
msgid "Cooling overhang threshold"
|
||||
msgstr "Порог включения обдува на нависаниях"
|
||||
|
||||
#, fuzzy, c-format
|
||||
msgid ""
|
||||
"Force cooling fan to be specific speed when overhang degree of printed part "
|
||||
"exceeds this value. Expressed as percentage which indicides how much width "
|
||||
|
@ -11029,6 +11012,19 @@ msgstr ""
|
|||
"Диаметр пластиковой нити используется для расчёта экструзии, поэтому он "
|
||||
"важен и должен быть точным"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr "Усадка материала"
|
||||
|
||||
|
@ -11532,17 +11528,17 @@ msgstr "Полная скорость вентилятора на слое"
|
|||
|
||||
msgid ""
|
||||
"Fan speed will be ramped up linearly from zero at layer "
|
||||
"\"close_fan_the_first_x_layers\" to maximum at layer "
|
||||
"\"full_fan_speed_layer\". \"full_fan_speed_layer\" will be ignored if lower "
|
||||
"than \"close_fan_the_first_x_layers\", in which case the fan will be running "
|
||||
"at maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
|
||||
"\"close_fan_the_first_x_layers\" to maximum at layer \"full_fan_speed_layer"
|
||||
"\". \"full_fan_speed_layer\" will be ignored if lower than "
|
||||
"\"close_fan_the_first_x_layers\", in which case the fan will be running at "
|
||||
"maximum allowed speed at layer \"close_fan_the_first_x_layers\" + 1."
|
||||
msgstr ""
|
||||
"Скорость вентилятора будет нарастать линейно от нуля на слое "
|
||||
"\"close_fan_the_first_x_layers\" до максимума на слое "
|
||||
"\"full_fan_speed_layer\". Значение \"full_fan_speed_layer\" будет "
|
||||
"игнорироваться, если оно меньше значения \"close_fan_the_first_x_layers\", в "
|
||||
"этом случае вентилятор будет работать на максимально допустимой скорости на "
|
||||
"слое \"close_fan_the_first_x_layers\" + 1."
|
||||
"\"close_fan_the_first_x_layers\" до максимума на слое \"full_fan_speed_layer"
|
||||
"\". Значение \"full_fan_speed_layer\" будет игнорироваться, если оно меньше "
|
||||
"значения \"close_fan_the_first_x_layers\", в этом случае вентилятор будет "
|
||||
"работать на максимально допустимой скорости на слое "
|
||||
"\"close_fan_the_first_x_layers\" + 1."
|
||||
|
||||
msgid "layer"
|
||||
msgstr "слой"
|
||||
|
@ -11823,6 +11819,12 @@ msgstr "Выбор типа G-кода совместимым с вашим пр
|
|||
msgid "Klipper"
|
||||
msgstr "Klipper"
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr "Поддержка нескольких типов столов"
|
||||
|
||||
|
@ -11948,6 +11950,51 @@ msgstr ""
|
|||
"Глубина взаимосвязи сегментированной области. Установите 0 для отключения "
|
||||
"этой функции."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Тип разглаживания"
|
||||
|
||||
|
@ -12672,6 +12719,14 @@ msgstr "Наклонный"
|
|||
msgid "Spiral"
|
||||
msgstr "Спиральный"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "Приподнимать ось Z только выше"
|
||||
|
||||
|
@ -13024,8 +13079,8 @@ msgid ""
|
|||
"distance from the object. Therefore, if brims are active it may intersect "
|
||||
"with them. To avoid this, increase the skirt distance value.\n"
|
||||
msgstr ""
|
||||
"Защитный кожух полезен для защиты материалов типа ABS, ASA от деформации "
|
||||
"и отрыва от стола из-за внешнего воздушного потока. Обычно защитный кожух "
|
||||
"Защитный кожух полезен для защиты материалов типа ABS, ASA от деформации и "
|
||||
"отрыва от стола из-за внешнего воздушного потока. Обычно защитный кожух "
|
||||
"необходим только для принтеров без камеры.\n"
|
||||
"\n"
|
||||
"Опции:\n"
|
||||
|
@ -15651,8 +15706,8 @@ msgstr ""
|
|||
"Хотите перезаписать его?"
|
||||
|
||||
msgid ""
|
||||
"We would rename the presets as \"Vendor Type Serial @printer you "
|
||||
"selected\". \n"
|
||||
"We would rename the presets as \"Vendor Type Serial @printer you selected"
|
||||
"\". \n"
|
||||
"To add preset for more printers, Please go to printer selection"
|
||||
msgstr ""
|
||||
"Мы переименуем профиль в \"Производитель Тип Серия @выбранный принтер\".\n"
|
||||
|
@ -16970,3 +17025,36 @@ msgstr ""
|
|||
"Знаете ли вы, что при печати материалами, склонными к короблению, таких как "
|
||||
"ABS, повышение температуры подогреваемого стола может снизить эту "
|
||||
"вероятность?"
|
||||
|
||||
#~ msgid "Associate prusaslicer://"
|
||||
#~ msgstr "Ассоциация c prusaslicer://"
|
||||
|
||||
#~ msgid "Not associated to any application"
|
||||
#~ msgstr "Нет ассоциации ни с одним приложением"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with prusaslicer:// links so that Orca can open "
|
||||
#~ "models from Printable.com"
|
||||
#~ msgstr ""
|
||||
#~ "Ассоциировать OrcaSlicer с ссылками prusaslicer://, чтобы она могла "
|
||||
#~ "открывать модели сразу с printable.com"
|
||||
|
||||
#~ msgid "Associate bambustudio://"
|
||||
#~ msgstr "Ассоциация c bambustudio://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with bambustudio:// links so that Orca can open "
|
||||
#~ "models from makerworld.com"
|
||||
#~ msgstr ""
|
||||
#~ "Ассоциировать OrcaSlicer с ссылками bambustudio://, чтобы она могла "
|
||||
#~ "открывать модели сразу с makerworld.com"
|
||||
|
||||
#~ msgid "Associate cura://"
|
||||
#~ msgstr "Ассоциация c cura://"
|
||||
|
||||
#~ msgid ""
|
||||
#~ "Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
#~ "thingiverse.com"
|
||||
#~ msgstr ""
|
||||
#~ "Ассоциировать OrcaSlicer с ссылками bambustudio://, чтобы она могла "
|
||||
#~ "открывать модели сразу с thingiverse.com"
|
||||
|
|
|
@ -3,7 +3,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Orca Slicer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"Language: sv\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
|
@ -5731,6 +5731,9 @@ msgstr "Jämför inställningar"
|
|||
msgid "View all object's settings"
|
||||
msgstr "Se alla objektens inställningar"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr ""
|
||||
|
||||
|
@ -5807,6 +5810,9 @@ msgstr "Ställ in filament som ska användas"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "Sök platta, objekt och del."
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr ""
|
||||
|
@ -6406,6 +6412,21 @@ msgstr "Sök"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "Välj Nedladdnings Register"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "Allmänna inställningar"
|
||||
|
||||
|
@ -6601,36 +6622,6 @@ msgstr ""
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr ""
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "Maximalt antal nyligen genomförda projekt"
|
||||
|
||||
|
@ -10405,6 +10396,19 @@ msgstr ""
|
|||
"Filament diametern används för att beräkna extruderingen i G-kod, viktigt "
|
||||
"att detta är rätt"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr ""
|
||||
|
||||
|
@ -11078,6 +11082,12 @@ msgstr "Vilken typ av G-kod är skrivaren kompatibel med"
|
|||
msgid "Klipper"
|
||||
msgstr ""
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr ""
|
||||
|
||||
|
@ -11181,6 +11191,51 @@ msgstr ""
|
|||
"Sammankopplingsdjup för en segmenterad region. Noll inaktiverar denna "
|
||||
"funktion."
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "Stryknings typ"
|
||||
|
||||
|
@ -11807,6 +11862,14 @@ msgstr "Lutning"
|
|||
msgid "Spiral"
|
||||
msgstr "Spiral"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr ""
|
||||
|
||||
|
|
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
|
@ -6,7 +6,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Slic3rPE\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: 2023-04-01 13:21+0800\n"
|
||||
"Last-Translator: SoftFever <softfeverever@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
|
@ -5599,6 +5599,9 @@ msgstr "比较预设"
|
|||
msgid "View all object's settings"
|
||||
msgstr "查看所有对象的配置"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr "移除当前板(如果不是最后一个)"
|
||||
|
||||
|
@ -5675,6 +5678,9 @@ msgstr "配置可选择的材料"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr "搜索盘、模型和零件。"
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
msgstr "没有发现AMS材料。请在“设备”页面选择打印机,将加载 AMS 信息"
|
||||
|
@ -6243,6 +6249,21 @@ msgstr "浏览"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "选择下载文件夹"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
msgid "General Settings"
|
||||
msgstr "通用设置"
|
||||
|
||||
|
@ -6431,36 +6452,6 @@ msgstr ""
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr ""
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "近期项目的最大数量"
|
||||
|
||||
|
@ -10161,6 +10152,19 @@ msgid ""
|
|||
"and should be accurate"
|
||||
msgstr "耗材丝直径被用于计算G-code文件中的挤出量。因此很重要,应尽可能精确。"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr "耗材收缩率"
|
||||
|
||||
|
@ -10837,6 +10841,12 @@ msgstr "打印机兼容的G-code风格'"
|
|||
msgid "Klipper"
|
||||
msgstr ""
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr "支持多种打印床类型"
|
||||
|
||||
|
@ -10942,6 +10952,51 @@ msgstr "分割区域的交错深度"
|
|||
msgid "Interlocking depth of a segmented region. Zero disables this feature."
|
||||
msgstr "分割区域的交错深度。0 则禁用此功能。"
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "熨烫类型"
|
||||
|
||||
|
@ -11571,6 +11626,14 @@ msgstr "梯形"
|
|||
msgid "Spiral"
|
||||
msgstr "螺旋"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "仅在高度以上抬Z"
|
||||
|
||||
|
|
|
@ -6,7 +6,7 @@ msgid ""
|
|||
msgstr ""
|
||||
"Project-Id-Version: Orca Slicer\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-21 20:03+0800\n"
|
||||
"POT-Creation-Date: 2024-06-30 15:44+0200\n"
|
||||
"PO-Revision-Date: 2023-11-06 14:37+0800\n"
|
||||
"Last-Translator: ablegods <ablegods@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
|
@ -5794,6 +5794,9 @@ msgstr "比較預設檔"
|
|||
msgid "View all object's settings"
|
||||
msgstr "查看所有物件的設定"
|
||||
|
||||
msgid "Material settings"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "Remove current plate (if not last one)"
|
||||
msgstr "刪除目前列印板(如果不是最後一個)"
|
||||
|
@ -5882,6 +5885,9 @@ msgstr "設定可選擇的線材"
|
|||
msgid "Search plate, object and part."
|
||||
msgstr ""
|
||||
|
||||
msgid "Pellets"
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid ""
|
||||
"No AMS filaments. Please select a printer in 'Device' page to load AMS info."
|
||||
|
@ -6468,6 +6474,21 @@ msgstr "瀏覽"
|
|||
msgid "Choose Download Directory"
|
||||
msgstr "選擇下載資料夾"
|
||||
|
||||
msgid "Associate"
|
||||
msgstr ""
|
||||
|
||||
msgid "with OrcaSlicer so that Orca can open models from"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current Instance Path: "
|
||||
msgstr ""
|
||||
|
||||
#, fuzzy
|
||||
msgid "General Settings"
|
||||
msgstr "一般設定"
|
||||
|
@ -6666,36 +6687,6 @@ msgstr ""
|
|||
msgid "Associate URLs to OrcaSlicer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Current association: "
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate prusaslicer://"
|
||||
msgstr ""
|
||||
|
||||
msgid "Not associated to any application"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with prusaslicer:// links so that Orca can open models "
|
||||
"from Printable.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate bambustudio://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with bambustudio:// links so that Orca can open models "
|
||||
"from makerworld.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Associate cura://"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Associate OrcaSlicer with cura:// links so that Orca can open models from "
|
||||
"thingiverse.com"
|
||||
msgstr ""
|
||||
|
||||
msgid "Maximum recent projects"
|
||||
msgstr "最近專案項目的最大數量"
|
||||
|
||||
|
@ -10501,6 +10492,19 @@ msgid ""
|
|||
"and should be accurate"
|
||||
msgstr "線材直徑被用於計算 G-code 檔案中的擠出量。因此很重要,應盡可能精確。"
|
||||
|
||||
msgid "Pellet flow coefficient"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Pellet flow coefficient is emperically derived and allows for volume "
|
||||
"calculation for pellet printers.\n"
|
||||
"\n"
|
||||
"Internally it is converted to filament_diameter. All other volume "
|
||||
"calculations remain the same.\n"
|
||||
"\n"
|
||||
"filament_diameter = sqrt( (4 * pellet_flow_coefficient) / PI )"
|
||||
msgstr ""
|
||||
|
||||
msgid "Shrinkage"
|
||||
msgstr "耗材收縮率"
|
||||
|
||||
|
@ -11214,6 +11218,12 @@ msgstr "列印設備相容的 G-code 樣式"
|
|||
msgid "Klipper"
|
||||
msgstr ""
|
||||
|
||||
msgid "Pellet Modded Printer"
|
||||
msgstr ""
|
||||
|
||||
msgid "Enable this option if your printer uses pellets instead of filaments"
|
||||
msgstr ""
|
||||
|
||||
msgid "Support multi bed types"
|
||||
msgstr ""
|
||||
|
||||
|
@ -11317,6 +11327,51 @@ msgstr ""
|
|||
msgid "Interlocking depth of a segmented region. Zero disables this feature."
|
||||
msgstr ""
|
||||
|
||||
msgid "Use beam interlocking"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Generate interlocking beam structure at the locations where different "
|
||||
"filaments touch. This improves the adhesion between filaments, especially "
|
||||
"models printed in different materials."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam width"
|
||||
msgstr ""
|
||||
|
||||
msgid "The width of the interlocking structure beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking direction"
|
||||
msgstr ""
|
||||
|
||||
msgid "Orientation of interlock beams."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking beam layers"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The height of the beams of the interlocking structure, measured in number of "
|
||||
"layers. Less layers is stronger, but more prone to defects."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking depth"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the boundary between filaments to generate interlocking "
|
||||
"structure, measured in cells. Too few cells will result in poor adhesion."
|
||||
msgstr ""
|
||||
|
||||
msgid "Interlocking boundary avoidance"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"The distance from the outside of a model where interlocking structures will "
|
||||
"not be generated, measured in cells."
|
||||
msgstr ""
|
||||
|
||||
msgid "Ironing Type"
|
||||
msgstr "熨燙類型"
|
||||
|
||||
|
@ -11951,6 +12006,14 @@ msgstr "梯形"
|
|||
msgid "Spiral"
|
||||
msgstr "螺旋"
|
||||
|
||||
msgid "Traveling angle"
|
||||
msgstr ""
|
||||
|
||||
msgid ""
|
||||
"Traveling angle for Slope and Spiral Z hop type. Setting it to 90° results "
|
||||
"in Normal Lift"
|
||||
msgstr ""
|
||||
|
||||
msgid "Only lift Z above"
|
||||
msgstr "僅在高度以上抬Z"
|
||||
|
||||
|
|
|
@ -6,6 +6,8 @@
|
|||
"instantiation": "true",
|
||||
"inherits": "fdm_machine_common",
|
||||
"printer_model": "Tronxy X5SA 400 Marlin Firmware",
|
||||
"default_filament_profile": "Tronxy Generic PLA",
|
||||
"default_print_profile": "0.20mm Standard @Tronxy",
|
||||
"nozzle_diameter": [
|
||||
"0.4"
|
||||
],
|
||||
|
@ -15,5 +17,6 @@
|
|||
"400x400",
|
||||
"0x400"
|
||||
],
|
||||
"printable_height": "400"
|
||||
"printable_height": "400",
|
||||
"machine_start_gcode": "M104 S[nozzle_temperature_initial_layer] ; start heat nozzle\nM140 S[bed_temperature_initial_layer] ; start heat bed\nG90 ; abs coords\nM83 ; extrude relative\nG28 ; home\nM190 S[bed_temperature_initial_layer] ; wait for bed temp\nM109 S[nozzle_temperature_initial_layer] ; wait for nozzle temp\nG1 X10.1 Y20 Z0.28 F5000.0 ; purge line\nG1 X10.1 Y200.0 Z0.28 F1500.0 E15\nG1 X10.4 Y200.0 Z0.28 F5000.0\nG1 X10.4 Y20 Z0.28 F1500.0 E15\nG1 Z5.0 F3000 ; move Z up"
|
||||
}
|
||||
|
|
|
@ -447,8 +447,12 @@ set(lisbslic3r_sources
|
|||
Shape/TextShape.cpp
|
||||
calib.hpp
|
||||
calib.cpp
|
||||
GCode/Thumbnails.cpp
|
||||
GCode/Thumbnails.hpp
|
||||
GCode/Thumbnails.cpp
|
||||
GCode/Thumbnails.hpp
|
||||
Interlocking/InterlockingGenerator.hpp
|
||||
Interlocking/InterlockingGenerator.cpp
|
||||
Interlocking/VoxelUtils.hpp
|
||||
Interlocking/VoxelUtils.cpp
|
||||
)
|
||||
|
||||
if (APPLE)
|
||||
|
|
|
@ -807,6 +807,9 @@ Slic3r::ExPolygons union_ex(const Slic3r::ExPolygons& poly1, const Slic3r::ExPol
|
|||
Slic3r::ExPolygons xor_ex(const Slic3r::ExPolygons &subject, const Slic3r::ExPolygon &clip, ApplySafetyOffset do_safety_offset) {
|
||||
return _clipper_ex(ClipperLib::ctXor, ClipperUtils::ExPolygonsProvider(subject), ClipperUtils::ExPolygonProvider(clip), do_safety_offset);
|
||||
}
|
||||
Slic3r::ExPolygons xor_ex(const Slic3r::ExPolygons &subject, const Slic3r::ExPolygons &clip, ApplySafetyOffset do_safety_offset) {
|
||||
return _clipper_ex(ClipperLib::ctXor, ClipperUtils::ExPolygonsProvider(subject), ClipperUtils::ExPolygonsProvider(clip), do_safety_offset);
|
||||
}
|
||||
|
||||
template<typename PathsProvider1, typename PathsProvider2>
|
||||
Polylines _clipper_pl_open(ClipperLib::ClipType clipType, PathsProvider1 &&subject, PathsProvider2 &&clip)
|
||||
|
|
|
@ -552,6 +552,7 @@ ClipperLib::PolyTree union_pt(const Slic3r::Polygons &subject);
|
|||
ClipperLib::PolyTree union_pt(const Slic3r::ExPolygons &subject);
|
||||
|
||||
Slic3r::ExPolygons xor_ex(const Slic3r::ExPolygons &subject, const Slic3r::ExPolygon &clip, ApplySafetyOffset do_safety_offset = ApplySafetyOffset::No);
|
||||
Slic3r::ExPolygons xor_ex(const Slic3r::ExPolygons &subject, const Slic3r::ExPolygons &clip, ApplySafetyOffset do_safety_offset = ApplySafetyOffset::No);
|
||||
|
||||
Slic3r::Polygons union_pt_chained_outside_in(const Slic3r::Polygons &subject);
|
||||
|
||||
|
|
|
@ -5442,7 +5442,8 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description,
|
|||
continue;
|
||||
path_length += line_length;
|
||||
auto dE = e_per_mm * line_length;
|
||||
if (m_small_area_infill_flow_compensator && m_config.small_area_infill_flow_compensation.value) {
|
||||
if (!this->on_first_layer() && m_small_area_infill_flow_compensator
|
||||
&& m_config.small_area_infill_flow_compensation.value) {
|
||||
auto oldE = dE;
|
||||
dE = m_small_area_infill_flow_compensator->modify_flow(line_length, dE, path.role());
|
||||
|
||||
|
@ -5482,7 +5483,8 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description,
|
|||
if (line_length < EPSILON)
|
||||
continue;
|
||||
auto dE = e_per_mm * line_length;
|
||||
if (m_small_area_infill_flow_compensator && m_config.small_area_infill_flow_compensation.value) {
|
||||
if (!this->on_first_layer() && m_small_area_infill_flow_compensator
|
||||
&& m_config.small_area_infill_flow_compensation.value) {
|
||||
auto oldE = dE;
|
||||
dE = m_small_area_infill_flow_compensator->modify_flow(line_length, dE, path.role());
|
||||
|
||||
|
@ -5505,7 +5507,8 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description,
|
|||
continue;
|
||||
const Vec2d center_offset = this->point_to_gcode(arc.center) - this->point_to_gcode(arc.start_point);
|
||||
auto dE = e_per_mm * arc_length;
|
||||
if (m_small_area_infill_flow_compensator && m_config.small_area_infill_flow_compensation.value) {
|
||||
if (!this->on_first_layer() && m_small_area_infill_flow_compensator
|
||||
&& m_config.small_area_infill_flow_compensation.value) {
|
||||
auto oldE = dE;
|
||||
dE = m_small_area_infill_flow_compensator->modify_flow(arc_length, dE, path.role());
|
||||
|
||||
|
@ -5593,7 +5596,8 @@ std::string GCode::_extrude(const ExtrusionPath &path, std::string description,
|
|||
last_set_speed = new_speed;
|
||||
}
|
||||
auto dE = e_per_mm * line_length;
|
||||
if (m_small_area_infill_flow_compensator && m_config.small_area_infill_flow_compensation.value) {
|
||||
if (!this->on_first_layer() && m_small_area_infill_flow_compensator
|
||||
&& m_config.small_area_infill_flow_compensation.value) {
|
||||
auto oldE = dE;
|
||||
dE = m_small_area_infill_flow_compensator->modify_flow(line_length, dE, path.role());
|
||||
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
#include <math.h>
|
||||
#include <cstring>
|
||||
#include <cfloat>
|
||||
#include <regex>
|
||||
|
||||
#include "../libslic3r.h"
|
||||
#include "../PrintConfig.hpp"
|
||||
|
|
330
src/libslic3r/Interlocking/InterlockingGenerator.cpp
Normal file
330
src/libslic3r/Interlocking/InterlockingGenerator.cpp
Normal file
|
@ -0,0 +1,330 @@
|
|||
// Copyright (c) 2023 UltiMaker
|
||||
// CuraEngine is released under the terms of the AGPLv3 or higher.
|
||||
|
||||
#include "InterlockingGenerator.hpp"
|
||||
|
||||
namespace std {
|
||||
template<> struct hash<Slic3r::GridPoint3>
|
||||
{
|
||||
size_t operator()(const Slic3r::GridPoint3& pp) const noexcept
|
||||
{
|
||||
static int prime = 31;
|
||||
int result = 89;
|
||||
result = static_cast<int>(result * prime + pp.x());
|
||||
result = static_cast<int>(result * prime + pp.y());
|
||||
result = static_cast<int>(result * prime + pp.z());
|
||||
return static_cast<size_t>(result);
|
||||
}
|
||||
};
|
||||
} // namespace std
|
||||
|
||||
|
||||
namespace Slic3r {
|
||||
|
||||
void InterlockingGenerator::generate_interlocking_structure(PrintObject* print_object)
|
||||
{
|
||||
const auto& config = print_object->config();
|
||||
if (!config.interlocking_beam) {
|
||||
return;
|
||||
}
|
||||
|
||||
const float rotation = Geometry::deg2rad(config.interlocking_orientation.value);
|
||||
const coord_t beam_layer_count = config.interlocking_beam_layer_count;
|
||||
const int interface_depth = config.interlocking_depth;
|
||||
const int boundary_avoidance = config.interlocking_boundary_avoidance;
|
||||
const coord_t beam_width = scaled(config.interlocking_beam_width.value);
|
||||
|
||||
const DilationKernel interface_dilation(GridPoint3(interface_depth, interface_depth, interface_depth), DilationKernel::Type::PRISM);
|
||||
|
||||
const bool air_filtering = boundary_avoidance > 0;
|
||||
const DilationKernel air_dilation(GridPoint3(boundary_avoidance, boundary_avoidance, boundary_avoidance), DilationKernel::Type::PRISM);
|
||||
|
||||
const coord_t cell_width = beam_width + beam_width;
|
||||
const Vec3crd cell_size(cell_width, cell_width, 2 * beam_layer_count);
|
||||
|
||||
for (size_t region_a_index = 0; region_a_index < print_object->num_printing_regions(); region_a_index++) {
|
||||
const PrintRegion& region_a = print_object->printing_region(region_a_index);
|
||||
const auto extruder_nr_a = region_a.extruder(FlowRole::frExternalPerimeter);
|
||||
|
||||
for (size_t region_b_index = region_a_index + 1; region_b_index < print_object->num_printing_regions(); region_b_index++) {
|
||||
const PrintRegion& region_b = print_object->printing_region(region_b_index);
|
||||
const auto extruder_nr_b = region_b.extruder(FlowRole::frExternalPerimeter);
|
||||
if (extruder_nr_a == extruder_nr_b) {
|
||||
continue;
|
||||
}
|
||||
|
||||
InterlockingGenerator gen(*print_object, region_a_index, region_b_index, beam_width, boundary_avoidance, rotation, cell_size, beam_layer_count,
|
||||
interface_dilation, air_dilation, air_filtering);
|
||||
gen.generateInterlockingStructure();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
std::pair<ExPolygons, ExPolygons> InterlockingGenerator::growBorderAreasPerpendicular(const ExPolygons& a, const ExPolygons& b, const coord_t& detect) const
|
||||
{
|
||||
const coord_t min_line =
|
||||
std::min(print_object.printing_region(region_a_index).flow(print_object, frExternalPerimeter, 0.1).scaled_width(),
|
||||
print_object.printing_region(region_b_index).flow(print_object, frExternalPerimeter, 0.1).scaled_width());
|
||||
|
||||
const ExPolygons total_shrunk = offset_ex(union_ex(offset_ex(a, min_line), offset_ex(b, min_line)), 2 * -min_line);
|
||||
|
||||
ExPolygons from_border_a = diff_ex(a, total_shrunk);
|
||||
ExPolygons from_border_b = diff_ex(b, total_shrunk);
|
||||
|
||||
ExPolygons temp_a, temp_b;
|
||||
for (coord_t i = 0; i < (detect / min_line) + 2; ++i) {
|
||||
temp_a = offset_ex(from_border_a, min_line);
|
||||
temp_b = offset_ex(from_border_b, min_line);
|
||||
from_border_a = diff_ex(temp_a, temp_b);
|
||||
from_border_b = diff_ex(temp_b, temp_a);
|
||||
}
|
||||
|
||||
return {from_border_a, from_border_b};
|
||||
}
|
||||
|
||||
void InterlockingGenerator::handleThinAreas(const std::unordered_set<GridPoint3>& has_all_meshes) const
|
||||
{
|
||||
const coord_t number_of_beams_detect = boundary_avoidance;
|
||||
const coord_t number_of_beams_expand = boundary_avoidance - 1;
|
||||
constexpr coord_t rounding_errors = 5;
|
||||
|
||||
const coord_t max_beam_width = beam_width;
|
||||
const coord_t detect = (max_beam_width * number_of_beams_detect) + rounding_errors;
|
||||
const coord_t expand = (max_beam_width * number_of_beams_expand) + rounding_errors;
|
||||
const coord_t close_gaps =
|
||||
std::min(print_object.printing_region(region_a_index).flow(print_object, frExternalPerimeter, 0.1).scaled_width(),
|
||||
print_object.printing_region(region_b_index).flow(print_object, frExternalPerimeter, 0.1).scaled_width()) / 4;
|
||||
|
||||
// Make an inclusionary polygon, to only actually handle thin areas near actual microstructures (so not in skin for example).
|
||||
std::vector<Polygons> near_interlock_per_layer;
|
||||
near_interlock_per_layer.assign(print_object.layer_count(), Polygons());
|
||||
for (const auto& cell : has_all_meshes) {
|
||||
const auto bottom_corner = vu.toLowerCorner(cell);
|
||||
for (coord_t layer_nr = bottom_corner.z();
|
||||
layer_nr < bottom_corner.z() + cell_size.z() && layer_nr < static_cast<coord_t>(near_interlock_per_layer.size()); ++layer_nr) {
|
||||
near_interlock_per_layer[static_cast<size_t>(layer_nr)].push_back(vu.toPolygon(cell));
|
||||
}
|
||||
}
|
||||
for (auto& near_interlock : near_interlock_per_layer) {
|
||||
near_interlock = offset(union_(closing(near_interlock, rounding_errors)), detect);
|
||||
polygons_rotate(near_interlock, rotation);
|
||||
}
|
||||
|
||||
// Only alter layers when they are present in both meshes, zip should take care if that.
|
||||
for (size_t layer_nr = 0; layer_nr < print_object.layer_count(); layer_nr++){
|
||||
auto layer = print_object.get_layer(layer_nr);
|
||||
ExPolygons polys_a = to_expolygons(layer->get_region(region_a_index)->slices.surfaces);
|
||||
ExPolygons polys_b = to_expolygons(layer->get_region(region_b_index)->slices.surfaces);
|
||||
|
||||
const auto [from_border_a, from_border_b] = growBorderAreasPerpendicular(polys_a, polys_b, detect);
|
||||
|
||||
// Get the areas of each mesh that are _not_ thin (large), by performing a morphological open.
|
||||
const ExPolygons large_a = opening_ex(polys_a, detect);
|
||||
const ExPolygons large_b = opening_ex(polys_b, detect);
|
||||
|
||||
// Derive the area that the thin areas need to expand into (so the added areas to the thin strips) from the information we already have.
|
||||
const ExPolygons thin_expansion_a =
|
||||
offset_ex(intersection_ex(intersection_ex(intersection_ex(large_b, offset_ex(diff_ex(polys_a, large_a), expand)),
|
||||
near_interlock_per_layer[layer_nr]),
|
||||
from_border_a),
|
||||
rounding_errors);
|
||||
const ExPolygons thin_expansion_b =
|
||||
offset_ex(intersection_ex(intersection_ex(intersection_ex(large_a, offset_ex(diff_ex(polys_b, large_b), expand)),
|
||||
near_interlock_per_layer[layer_nr]),
|
||||
from_border_b),
|
||||
rounding_errors);
|
||||
|
||||
// Expanded thin areas of the opposing polygon should 'eat into' the larger areas of the polygon,
|
||||
// and conversely, add the expansions to their own thin areas.
|
||||
layer->get_region(region_a_index)->slices.set(closing_ex(diff_ex(union_ex(polys_a, thin_expansion_a), thin_expansion_b), close_gaps), stInternal);
|
||||
layer->get_region(region_b_index)->slices.set(closing_ex(diff_ex(union_ex(polys_b, thin_expansion_b), thin_expansion_a), close_gaps), stInternal);
|
||||
}
|
||||
}
|
||||
|
||||
void InterlockingGenerator::generateInterlockingStructure() const
|
||||
{
|
||||
std::vector<std::unordered_set<GridPoint3>> voxels_per_mesh = getShellVoxels(interface_dilation);
|
||||
|
||||
std::unordered_set<GridPoint3>& has_any_mesh = voxels_per_mesh[0];
|
||||
std::unordered_set<GridPoint3>& has_all_meshes = voxels_per_mesh[1];
|
||||
has_any_mesh.merge(has_all_meshes); // perform union and intersection simultaneously. Cannibalizes voxels_per_mesh
|
||||
|
||||
if (has_all_meshes.empty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
const std::vector<ExPolygons> layer_regions = computeUnionedVolumeRegions();
|
||||
|
||||
if (air_filtering) {
|
||||
std::unordered_set<GridPoint3> air_cells;
|
||||
addBoundaryCells(layer_regions, air_dilation, air_cells);
|
||||
|
||||
for (const GridPoint3& p : air_cells) {
|
||||
has_all_meshes.erase(p);
|
||||
}
|
||||
|
||||
handleThinAreas(has_all_meshes);
|
||||
}
|
||||
|
||||
applyMicrostructureToOutlines(has_all_meshes, layer_regions);
|
||||
}
|
||||
|
||||
std::vector<std::unordered_set<GridPoint3>> InterlockingGenerator::getShellVoxels(const DilationKernel& kernel) const
|
||||
{
|
||||
std::vector<std::unordered_set<GridPoint3>> voxels_per_mesh(2);
|
||||
|
||||
// mark all cells which contain some boundary
|
||||
for (size_t region_idx = 0; region_idx < 2; region_idx++)
|
||||
{
|
||||
const size_t region = (region_idx == 0) ? region_a_index : region_b_index;
|
||||
std::unordered_set<GridPoint3>& mesh_voxels = voxels_per_mesh[region_idx];
|
||||
|
||||
std::vector<ExPolygons> rotated_polygons_per_layer(print_object.layer_count());
|
||||
for (size_t layer_nr = 0; layer_nr < print_object.layer_count(); layer_nr++)
|
||||
{
|
||||
auto layer = print_object.get_layer(layer_nr);
|
||||
rotated_polygons_per_layer[layer_nr] = to_expolygons(layer->get_region(region)->slices.surfaces);
|
||||
expolygons_rotate(rotated_polygons_per_layer[layer_nr], rotation);
|
||||
}
|
||||
|
||||
addBoundaryCells(rotated_polygons_per_layer, kernel, mesh_voxels);
|
||||
}
|
||||
|
||||
return voxels_per_mesh;
|
||||
}
|
||||
|
||||
void InterlockingGenerator::addBoundaryCells(const std::vector<ExPolygons>& layers,
|
||||
const DilationKernel& kernel,
|
||||
std::unordered_set<GridPoint3>& cells) const
|
||||
{
|
||||
auto voxel_emplacer = [&cells](GridPoint3 p) {
|
||||
if (p.z() < 0) {
|
||||
return true;
|
||||
}
|
||||
cells.emplace(p);
|
||||
return true;
|
||||
};
|
||||
|
||||
for (size_t layer_nr = 0; layer_nr < layers.size(); layer_nr++) {
|
||||
const coord_t z = static_cast<coord_t>(layer_nr);
|
||||
vu.walkDilatedPolygons(layers[layer_nr], z, kernel, voxel_emplacer);
|
||||
ExPolygons skin = layers[layer_nr];
|
||||
if (layer_nr > 0) {
|
||||
skin = xor_ex(skin, layers[layer_nr - 1]);
|
||||
}
|
||||
skin = opening_ex(skin, cell_size.x() / 2.f); // remove superfluous small areas, which would anyway be included because of walkPolygons
|
||||
vu.walkDilatedAreas(skin, z, kernel, voxel_emplacer);
|
||||
}
|
||||
}
|
||||
|
||||
std::vector<ExPolygons> InterlockingGenerator::computeUnionedVolumeRegions() const
|
||||
{
|
||||
const size_t max_layer_count = print_object.layer_count() +
|
||||
1; // introduce ghost layer on top for correct skin computation of topmost layer.
|
||||
std::vector<ExPolygons> layer_regions(max_layer_count);
|
||||
|
||||
for (size_t layer_nr = 0; layer_nr < max_layer_count - 1; layer_nr++) {
|
||||
auto& layer_region = layer_regions[static_cast<size_t>(layer_nr)];
|
||||
for (size_t region_idx : {region_a_index, region_b_index}) {
|
||||
auto layer = print_object.get_layer(layer_nr);
|
||||
expolygons_append(layer_region, to_expolygons(layer->get_region(region_idx)->slices.surfaces));
|
||||
}
|
||||
layer_region = closing_ex(layer_region, ignored_gap_); // Morphological close to merge meshes into single volume
|
||||
expolygons_rotate(layer_region, rotation);
|
||||
}
|
||||
return layer_regions;
|
||||
}
|
||||
|
||||
std::vector<std::vector<ExPolygons>> InterlockingGenerator::generateMicrostructure() const
|
||||
{
|
||||
std::vector<std::vector<ExPolygons>> cell_area_per_mesh_per_layer;
|
||||
cell_area_per_mesh_per_layer.resize(2);
|
||||
cell_area_per_mesh_per_layer[0].resize(2);
|
||||
const coord_t beam_w_sum = beam_width + beam_width;
|
||||
const coord_t middle = cell_size.x() * beam_width / beam_w_sum;
|
||||
const coord_t width[2] = {middle, cell_size.x() - middle};
|
||||
for (size_t mesh_idx : {0ul, 1ul}) {
|
||||
Point offset(mesh_idx ? middle : 0, 0);
|
||||
Point area_size(width[mesh_idx], cell_size.y());
|
||||
|
||||
Polygon poly;
|
||||
poly.append(offset);
|
||||
poly.append(offset + Point(area_size.x(), 0));
|
||||
poly.append(offset + area_size);
|
||||
poly.append(offset + Point(0, area_size.y()));
|
||||
cell_area_per_mesh_per_layer[0][mesh_idx].emplace_back(poly);
|
||||
}
|
||||
cell_area_per_mesh_per_layer[1] = cell_area_per_mesh_per_layer[0];
|
||||
for (ExPolygons& polys : cell_area_per_mesh_per_layer[1]) {
|
||||
for (ExPolygon& poly : polys) {
|
||||
for (Point& p : poly.contour) {
|
||||
std::swap(p.x(), p.y());
|
||||
}
|
||||
}
|
||||
}
|
||||
return cell_area_per_mesh_per_layer;
|
||||
}
|
||||
|
||||
void InterlockingGenerator::applyMicrostructureToOutlines(const std::unordered_set<GridPoint3>& cells,
|
||||
const std::vector<ExPolygons>& layer_regions) const
|
||||
{
|
||||
std::vector<std::vector<ExPolygons>> cell_area_per_mesh_per_layer = generateMicrostructure();
|
||||
|
||||
const float unapply_rotation = -rotation;
|
||||
const size_t max_layer_count = print_object.layer_count();
|
||||
|
||||
std::vector<ExPolygons> structure_per_layer[2]; // for each mesh the structure on each layer
|
||||
|
||||
// Every `beam_layer_count` number of layers are combined to an interlocking beam layer
|
||||
// to store these we need ceil(max_layer_count / beam_layer_count) of these layers
|
||||
// the formula is rewritten as (max_layer_count + beam_layer_count - 1) / beam_layer_count, so it works for integer division
|
||||
size_t num_interlocking_layers = (max_layer_count + static_cast<size_t>(beam_layer_count) - 1ul) /
|
||||
static_cast<size_t>(beam_layer_count);
|
||||
structure_per_layer[0].resize(num_interlocking_layers);
|
||||
structure_per_layer[1].resize(num_interlocking_layers);
|
||||
|
||||
// Only compute cell structure for half the layers, because since our beams are two layers high, every odd layer of the structure will
|
||||
// be the same as the layer below.
|
||||
for (const GridPoint3& grid_loc : cells) {
|
||||
Vec3crd bottom_corner = vu.toLowerCorner(grid_loc);
|
||||
for (size_t mesh_idx = 0; mesh_idx < 2; mesh_idx++) {
|
||||
for (size_t layer_nr = bottom_corner.z(); layer_nr < bottom_corner.z() + cell_size.z() && layer_nr < max_layer_count;
|
||||
layer_nr += beam_layer_count) {
|
||||
ExPolygons areas_here = cell_area_per_mesh_per_layer[static_cast<size_t>(layer_nr / beam_layer_count) %
|
||||
cell_area_per_mesh_per_layer.size()][mesh_idx];
|
||||
for (auto & here : areas_here) {
|
||||
here.translate(bottom_corner.x(), bottom_corner.y());
|
||||
}
|
||||
expolygons_append(structure_per_layer[mesh_idx][static_cast<size_t>(layer_nr / beam_layer_count)], areas_here);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
for (size_t mesh_idx = 0; mesh_idx < 2; mesh_idx++) {
|
||||
for (size_t layer_nr = 0; layer_nr < structure_per_layer[mesh_idx].size(); layer_nr++) {
|
||||
ExPolygons& layer_structure = structure_per_layer[mesh_idx][layer_nr];
|
||||
layer_structure = union_ex(layer_structure);
|
||||
expolygons_rotate(layer_structure, unapply_rotation);
|
||||
}
|
||||
}
|
||||
|
||||
for (size_t region_idx = 0; region_idx < 2; region_idx++) {
|
||||
const size_t region = (region_idx == 0) ? region_a_index : region_b_index;
|
||||
for (size_t layer_nr = 0; layer_nr < max_layer_count; layer_nr++) {
|
||||
ExPolygons layer_outlines = layer_regions[layer_nr];
|
||||
expolygons_rotate(layer_outlines, unapply_rotation);
|
||||
|
||||
const ExPolygons areas_here = intersection_ex(structure_per_layer[region_idx][layer_nr / static_cast<size_t>(beam_layer_count)], layer_outlines);
|
||||
const ExPolygons& areas_other = structure_per_layer[!region_idx][layer_nr / static_cast<size_t>(beam_layer_count)];
|
||||
|
||||
auto layer = print_object.get_layer(layer_nr);
|
||||
auto& slices = layer->get_region(region)->slices;
|
||||
ExPolygons polys = to_expolygons(slices.surfaces);
|
||||
slices.set(union_ex(diff_ex(polys, areas_other), // reduce layer areas inward with beams from other mesh
|
||||
areas_here) // extend layer areas outward with newly added beams
|
||||
, stInternal);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} // namespace Slic3r
|
172
src/libslic3r/Interlocking/InterlockingGenerator.hpp
Normal file
172
src/libslic3r/Interlocking/InterlockingGenerator.hpp
Normal file
|
@ -0,0 +1,172 @@
|
|||
// Copyright (c) 2022 Ultimaker B.V.
|
||||
// CuraEngine is released under the terms of the AGPLv3 or higher.
|
||||
|
||||
#ifndef INTERLOCKING_GENERATOR_HPP
|
||||
#define INTERLOCKING_GENERATOR_HPP
|
||||
|
||||
#include "../Print.hpp"
|
||||
#include "VoxelUtils.hpp"
|
||||
|
||||
namespace Slic3r {
|
||||
|
||||
/*!
|
||||
* Class for generating an interlocking structure between two adjacent models of a different extruder.
|
||||
*
|
||||
* The structure consists of horizontal beams of the two materials interlaced.
|
||||
* In the z direction the direction of these beams is alternated with 90*.
|
||||
*
|
||||
* Example with two materials # and O
|
||||
* Even beams: Odd beams:
|
||||
* ###### ##OO##OO
|
||||
* OOOOOO ##OO##OO
|
||||
* ###### ##OO##OO
|
||||
* OOOOOO ##OO##OO
|
||||
*
|
||||
* One material of a single cell of the structure looks like this:
|
||||
* .-*-.
|
||||
* .-* *-.
|
||||
* |*-. *-.
|
||||
* | *-. *-.
|
||||
* .-* *-. *-. *-.
|
||||
* .-* *-. *-. .-*|
|
||||
* .-* .-* *-. *-.-* |
|
||||
* |*-. .-* .-* *-. | .-*
|
||||
* | *-.-* .-* *-|-*
|
||||
* *-. | .-*
|
||||
* *-|-*
|
||||
*
|
||||
* We set up a voxel grid of (2*beam_w,2*beam_w,2*beam_h) and mark all the voxels which contain both meshes.
|
||||
* We then remove all voxels which also contain air, so that the interlocking pattern will not be visible from the outside.
|
||||
* We then generate and combine the polygons for each voxel and apply those areas to the outlines ofthe meshes.
|
||||
*/
|
||||
class InterlockingGenerator
|
||||
{
|
||||
public:
|
||||
/*!
|
||||
* Generate an interlocking structure between each two adjacent meshes.
|
||||
*/
|
||||
static void generate_interlocking_structure(PrintObject* print_object);
|
||||
|
||||
private:
|
||||
/*!
|
||||
* Generate an interlocking structure between two meshes
|
||||
*/
|
||||
void generateInterlockingStructure() const;
|
||||
|
||||
/*!
|
||||
* Private class for storing some variables used in the computation of the interlocking structure between two meshes.
|
||||
* \param region_a_index The first region
|
||||
* \param region_b_index The second region
|
||||
* \param rotation The angle by which to rotate the interlocking pattern
|
||||
* \param cell_size The size of a voxel cell in (coord_t, coord_t, layer_count)
|
||||
* \param beam_layer_count The number of layers for the height of the beams
|
||||
* \param interface_dilation The thicknening kernel for the interface
|
||||
* \param air_dilation The thickening kernel applied to air so that cells near the outside of the model won't be generated
|
||||
* \param air_filtering Whether to fully remove all of the interlocking cells which would be visible on the outside (i.e. touching air).
|
||||
* If no air filtering then those cells will be cut off in the middle of a beam.
|
||||
*/
|
||||
InterlockingGenerator(PrintObject& print_object,
|
||||
const size_t region_a_index,
|
||||
const size_t region_b_index,
|
||||
const coord_t beam_width,
|
||||
const coord_t boundary_avoidance,
|
||||
const float rotation,
|
||||
const Vec3crd& cell_size,
|
||||
const coord_t beam_layer_count,
|
||||
const DilationKernel& interface_dilation,
|
||||
const DilationKernel& air_dilation,
|
||||
const bool air_filtering)
|
||||
: print_object(print_object)
|
||||
, region_a_index(region_a_index)
|
||||
, region_b_index(region_b_index)
|
||||
, beam_width(beam_width)
|
||||
, boundary_avoidance(boundary_avoidance)
|
||||
, vu(cell_size)
|
||||
, rotation(rotation)
|
||||
, cell_size(cell_size)
|
||||
, beam_layer_count(beam_layer_count)
|
||||
, interface_dilation(interface_dilation)
|
||||
, air_dilation(air_dilation)
|
||||
, air_filtering(air_filtering)
|
||||
{}
|
||||
|
||||
/*! Given two polygons, return the parts that border on air, and grow 'perpendicular' up to 'detect' distance.
|
||||
*
|
||||
* \param a The first polygon.
|
||||
* \param b The second polygon.
|
||||
* \param detec The expand distance. (Not equal to offset, but a series of small offsets and differences).
|
||||
* \return A pair of polygons that repressent the 'borders' of a and b, but expanded 'perpendicularly'.
|
||||
*/
|
||||
std::pair<ExPolygons, ExPolygons> growBorderAreasPerpendicular(const ExPolygons& a, const ExPolygons& b, const coord_t& detect) const;
|
||||
|
||||
/*! Special handling for thin strips of material.
|
||||
*
|
||||
* Expand the meshes into each other where they need it, namely when a thin strip of material needs to be attached.
|
||||
* \param has_all_meshes Only do this special handling if there's actually microstructure nearby that needs to be adhered to.
|
||||
*/
|
||||
void handleThinAreas(const std::unordered_set<GridPoint3>& has_all_meshes) const;
|
||||
|
||||
/*!
|
||||
* Compute the voxels overlapping with the shell of both models.
|
||||
* This includes the walls, but also top/bottom skin.
|
||||
*
|
||||
* \param kernel The dilation kernel to give the returned voxel shell more thickness
|
||||
* \return The shell voxels for mesh a and those for mesh b
|
||||
*/
|
||||
std::vector<std::unordered_set<GridPoint3>> getShellVoxels(const DilationKernel& kernel) const;
|
||||
|
||||
/*!
|
||||
* Compute the voxels overlapping with the shell of some layers.
|
||||
* This includes the walls, but also top/bottom skin.
|
||||
*
|
||||
* \param layers The layer outlines for which to compute the shell voxels
|
||||
* \param kernel The dilation kernel to give the returned voxel shell more thickness
|
||||
* \param[out] cells The output cells which elong to the shell
|
||||
*/
|
||||
void addBoundaryCells(const std::vector<ExPolygons>& layers, const DilationKernel& kernel, std::unordered_set<GridPoint3>& cells) const;
|
||||
|
||||
/*!
|
||||
* Compute the regions occupied by both models.
|
||||
*
|
||||
* A morphological close is performed so that we don't register small gaps between the two models as being separate.
|
||||
* \return layer_regions The computed layer regions
|
||||
*/
|
||||
std::vector<ExPolygons> computeUnionedVolumeRegions() const;
|
||||
|
||||
/*!
|
||||
* Generate the polygons for the beams of a single cell
|
||||
* \return cell_area_per_mesh_per_layer The output polygons for each beam
|
||||
*/
|
||||
std::vector<std::vector<ExPolygons>> generateMicrostructure() const;
|
||||
|
||||
/*!
|
||||
* Change the outlines of the meshes with the computed interlocking structure.
|
||||
*
|
||||
* \param cells The cells where we want to apply the interlocking structure.
|
||||
* \param layer_regions The total volume of the two meshes combined (and small gaps closed)
|
||||
*/
|
||||
void applyMicrostructureToOutlines(const std::unordered_set<GridPoint3>& cells, const std::vector<ExPolygons>& layer_regions) const;
|
||||
|
||||
static const coord_t ignored_gap_ = 100u; //!< Distance between models to be considered next to each other so that an interlocking structure will be generated there
|
||||
|
||||
PrintObject& print_object;
|
||||
const size_t region_a_index;
|
||||
const size_t region_b_index;
|
||||
const coord_t beam_width;
|
||||
const coord_t boundary_avoidance;
|
||||
|
||||
const VoxelUtils vu;
|
||||
|
||||
const float rotation;
|
||||
const Vec3crd cell_size;
|
||||
const coord_t beam_layer_count;
|
||||
const DilationKernel interface_dilation;
|
||||
const DilationKernel air_dilation;
|
||||
// Whether to fully remove all of the interlocking cells which would be visible on the outside. If no air filtering then those cells
|
||||
// will be cut off midway in a beam.
|
||||
const bool air_filtering;
|
||||
};
|
||||
|
||||
} // namespace Slic3r
|
||||
|
||||
#endif // INTERLOCKING_GENERATOR_HPP
|
219
src/libslic3r/Interlocking/VoxelUtils.cpp
Normal file
219
src/libslic3r/Interlocking/VoxelUtils.cpp
Normal file
|
@ -0,0 +1,219 @@
|
|||
// Copyright (c) 2022 Ultimaker B.V.
|
||||
// CuraEngine is released under the terms of the AGPLv3 or higher.
|
||||
|
||||
#include "VoxelUtils.hpp"
|
||||
#include "../Geometry.hpp"
|
||||
#include "../Fill/FillRectilinear.hpp"
|
||||
#include "../Surface.hpp"
|
||||
|
||||
namespace Slic3r
|
||||
{
|
||||
|
||||
DilationKernel::DilationKernel(GridPoint3 kernel_size, DilationKernel::Type type)
|
||||
: kernel_size_(kernel_size)
|
||||
, type_(type)
|
||||
{
|
||||
coord_t mult = kernel_size.x() * kernel_size.y() * kernel_size.z(); // multiplier for division to avoid rounding and to avoid use of floating point numbers
|
||||
relative_cells_.reserve(mult);
|
||||
GridPoint3 half_kernel = kernel_size / 2;
|
||||
|
||||
GridPoint3 start = -half_kernel;
|
||||
GridPoint3 end = kernel_size - half_kernel;
|
||||
for (coord_t x = start.x(); x < end.x(); x++)
|
||||
{
|
||||
for (coord_t y = start.y(); y < end.y(); y++)
|
||||
{
|
||||
for (coord_t z = start.z(); z < end.z(); z++)
|
||||
{
|
||||
GridPoint3 current(x, y, z);
|
||||
if (type != Type::CUBE)
|
||||
{
|
||||
GridPoint3 limit((x < 0) ? start.x() : end.x() - 1, (y < 0) ? start.y() : end.y() - 1, (z < 0) ? start.z() : end.z() - 1);
|
||||
if (limit.x() == 0)
|
||||
limit.x() = 1;
|
||||
if (limit.y() == 0)
|
||||
limit.y() = 1;
|
||||
if (limit.z() == 0)
|
||||
limit.z() = 1;
|
||||
const GridPoint3 rel_dists = (mult * current).array() / limit.array();
|
||||
if ((type == Type::DIAMOND && rel_dists.x() + rel_dists.y() + rel_dists.z() > mult) || (type == Type::PRISM && rel_dists.x() + rel_dists.y() > mult))
|
||||
{
|
||||
continue; // don't consider this cell
|
||||
}
|
||||
}
|
||||
relative_cells_.emplace_back(x, y, z);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
bool VoxelUtils::walkLine(Vec3crd start, Vec3crd end, const std::function<bool(GridPoint3)>& process_cell_func) const
|
||||
{
|
||||
Vec3crd diff = end - start;
|
||||
|
||||
const GridPoint3 start_cell = toGridPoint(start);
|
||||
const GridPoint3 end_cell = toGridPoint(end);
|
||||
if (start_cell == end_cell)
|
||||
{
|
||||
return process_cell_func(start_cell);
|
||||
}
|
||||
|
||||
Vec3crd current_cell = start_cell;
|
||||
while (true)
|
||||
{
|
||||
bool continue_ = process_cell_func(current_cell);
|
||||
|
||||
if (! continue_)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
int stepping_dim = -1; // dimension in which the line next exits the current cell
|
||||
double percentage_along_line = std::numeric_limits<double>::max();
|
||||
for (int dim = 0; dim < 3; dim++)
|
||||
{
|
||||
if (diff[dim] == 0)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
coord_t crossing_boundary = toLowerCoord(current_cell[dim], dim) + (diff[dim] > 0) * cell_size_[dim];
|
||||
double percentage_along_line_here = (crossing_boundary - start[dim]) / static_cast<double>(diff[dim]);
|
||||
if (percentage_along_line_here < percentage_along_line)
|
||||
{
|
||||
percentage_along_line = percentage_along_line_here;
|
||||
stepping_dim = dim;
|
||||
}
|
||||
}
|
||||
assert(stepping_dim != -1);
|
||||
if (percentage_along_line > 1.0)
|
||||
{
|
||||
// next cell is beyond the end
|
||||
return true;
|
||||
}
|
||||
current_cell[stepping_dim] += (diff[stepping_dim] > 0) ? 1 : -1;
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
bool VoxelUtils::walkPolygons(const ExPolygon& polys, coord_t z, const std::function<bool(GridPoint3)>& process_cell_func) const
|
||||
{
|
||||
for (const Polygon& poly : to_polygons(polys))
|
||||
{
|
||||
Point last = poly.back();
|
||||
for (Point p : poly)
|
||||
{
|
||||
bool continue_ = walkLine(Vec3crd(last.x(), last.y(), z), Vec3crd(p.x(), p.y(), z), process_cell_func);
|
||||
if (! continue_)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
last = p;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool VoxelUtils::walkDilatedPolygons(const ExPolygon& polys, coord_t z, const DilationKernel& kernel, const std::function<bool(GridPoint3)>& process_cell_func) const
|
||||
{
|
||||
ExPolygon translated = polys;
|
||||
GridPoint3 k = kernel.kernel_size_;
|
||||
k.x() %= 2;
|
||||
k.y() %= 2;
|
||||
k.z() %= 2;
|
||||
const Vec3crd translation = (Vec3crd(1, 1, 1) - k).array() * cell_size_.array() / 2;
|
||||
if (translation.x() && translation.y())
|
||||
{
|
||||
translated.translate(Point(translation.x(), translation.y()));
|
||||
}
|
||||
return walkPolygons(translated, z + translation.z(), dilate(kernel, process_cell_func));
|
||||
}
|
||||
|
||||
bool VoxelUtils::walkAreas(const ExPolygon& polys, coord_t z, const std::function<bool(GridPoint3)>& process_cell_func) const
|
||||
{
|
||||
ExPolygon translated = polys;
|
||||
const Vec3crd translation = -cell_size_ / 2; // offset half a cell so that the dots of spreadDotsArea are centered on the middle of the cell isntead of the lower corners.
|
||||
if (translation.x() && translation.y())
|
||||
{
|
||||
translated.translate(Point(translation.x(), translation.y()));
|
||||
}
|
||||
return _walkAreas(translated, z, process_cell_func);
|
||||
}
|
||||
|
||||
static Points spreadDotsArea(const ExPolygon& polygons, Point grid_size)
|
||||
{
|
||||
std::unique_ptr<Fill> filler(Fill::new_from_type(ipAlignedRectilinear));
|
||||
filler->angle = Geometry::deg2rad(90.f);
|
||||
filler->spacing = unscaled(grid_size.x());
|
||||
filler->bounding_box = get_extents(polygons);
|
||||
|
||||
FillParams params;
|
||||
params.density = 1.f;
|
||||
params.anchor_length_max = 0;
|
||||
|
||||
Surface surface(stInternal, polygons);
|
||||
auto polylines = filler->fill_surface(&surface, params);
|
||||
|
||||
Points result;
|
||||
for (const Polyline& line : polylines) {
|
||||
assert(line.size() == 2);
|
||||
Point a = line[0];
|
||||
Point b = line[1];
|
||||
assert(a.x() == b.x());
|
||||
if (a.y() > b.y()) {
|
||||
std::swap(a, b);
|
||||
}
|
||||
for (coord_t y = a.y() - (a.y() % grid_size.y()) - grid_size.y(); y < b.y(); y += grid_size.y()) {
|
||||
if (y < a.y())
|
||||
continue;
|
||||
result.emplace_back(a.x(), y);
|
||||
}
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
bool VoxelUtils::_walkAreas(const ExPolygon& polys, coord_t z, const std::function<bool(GridPoint3)>& process_cell_func) const
|
||||
{
|
||||
Points skin_points = spreadDotsArea(polys, Point(cell_size_.x(), cell_size_.y()));
|
||||
for (Point p : skin_points)
|
||||
{
|
||||
bool continue_ = process_cell_func(toGridPoint(Vec3crd(p.x() + cell_size_.x() / 2, p.y() + cell_size_.y() / 2, z)));
|
||||
if (! continue_)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
bool VoxelUtils::walkDilatedAreas(const ExPolygon& polys, coord_t z, const DilationKernel& kernel, const std::function<bool(GridPoint3)>& process_cell_func) const
|
||||
{
|
||||
ExPolygon translated = polys;
|
||||
GridPoint3 k = kernel.kernel_size_;
|
||||
k.x() %= 2;
|
||||
k.y() %= 2;
|
||||
k.z() %= 2;
|
||||
const Vec3crd translation = (Vec3crd(1, 1, 1) - k).array() * cell_size_.array() / 2 // offset half a cell when using an even kernel
|
||||
- cell_size_.array() / 2; // offset half a cell so that the dots of spreadDotsArea are centered on the middle of the cell isntead of the lower corners.
|
||||
if (translation.x() && translation.y())
|
||||
{
|
||||
translated.translate(Point(translation.x(), translation.y()));
|
||||
}
|
||||
return _walkAreas(translated, z + translation.z(), dilate(kernel, process_cell_func));
|
||||
}
|
||||
|
||||
std::function<bool(GridPoint3)> VoxelUtils::dilate(const DilationKernel& kernel, const std::function<bool(GridPoint3)>& process_cell_func) const
|
||||
{
|
||||
return [&process_cell_func, &kernel](GridPoint3 loc)
|
||||
{
|
||||
for (const GridPoint3& rel : kernel.relative_cells_)
|
||||
{
|
||||
bool continue_ = process_cell_func(loc + rel);
|
||||
if (! continue_)
|
||||
return false;
|
||||
}
|
||||
return true;
|
||||
};
|
||||
}
|
||||
} // namespace cura
|
212
src/libslic3r/Interlocking/VoxelUtils.hpp
Normal file
212
src/libslic3r/Interlocking/VoxelUtils.hpp
Normal file
|
@ -0,0 +1,212 @@
|
|||
// Copyright (c) 2022 Ultimaker B.V.
|
||||
// CuraEngine is released under the terms of the AGPLv3 or higher.
|
||||
|
||||
#ifndef UTILS_VOXEL_UTILS_H
|
||||
#define UTILS_VOXEL_UTILS_H
|
||||
|
||||
#include <functional>
|
||||
|
||||
#include "../Polygon.hpp"
|
||||
#include "../ExPolygon.hpp"
|
||||
|
||||
namespace Slic3r
|
||||
{
|
||||
|
||||
using GridPoint3 = Vec3crd;
|
||||
|
||||
/*!
|
||||
* Class for holding the relative positiongs wrt a reference cell on which to perform a dilation.
|
||||
*/
|
||||
struct DilationKernel
|
||||
{
|
||||
/*!
|
||||
* A cubic kernel checks all voxels in a cube around a reference voxel.
|
||||
* _____
|
||||
* |\ ___\
|
||||
* | | |
|
||||
* \|____|
|
||||
*
|
||||
* A diamond kernel uses a manhattan distance to create a diamond shape around a reference voxel.
|
||||
* /|\
|
||||
* /_|_\
|
||||
* \ | /
|
||||
* \|/
|
||||
*
|
||||
* A prism kernel is diamond in XY, but extrudes straight in Z around a reference voxel.
|
||||
* / \
|
||||
* / \
|
||||
* |\ /|
|
||||
* | \ / |
|
||||
* | | |
|
||||
* \ | /
|
||||
* \|/
|
||||
*/
|
||||
enum class Type
|
||||
{
|
||||
CUBE,
|
||||
DIAMOND,
|
||||
PRISM
|
||||
};
|
||||
GridPoint3 kernel_size_; //!< Size of the kernel in number of voxel cells
|
||||
Type type_;
|
||||
std::vector<GridPoint3> relative_cells_; //!< All offset positions relative to some reference cell which is to be dilated
|
||||
|
||||
DilationKernel(GridPoint3 kernel_size, Type type);
|
||||
};
|
||||
|
||||
/*!
|
||||
* Utility class for walking over a 3D voxel grid.
|
||||
*
|
||||
* Contains the math for intersecting voxels with lines, polgons, areas, etc.
|
||||
*/
|
||||
class VoxelUtils
|
||||
{
|
||||
public:
|
||||
using grid_coord_t = coord_t;
|
||||
|
||||
Vec3crd cell_size_;
|
||||
|
||||
VoxelUtils(Vec3crd cell_size)
|
||||
: cell_size_(cell_size)
|
||||
{
|
||||
}
|
||||
|
||||
/*!
|
||||
* Process voxels which a line segment crosses.
|
||||
*
|
||||
* \param start Start point of the line
|
||||
* \param end End point of the line
|
||||
* \param process_cell_func Function to perform on each cell the line crosses
|
||||
* \return Whether executing was stopped short as indicated by the \p cell_processing_function
|
||||
*/
|
||||
bool walkLine(Vec3crd start, Vec3crd end, const std::function<bool(GridPoint3)>& process_cell_func) const;
|
||||
|
||||
/*!
|
||||
* Process voxels which the line segments of a polygon crosses.
|
||||
*
|
||||
* \warning Voxels may be processed multiple times!
|
||||
*
|
||||
* \param polys The polygons to walk
|
||||
* \param z The height at which the polygons occur
|
||||
* \param process_cell_func Function to perform on each voxel cell
|
||||
* \return Whether executing was stopped short as indicated by the \p cell_processing_function
|
||||
*/
|
||||
bool walkPolygons(const ExPolygon& polys, coord_t z, const std::function<bool(GridPoint3)>& process_cell_func) const;
|
||||
|
||||
/*!
|
||||
* Process voxels near the line segments of a polygon.
|
||||
* For each voxel the polygon crosses we process each of the offset voxels according to the kernel.
|
||||
*
|
||||
* \warning Voxels may be processed multiple times!
|
||||
*
|
||||
* \param polys The polygons to walk
|
||||
* \param z The height at which the polygons occur
|
||||
* \param process_cell_func Function to perform on each voxel cell
|
||||
* \return Whether executing was stopped short as indicated by the \p cell_processing_function
|
||||
*/
|
||||
bool walkDilatedPolygons(const ExPolygon& polys, coord_t z, const DilationKernel& kernel, const std::function<bool(GridPoint3)>& process_cell_func) const;
|
||||
bool walkDilatedPolygons(const ExPolygons& polys, coord_t z, const DilationKernel& kernel, const std::function<bool(GridPoint3)>& process_cell_func) const
|
||||
{
|
||||
for (const auto & poly : polys) {
|
||||
if (!walkDilatedPolygons(poly, z, kernel, process_cell_func)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
private:
|
||||
/*!
|
||||
* \warning the \p polys is assumed to be translated by half the cell_size in xy already
|
||||
*/
|
||||
bool _walkAreas(const ExPolygon& polys, coord_t z, const std::function<bool(GridPoint3)>& process_cell_func) const;
|
||||
|
||||
public:
|
||||
/*!
|
||||
* Process all voxels inside the area of a polygons object.
|
||||
*
|
||||
* \warning The voxels along the area are not processed. Thin areas might not process any voxels at all.
|
||||
*
|
||||
* \param polys The area to fill
|
||||
* \param z The height at which the polygons occur
|
||||
* \param process_cell_func Function to perform on each voxel cell
|
||||
* \return Whether executing was stopped short as indicated by the \p cell_processing_function
|
||||
*/
|
||||
bool walkAreas(const ExPolygon& polys, coord_t z, const std::function<bool(GridPoint3)>& process_cell_func) const;
|
||||
|
||||
/*!
|
||||
* Process all voxels inside the area of a polygons object.
|
||||
* For each voxel inside the polygon we process each of the offset voxels according to the kernel.
|
||||
*
|
||||
* \warning The voxels along the area are not processed. Thin areas might not process any voxels at all.
|
||||
*
|
||||
* \param polys The area to fill
|
||||
* \param z The height at which the polygons occur
|
||||
* \param process_cell_func Function to perform on each voxel cell
|
||||
* \return Whether executing was stopped short as indicated by the \p cell_processing_function
|
||||
*/
|
||||
bool walkDilatedAreas(const ExPolygon& polys, coord_t z, const DilationKernel& kernel, const std::function<bool(GridPoint3)>& process_cell_func) const;
|
||||
bool walkDilatedAreas(const ExPolygons& polys, coord_t z, const DilationKernel& kernel, const std::function<bool(GridPoint3)>& process_cell_func) const
|
||||
{
|
||||
for (const auto & poly : polys) {
|
||||
if (!walkDilatedAreas(poly, z, kernel, process_cell_func)) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
/*!
|
||||
* Dilate with a kernel.
|
||||
*
|
||||
* Extends the \p process_cell_func, so that for each cell we process nearby cells as well.
|
||||
*
|
||||
* Apply this function to a process_cell_func to create a new process_cell_func which applies the effect to nearby voxels as well.
|
||||
*
|
||||
* \param kernel The offset positions relative to the input of \p process_cell_func
|
||||
* \param process_cell_func Function to perform on each voxel cell
|
||||
*/
|
||||
std::function<bool(GridPoint3)> dilate(const DilationKernel& kernel, const std::function<bool(GridPoint3)>& process_cell_func) const;
|
||||
|
||||
GridPoint3 toGridPoint(const Vec3crd& point) const
|
||||
{
|
||||
return GridPoint3(toGridCoord(point.x(), 0), toGridCoord(point.y(), 1), toGridCoord(point.z(), 2));
|
||||
}
|
||||
|
||||
grid_coord_t toGridCoord(const coord_t& coord, const size_t dim) const
|
||||
{
|
||||
assert(dim < 3);
|
||||
return coord / cell_size_[dim] - (coord < 0);
|
||||
}
|
||||
|
||||
Vec3crd toLowerCorner(const GridPoint3& location) const
|
||||
{
|
||||
return Vec3crd(toLowerCoord(location.x(), 0), toLowerCoord(location.y(), 1), toLowerCoord(location.z(), 2));
|
||||
}
|
||||
|
||||
coord_t toLowerCoord(const grid_coord_t& grid_coord, const size_t dim) const
|
||||
{
|
||||
assert(dim < 3);
|
||||
return grid_coord * cell_size_[dim];
|
||||
}
|
||||
|
||||
/*!
|
||||
* Returns a rectangular polygon equal to the cross section of a voxel cell at coordinate \p p
|
||||
*/
|
||||
Polygon toPolygon(const GridPoint3 p) const
|
||||
{
|
||||
Polygon ret;
|
||||
Vec3crd c = toLowerCorner(p);
|
||||
ret.append({c.x(), c.y()});
|
||||
ret.append({c.x() + cell_size_.x(), c.y()});
|
||||
ret.append({c.x() + cell_size_.x(), c.y() + cell_size_.y()});
|
||||
ret.append({c.x(), c.y() + cell_size_.y()});
|
||||
return ret;
|
||||
}
|
||||
};
|
||||
|
||||
} // namespace Slic3r
|
||||
|
||||
#endif // UTILS_VOXEL_UTILS_H
|
|
@ -2292,7 +2292,9 @@ std::vector<std::vector<ExPolygons>> multi_material_segmentation_by_painting(con
|
|||
BOOST_LOG_TRIVIAL(debug) << "MM segmentation - layers segmentation in parallel - end";
|
||||
throw_on_cancel_callback();
|
||||
|
||||
if (auto max_width = print_object.config().mmu_segmented_region_max_width, interlocking_depth = print_object.config().mmu_segmented_region_interlocking_depth; max_width > 0.f || interlocking_depth > 0.f) {
|
||||
auto interlocking_beam = print_object.config().interlocking_beam;
|
||||
if (auto max_width = print_object.config().mmu_segmented_region_max_width, interlocking_depth = print_object.config().mmu_segmented_region_interlocking_depth;
|
||||
!interlocking_beam && (max_width > 0.f || interlocking_depth > 0.f)) {
|
||||
cut_segmented_layers(input_expolygons, segmented_regions, float(scale_(max_width)), float(scale_(interlocking_depth)), throw_on_cancel_callback);
|
||||
throw_on_cancel_callback();
|
||||
}
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
#include <cassert>
|
||||
#include <random>
|
||||
#include <unordered_set>
|
||||
#include <thread>
|
||||
#include "libslic3r/AABBTreeLines.hpp"
|
||||
static const int overhang_sampling_number = 6;
|
||||
static const double narrow_loop_length_threshold = 10;
|
||||
|
|
|
@ -813,7 +813,8 @@ static std::vector<std::string> s_Preset_print_options {
|
|||
"wipe_tower_rotation_angle", "tree_support_branch_distance_organic", "tree_support_branch_diameter_organic", "tree_support_branch_angle_organic",
|
||||
"hole_to_polyhole", "hole_to_polyhole_threshold", "hole_to_polyhole_twisted", "mmu_segmented_region_max_width", "mmu_segmented_region_interlocking_depth",
|
||||
"small_area_infill_flow_compensation", "small_area_infill_flow_compensation_model",
|
||||
"seam_slope_type", "seam_slope_conditional", "scarf_angle_threshold", "scarf_joint_speed", "scarf_joint_flow_ratio", "seam_slope_start_height", "seam_slope_entire_loop", "seam_slope_min_length", "seam_slope_steps", "seam_slope_inner_walls", "scarf_overhang_threshold"
|
||||
"seam_slope_type", "seam_slope_conditional", "scarf_angle_threshold", "scarf_joint_speed", "scarf_joint_flow_ratio", "seam_slope_start_height", "seam_slope_entire_loop", "seam_slope_min_length", "seam_slope_steps", "seam_slope_inner_walls", "scarf_overhang_threshold",
|
||||
"interlocking_beam", "interlocking_orientation", "interlocking_beam_layer_count", "interlocking_depth", "interlocking_boundary_avoidance", "interlocking_beam_width",
|
||||
};
|
||||
|
||||
static std::vector<std::string> s_Preset_filament_options {
|
||||
|
|
|
@ -2810,6 +2810,56 @@ void PrintConfigDef::init_fff_params()
|
|||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionFloat(0.));
|
||||
|
||||
def = this->add("interlocking_beam", coBool);
|
||||
def->label = L("Use beam interlocking");
|
||||
def->tooltip = L("Generate interlocking beam structure at the locations where different filaments touch. This improves the adhesion between filaments, especially models printed in different materials.");
|
||||
def->category = L("Advanced");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionBool(false));
|
||||
|
||||
def = this->add("interlocking_beam_width", coFloat);
|
||||
def->label = L("Interlocking beam width");
|
||||
def->tooltip = L("The width of the interlocking structure beams.");
|
||||
def->sidetext = L("mm");
|
||||
def->min = 0.01;
|
||||
def->category = L("Advanced");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionFloat(0.8));
|
||||
|
||||
def = this->add("interlocking_orientation", coFloat);
|
||||
def->label = L("Interlocking direction");
|
||||
def->tooltip = L("Orientation of interlock beams.");
|
||||
def->sidetext = L("°");
|
||||
def->min = 0;
|
||||
def->max = 360;
|
||||
def->category = L("Advanced");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionFloat(22.5));
|
||||
|
||||
def = this->add("interlocking_beam_layer_count", coInt);
|
||||
def->label = L("Interlocking beam layers");
|
||||
def->tooltip = L("The height of the beams of the interlocking structure, measured in number of layers. Less layers is stronger, but more prone to defects.");
|
||||
def->min = 1;
|
||||
def->category = L("Advanced");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionInt(2));
|
||||
|
||||
def = this->add("interlocking_depth", coInt);
|
||||
def->label = L("Interlocking depth");
|
||||
def->tooltip = L("The distance from the boundary between filaments to generate interlocking structure, measured in cells. Too few cells will result in poor adhesion.");
|
||||
def->min = 1;
|
||||
def->category = L("Advanced");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionInt(2));
|
||||
|
||||
def = this->add("interlocking_boundary_avoidance", coInt);
|
||||
def->label = L("Interlocking boundary avoidance");
|
||||
def->tooltip = L("The distance from the outside of a model where interlocking structures will not be generated, measured in cells.");
|
||||
def->min = 0;
|
||||
def->category = L("Advanced");
|
||||
def->mode = comAdvanced;
|
||||
def->set_default_value(new ConfigOptionInt(2));
|
||||
|
||||
def = this->add("ironing_type", coEnum);
|
||||
def->label = L("Ironing Type");
|
||||
def->category = L("Quality");
|
||||
|
|
|
@ -854,6 +854,14 @@ PRINT_CONFIG_CLASS_DEFINE(
|
|||
((ConfigOptionFloat, initial_layer_jerk))
|
||||
((ConfigOptionFloat, travel_jerk))
|
||||
((ConfigOptionBool, precise_z_height))
|
||||
|
||||
((ConfigOptionBool, interlocking_beam))
|
||||
((ConfigOptionFloat,interlocking_beam_width))
|
||||
((ConfigOptionFloat,interlocking_orientation))
|
||||
((ConfigOptionInt, interlocking_beam_layer_count))
|
||||
((ConfigOptionInt, interlocking_depth))
|
||||
((ConfigOptionInt, interlocking_boundary_avoidance))
|
||||
|
||||
)
|
||||
|
||||
// This object is mapped to Perl as Slic3r::Config::PrintRegion.
|
||||
|
|
|
@ -957,7 +957,13 @@ bool PrintObject::invalidate_state_by_config_options(
|
|||
|| opt_key == "slowdown_for_curled_perimeters"
|
||||
|| opt_key == "make_overhang_printable"
|
||||
|| opt_key == "make_overhang_printable_angle"
|
||||
|| opt_key == "make_overhang_printable_hole_size") {
|
||||
|| opt_key == "make_overhang_printable_hole_size"
|
||||
|| opt_key == "interlocking_beam"
|
||||
|| opt_key == "interlocking_orientation"
|
||||
|| opt_key == "interlocking_beam_layer_count"
|
||||
|| opt_key == "interlocking_depth"
|
||||
|| opt_key == "interlocking_boundary_avoidance"
|
||||
|| opt_key == "interlocking_beam_width") {
|
||||
steps.emplace_back(posSlice);
|
||||
} else if (
|
||||
opt_key == "elefant_foot_compensation"
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
#include "MultiMaterialSegmentation.hpp"
|
||||
#include "Print.hpp"
|
||||
#include "ClipperUtils.hpp"
|
||||
#include "Interlocking/InterlockingGenerator.hpp"
|
||||
//BBS
|
||||
#include "ShortestPath.hpp"
|
||||
|
||||
|
@ -1072,6 +1073,9 @@ void PrintObject::slice_volumes()
|
|||
this->apply_conical_overhang();
|
||||
m_print->throw_if_canceled();
|
||||
|
||||
InterlockingGenerator::generate_interlocking_structure(this);
|
||||
m_print->throw_if_canceled();
|
||||
|
||||
BOOST_LOG_TRIVIAL(debug) << "Slicing volumes - make_slices in parallel - begin";
|
||||
{
|
||||
// Compensation value, scaled. Only applying the negative scaling here, as the positive scaling has already been applied during slicing.
|
||||
|
|
|
@ -763,6 +763,14 @@ void ConfigManipulation::toggle_print_fff_options(DynamicPrintConfig *config, co
|
|||
toggle_field("seam_slope_min_length", !config->opt_bool("seam_slope_entire_loop"));
|
||||
toggle_line("scarf_angle_threshold", has_seam_slope && config->opt_bool("seam_slope_conditional"));
|
||||
toggle_line("scarf_overhang_threshold", has_seam_slope && config->opt_bool("seam_slope_conditional"));
|
||||
|
||||
bool use_beam_interlocking = config->opt_bool("interlocking_beam");
|
||||
toggle_line("mmu_segmented_region_interlocking_depth", !use_beam_interlocking);
|
||||
toggle_line("interlocking_beam_width", use_beam_interlocking);
|
||||
toggle_line("interlocking_orientation", use_beam_interlocking);
|
||||
toggle_line("interlocking_beam_layer_count", use_beam_interlocking);
|
||||
toggle_line("interlocking_depth", use_beam_interlocking);
|
||||
toggle_line("interlocking_boundary_avoidance", use_beam_interlocking);
|
||||
}
|
||||
|
||||
void ConfigManipulation::update_print_sla_config(DynamicPrintConfig* config, const bool is_global_config/* = false*/)
|
||||
|
|
|
@ -2039,10 +2039,10 @@ void TabPrint::build()
|
|||
optgroup->append_single_option_line("elefant_foot_compensation");
|
||||
optgroup->append_single_option_line("elefant_foot_compensation_layers");
|
||||
optgroup->append_single_option_line("precise_outer_wall", "Precise-wall");
|
||||
optgroup->append_single_option_line("precise_z_height", "precise-z-height");
|
||||
optgroup->append_single_option_line("hole_to_polyhole");
|
||||
optgroup->append_single_option_line("hole_to_polyhole_threshold");
|
||||
optgroup->append_single_option_line("hole_to_polyhole_twisted");
|
||||
optgroup->append_single_option_line("precise_z_height");
|
||||
|
||||
optgroup = page->new_optgroup(L("Ironing"), L"param_ironing");
|
||||
optgroup->append_single_option_line("ironing_type", "parameter/ironing");
|
||||
|
@ -2311,8 +2311,14 @@ void TabPrint::build()
|
|||
optgroup->append_single_option_line("fuzzy_skin_first_layer");
|
||||
|
||||
optgroup = page->new_optgroup(L("Advanced"), L"advanced");
|
||||
optgroup->append_single_option_line("interlocking_beam");
|
||||
// optgroup->append_single_option_line("mmu_segmented_region_max_width");
|
||||
optgroup->append_single_option_line("mmu_segmented_region_interlocking_depth");
|
||||
optgroup->append_single_option_line("interlocking_beam_width");
|
||||
optgroup->append_single_option_line("interlocking_orientation");
|
||||
optgroup->append_single_option_line("interlocking_beam_layer_count");
|
||||
optgroup->append_single_option_line("interlocking_depth");
|
||||
optgroup->append_single_option_line("interlocking_boundary_avoidance");
|
||||
|
||||
optgroup = page->new_optgroup(L("G-code output"), L"param_gcode");
|
||||
optgroup->append_single_option_line("reduce_infill_retraction");
|
||||
|
@ -3217,7 +3223,7 @@ void TabFilament::build()
|
|||
optgroup->append_single_option_line("required_nozzle_HRC");
|
||||
optgroup->append_single_option_line("default_filament_colour");
|
||||
optgroup->append_single_option_line("filament_diameter");
|
||||
optgroup->append_single_option_line("pellet_flow_coefficient");
|
||||
optgroup->append_single_option_line("pellet_flow_coefficient", "pellet-flow-coefficient");
|
||||
optgroup->append_single_option_line("filament_flow_ratio");
|
||||
|
||||
optgroup->append_single_option_line("enable_pressure_advance");
|
||||
|
@ -3648,7 +3654,6 @@ void TabPrinter::build_fff()
|
|||
optgroup->append_single_option_line(option);
|
||||
// optgroup->append_single_option_line("printable_area");
|
||||
optgroup->append_single_option_line("printable_height");
|
||||
optgroup->append_single_option_line("pellet_modded_printer");
|
||||
optgroup->append_single_option_line("support_multi_bed_types","bed-types");
|
||||
optgroup->append_single_option_line("nozzle_volume");
|
||||
optgroup->append_single_option_line("best_object_pos");
|
||||
|
@ -3670,6 +3675,7 @@ void TabPrinter::build_fff()
|
|||
optgroup = page->new_optgroup(L("Advanced"), L"param_advanced");
|
||||
optgroup->append_single_option_line("printer_structure");
|
||||
optgroup->append_single_option_line("gcode_flavor");
|
||||
optgroup->append_single_option_line("pellet_modded_printer", "pellet-flow-coefficient");
|
||||
optgroup->append_single_option_line("bbl_use_printhost");
|
||||
optgroup->append_single_option_line("disable_m73");
|
||||
option = optgroup->get_option("thumbnails");
|
||||
|
@ -4357,7 +4363,7 @@ void TabPrinter::toggle_options()
|
|||
toggle_line(el, is_BBL_printer);
|
||||
|
||||
// SoftFever: hide non-BBL settings
|
||||
for (auto el : {"use_firmware_retraction", "use_relative_e_distances", "support_multi_bed_types"})
|
||||
for (auto el : {"use_firmware_retraction", "use_relative_e_distances", "support_multi_bed_types", "pellet_modded_printer"})
|
||||
toggle_line(el, !is_BBL_printer);
|
||||
}
|
||||
|
||||
|
|
|
@ -88,9 +88,13 @@ std::mutex g_mutex;
|
|||
|
||||
struct form_file
|
||||
{
|
||||
fs::ifstream ifs;
|
||||
fs::ifstream ifs;
|
||||
boost::filesystem::ifstream::off_type init_offset;
|
||||
size_t content_length;
|
||||
|
||||
form_file(fs::path const& p, const boost::filesystem::ifstream::off_type offset, const size_t content_length)
|
||||
: ifs(p, std::ios::in | std::ios::binary), init_offset(offset), content_length(content_length)
|
||||
{}
|
||||
};
|
||||
|
||||
struct Http::priv
|
||||
|
@ -314,7 +318,7 @@ void Http::priv::form_add_file(const char *name, const fs::path &path, const cha
|
|||
filename = path.string().c_str();
|
||||
}
|
||||
|
||||
form_files.emplace_back(form_file{{path, std::ios::in | std::ios::binary}, offset, length});
|
||||
form_files.emplace_back(path, offset, length);
|
||||
auto &f = form_files.back();
|
||||
size_t size = length;
|
||||
if (length == 0) {
|
||||
|
@ -381,7 +385,7 @@ void Http::priv::set_put_body(const fs::path &path)
|
|||
boost::system::error_code ec;
|
||||
boost::uintmax_t filesize = file_size(path, ec);
|
||||
if (!ec) {
|
||||
putFile = std::make_unique<form_file>(form_file{{path, std::ios_base::binary | std::ios_base::in}, 0, 0});
|
||||
putFile = std::make_unique<form_file>(path, 0, 0);
|
||||
::curl_easy_setopt(curl, CURLOPT_UPLOAD, 1L);
|
||||
::curl_easy_setopt(curl, CURLOPT_READDATA, (void *) (putFile.get()));
|
||||
::curl_easy_setopt(curl, CURLOPT_INFILESIZE, filesize);
|
||||
|
|
|
@ -6,6 +6,7 @@
|
|||
#include <string>
|
||||
#include <functional>
|
||||
#include <boost/filesystem/path.hpp>
|
||||
#include <boost/filesystem/fstream.hpp>
|
||||
|
||||
#include "libslic3r/Exception.hpp"
|
||||
#include "libslic3r_version.h"
|
||||
|
|
Loading…
Reference in a new issue