Compare commits

..
Author SHA1 Message Date
Ian Chua 08dcc0adfc fix: sync per-filament arrays so MM segmentation can't read out of bounds 2026-10-13 20:38:43 +08:00
SoftFever df4c8cd531 Free G-code result and preview memory on reset (#16065)
GCodeProcessorResult declares a copy assignment, which suppresses the
implicit
move assignment, so `*result = std::move(processor.extract_result())`
binds to
the copy and duplicates the whole moves array: 96 bytes per move,
measured at
147.7 MiB in one allocation for a 597k facet model at 0.08 mm, with the
source
staying alive until the export returns.

Add the move assignment. It assigns exactly the same 39 members in the
same
order as the copy, including the ones the copy deliberately leaves
alone, so a
target that carries its own filament maps and nozzle type keeps them. A
move
constructor is intentionally not added: the type holds a std::mutex, so
it is
neither copy nor move constructible today and a partial one would leave
ten
members uninitialised.

reset() now releases the two print sized vectors rather than clearing
them. Its
callers are the paths that discard a result, so the memory went back
only at the
next slice.

ViewerImpl::reset() does the same for the two vectors sized by the
print, which
is what keeps a discarded preview resident, and counts m_vertices_colors
in the
reported CPU memory, where it was missing.
2026-10-13 18:06:46 +08:00
SoftFever bf5a378479 Free G-code result buffers with clear_and_shrink 2026-10-13 18:05:51 +08:00
Lam Wei Lun 01499e536e fix(gui): stop the UV editor pane from hijacking the shared GL context
The texture-displacement gizmo pushes pane state to the UV editor from the
preview rebuild that runs on every frame of a slider drag. Tile size is the
only one of the layer card's sliders whose value appears in that pane state,
so dragging it changes the "N.N mm tile" label, the panel relays out, and the
UV canvas receives a synchronous wxEVT_SIZE. Its on_size() flushes a paint
with Update(), and render() then makes the app's single shared wxGLContext
current on the UV drawable in the middle of the 3D canvas's frame.

On X11/GLX that out-of-turn context activation is fatal: the drawable the
3D canvas later swaps no longer belongs to the current context, the server
returns BadMatch, and GDK turns the unhandled X error into g_error(). EGL on
Wayland reports only a status, so the same theft silently corrupts the frame
instead of aborting - which is why the guard is not conditioned on the
display backend.

Add GLCanvas3D::is_frame_in_progress(), backed by a counter that
_render_frame() maintains through its existing scope guard, and let the UV
canvas skip the synchronous paint while a frame is on the stack, re-queueing
it with Refresh() so nothing is dropped. Rebind the context with
_set_current() before SwapBuffers() as well, so a surface that steals it by
some other route - a modal GL dialog a gizmo opens from its panel - cannot
turn the swap into the same fatal error.
2026-10-13 16:49:06 +08:00
SoftFever f33a9bf999 Merge branch 'main' into perf/gcode-result-move 2026-10-13 16:37:00 +08:00
HanifKoh 869e450981 Keep Per-Nozzle Values When a User Preset Syncs Through the Cloud (#16355)
The cloud upload sent only the keys that differ from the parent, so a
variant layout equal to the parent's was left out. On download the
loader sized every per-variant value by the missing layout, cut it to
one value and kept the parent's values for the other nozzles and nozzle
volume types. On dual-nozzle printers the right nozzle's settings
silently reverted to the parent's after a sync.

Upload the variant layout always, as the local save already does, and
read copies stored without it against the parent's layout when they
carry one value per parent variant.
2026-10-13 13:59:48 +08:00
hikaru0602 b920116fbd Fix manual tool change handling when loading G-code files (#15379)
Opened or drag-dropped G-code files ignored `; MANUAL_TOOL_CHANGE` comments, so the preview showed every move on the first filament. Only `apply_config(const PrintConfig&)` read `manual_filament_change`, and loading a file goes through `apply_config(const DynamicPrintConfig&)`. Read the option there too, initialize the flag to false, and add a regression test.
2026-10-12 20:03:04 -05:00
Downtime 237586675f fix(gui): remove legacy fixed-function OpenGL texture calls (#16270)
Debug builds asserted on startup because these calls raise GL errors on a core-profile context. Both draws already use shaders, so removing the calls changes nothing on compatibility contexts.
2026-10-12 20:01:57 -05:00
Ian Bassi 6d35ff6b9a Rewrite Fix Model on CGAL 6.2, fix Split to parts, remove Win10 SDK leftovers (#16366)
* Add CGAL-based mesh repair, drop Netfabb remnants

Add repair_mesh() in MeshRepair.cpp, a CGAL-based repair that replaces MeshBoolean::cgal::repair(). It welds cracks, cancels coincident triangles, fixes orientation, fills holes (including planar annular regions), removes local self-intersections, and unites crossing shells with libigl's exact boolean while following the nonzero winding rule used by slicing.

FixModelByCgal now repairs each volume in place without splitting it into parts, and reports whether the mesh was modified so unchanged meshes keep their painting and ids. The texture import repair prompt no longer depends on the Windows SDK, and the FIX_THROUGH_CGAL_ALWAYS conditionals are removed. The commented-out Netfabb/WIN10SDK build code is deleted.

libslic3r_cgal now builds with CGAL_LINKED_WITH_TBB and links TBB. Add docs/HLSD/mesh-repair.md and unit tests in test_mesh_repair.cpp.

* Parallelize repair while preserving separate shells

Repair connected mesh units and shells independently in parallel, keep crossing shells separate, and limit self-intersection remeshing to local defects. Update mesh-repair documentation and tests for the revised behavior.

* Make mesh repair deterministic and report its progress

Flags written from parallel loops were std::vector<bool>, whose neighbouring
bits share a word, so shells could be kept or dropped at random; they are now
std::vector<char>. Holes of up to 100 edges are filled with the search over all
triangles: the search restricted to a 3D Delaunay triangulation picks between
equally good fills differently from run to run.

Shells of fewer than four faces are dropped, as the volumes of two triangles
back to back need not cancel exactly, and a shell that self-intersection removal
changed is split again so the pieces it cut off are dropped too.

repair_mesh() takes a progress callback in place of the cancel callback, and
Fix Model reports each stage. The object's bounding box is now invalidated even
when a cancel or an error stops the repair after some volumes were replaced.

The edge-use sort, union-find and box-overlap code shared by several stages is
factored out, the topology analysed for welding is reused to build the work
units, the orientation pass checks only the edges it cut, and the output is
written from the shells without joining them first.

* Fix Split to parts crashing on flat pieces and staying offered after a repair

ModelVolume::split() added every piece to the object and then deleted the
pieces without a convex hull. When the first piece was flat, as often in a
triangle soup, that deleted the volume being split while split() and its
caller kept using it. A part made only of flat pieces lost all its volumes,
and a soup added thousands of pieces, saving a backup of the object for each
one it deleted. Pieces without a convex hull are now dropped before any joins
the object, the volume being split keeps the first remaining piece, and a part
with no solid piece is left whole. Other parts of the object without a convex
hull are no longer deleted as a side effect.

ModelVolume caches whether its mesh can be split, and set_mesh() kept the
cached value, so after Fix Model, Simplify or Emboss replaced a mesh, Split to
parts could still be offered for a single piece. set_mesh() and reset_mesh()
now clear the cache.

* Import STEP surface models with Split compound enabled

Splitting a compound kept only its solids, so a surface model, which OCCT
reads as a compound of loose faces, gave nothing to mesh and the import failed
with "Meshing of a model file failed or no valid shape". Each shell outside a
solid now becomes a part too, and loose faces stay together as one part, as
they do without splitting.

* Add Fix All for plates and re-enable --repair on the command line

ModelVolume::repair() applies repair_mesh() to a part and replaces the mesh
only when the repair changed it. Fix Model, the new Fix All and Fix All Plates
items of the plate context menu, and the command line's --repair option, which
had been commented out since the Win10 SDK repair was dropped, all use it.

With Keep painted feature after mesh change off, Fix Model cleared the painting
of every part of an object before repairing. Now only a part whose mesh changes
loses its painting, so fixing a whole project does not wipe it. The
notification counts the models that needed no repair instead of listing them as
repaired, and objects that did not change are not refreshed.
2026-10-12 21:59:17 -03:00
HMITCHR 075b03975f Read the initial filament start G-code through get_at() (#16080)
A filament_start_gcode list shorter than the filament count made the Bambu start-of-export path throw std::out_of_range. Use get_at() like the other filament_start_gcode reads, and add a regression test.
2026-10-12 19:55:02 -05:00
Kris Austin a379ec4a67 ci(macOS): retry stapler staple after notarization (#16424)
stapler fetches the notarization ticket from Apple's CloudKit server,
and a dropped connection there (NSURLError -1005, exit 68) failed the
whole macOS universal job twice on 2026-10-12, after notarization had
already been accepted. Rerunning the job passed, but repeats the full
build and both notarizations.

Wrap both stapler calls in the existing retry helper already used for
hdiutil in this step.
2026-10-12 19:36:45 -05:00
Alexandre Folle de Menezes 6700d4c5df Verify and improve AI pt_BR translations (#16377) 2026-10-12 20:57:57 -03:00
Downtimeandkenrap a28c9c3a82 fix(gui): guard gizmo actions before deferred initialization (#16268)
GLGizmosManager can be called while its gizmo list is empty, either at startup before the canvas has loaded the gizmos or after their init() failed. reset_all_states(), open_gizmo(), open_gizmo_by_shortcut() and activate_gizmo() now return early in that case. This fixes a Debug-build assert when a new project resets the gizmos at startup, and an out-of-bounds read in release builds when a gizmo shortcut key is pressed after gizmo init failed. activate_gizmo(Undefined) still returns true, since no gizmo is open. The reset_all_states() guard was first proposed in #16074 by kenrap.

Co-authored-by: kenrap <101818165+kenrap@users.noreply.github.com>
2026-10-12 18:25:17 -05:00
packerlschupfer 3dd547c8be CLI: Fix the -50 error reason assuming a 3mf upload (#16339)
The reason recorded for CLI_NO_SUITABLE_OBJECTS (-50) assumed a 3mf being uploaded. The CLI also slices STL, OBJ and STEP input, so the reason now states what both -50 sites check: the plate is empty, or no object on it is both printable and fully inside the print volume. The exit code is unchanged.

Adds tests/cli/test_cli_no_suitable_objects.sh.
2026-10-12 18:23:55 -05:00
f0e9cdc470 raft expansion (#16416)
Update ConfigManipulation.cpp

Co-authored-by: Accelerator <22743445+acceleratorlastorder@users.noreply.github.com>
Co-authored-by: Ian Bassi <12130714+ianalexis@users.noreply.github.com>
2026-10-12 18:24:25 -03:00
Downtime 58a71331d0 fix(gui): balance ImGui style stacks in gizmo windows (#16269)
Pop the FramePadding style var before end() in the move and rotate gizmo windows. It was pushed inside the window and popped after End(), which failed ImGui's style stack check in Debug builds.
2026-10-12 15:32:59 -05:00
packerlschupfer f127b758ed CLI: Don't rotate objects when arranging unless --allow-rotations is passed (#15033)
The CLI's arrange no longer rotates objects unless --allow-rotations is passed, which matches the GUI's default. STL, OBJ and STEP inputs are arranged even without --arrange, so a part that only fits the bed when rotated now exits with -50 unless --allow-rotations is given. The CLI prints that reason to stderr.
2026-10-12 15:17:38 -05:00
Fernando Marino` 1494de66de Bracket a toolchange's own gcode against FanMover splitting its moves (#15904)
FanMover could split a move inside change_filament_gcode to place a delayed fan command. It computed the split point from the last position the G-code set, but on Bambu printers the firmware moves the head during the T command, so the inserted waypoint sent the head to a spot the template never visits (#15789).

Both toolchange paths, set_extruder() and the Type1 append_tcr(), now wrap the template output in ;_FAN_MOVER_SKIP_START/END tags when fan speed-up or kick-start is on. FanMover keeps fan commands inside them where they are and drops the tags from the output. multifilament_config() also sizes the per-filament options that the wipe tower reads by index.
2026-10-12 14:26:20 -05:00
SoftFever 3ca182a98e Fix H2C start G-code record-data comments (#16406)
This fixes the H2C start G-code template by commenting the two
`========== record data ==========` separator lines.

Those lines are currently emitted as raw text inside
`machine_start_gcode`. Since they are not comments or G-code commands,
they can make the generated start sequence invalid or firmware-dependent
when the template is used. The fix preserves the separators as comments.

Fixes #16218.

Validation:
- Parsed the modified JSON profile with Python `json.loads`.
- Checked both `record data` separator lines now start with `;` after
unescaping the G-code string.
2026-10-13 01:07:25 +08:00
SoftFever 5e19fc0e6c Stop leaking layers on re-slice and honor each object's slice closing radius (#16066)
# Description

Re-slicing no longer leaks layers in two places. Tree supports dropped
the support layers above the topmost overhang without freeing them. And
an object that had sliced itself, then became identical to another
object (for example a copy whose original lost a per-object setting or
modifier), leaked its own layers when it switched to sharing that
object's slices; it now frees them once it takes the shared layers over.
If slicing is cancelled before that point, they still leak, as before.
Tree support also stops copying its collision and avoidance areas on
every lookup, and releases its working cache once supports are generated
instead of keeping it until the next slice. Elephant-foot compensation
now uses each object's own slice closing radius, where the first object
sliced in a session used to fix the value for every later slice.

Slicing output changes only on layers with more than one region printed
with elephant-foot compensation and no raft, and only where an object's
slice closing radius differs from the value the session had fixed.

# Screenshots/Recordings/Graphs

<!--
> Please attach relevant screenshots to showcase the UI changes.
> Please attach images that can help explain the changes.
-->

## Tests

Adds a regression test for an object that switches to sharing another
object's slices. The `fff_print` suite passes.

<!--
> A guide for users on how to download the artifacts from this PR.
-->

[How to Download Pull Requests Artifacts for
Testing](https://www.orcaslicer.com/wiki/how_to_download_pr_artifacts)

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-10-13 00:28:26 +08:00
SoftFever 3f4709aaa7 Fix stale and hidden highlights in the texture displacement gizmo (#16409)
# Description

Fixes highlights in the texture displacement gizmo that stayed on screen
after the state behind them changed, or were drawn where they could not
be seen. Erase whole model, Select whole model and Capture current view
update the paint highlight at once instead of on the next right-click. A
stroke released outside the 3D view ends on the next mouse move, in
every paint gizmo, rather than leaving the brush stuck in its pressed
colour. The layer textures stop showing an image that has been replaced.
Selecting islands in the UV editor switches a Normal view to Fast, where
their highlight is visible instead of buried under the displaced relief,
and Normal comes back once no island is selected unless another view was
picked in the meantime.

No change to slicing output; the changes are confined to the paint
gizmos and the UV editor.

# Screenshots/Recordings/Graphs

<!--
> Please attach relevant screenshots to showcase the UI changes.
> Please attach images that can help explain the changes.
-->

## Tests

<!--
> Please describe the tests that you have conducted to verify the
changes made in this PR.
-->

<!--
> A guide for users on how to download the artifacts from this PR.
-->

[How to Download Pull Requests Artifacts for
Testing](https://www.orcaslicer.com/wiki/how_to_download_pr_artifacts)
2026-10-13 00:23:33 +08:00
SoftFever c63bd5d474 Switch to the Fast view while UV islands are selected in the texture gizmo
The island highlight was hidden under the Normal view's relief. Normal comes back once no island is selected, unless another view was picked in the meantime.
2026-10-13 00:18:51 +08:00
SoftFever 6263502697 Free a sharing object's own layers only when it takes over the shared ones 2026-10-13 00:15:07 +08:00
HanifKoh 1a9201690d Draw Preview Segments With 16-Bit Indices (#16389)
The segment draw switched to an element buffer of 8-bit indices. GCN 1/2
GPUs cannot read 8-bit indices in hardware, so the driver converts them,
and on a Mac Pro 2013 FirePro under Windows Boot Camp the toolpaths come
out as scattered spikes. 16-bit indices are supported everywhere and keep
the eight shader runs per segment.
2026-10-13 00:09:18 +08:00
SoftFever c6a338f35f Fix stale paint highlights and textures in the texture displacement gizmo
Erase whole model, Select whole model and Capture current view update the
highlight at once. A stroke released outside the 3D view ends on the next mouse
move, in every paint gizmo, instead of leaving the brush in its pressed colour.
The layer textures no longer show an image that was replaced.
2026-10-12 23:18:38 +08:00
HanifKoh 4f2d2ae11a Wait for the PR's Deps Cache in clang-tidy When deps/ Changes (#16374)
* Wait for the PR's Deps Cache in clang-tidy When deps/ Changes

* Fail the clang-tidy Deps Wait When Listing Caches Keeps Failing

* Wait for Deps Through ci_deps_cache.sh in clang-tidy

Reuse the macOS deps wait for Linux: the job names, workflow and cache
ref are passed in, and a new 'own' mode waits for the PR's own build
when it changes deps/. A PR that keeps deps/ now waits for a running base
build with the same deps, and warns when it falls back to older ones. The
wait ends as soon as the deps job fails.
2026-10-12 23:17:41 +08:00
SoftFever c57b5dc6c5 Merge branch 'main' into perf/slicing-core-memory 2026-10-12 22:16:10 +08:00
SoftFever 7149728219 Fix clang-cl dependency builds failing on a precompiled header from the compiler cache 2026-10-12 20:27:37 +08:00
SoftFever f49d49b5a6 Texture displacement: typed values on every panel slider (#16395)
Every slider in the texture displacement panel can now be given an exact
number, either by Ctrl+clicking the track or via a small edit icon at
its right end. Both routes reuse ImGui's own temp-input mode.

Each slider also gets a tooltip with its description and its range, and
the panel's `?` popup lists both ways in.

Draft: description to be refined.
2026-10-12 20:03:43 +08:00
SoftFever 08f2037cbd Texture displacement: save layers, textures and paint in the .3mf (#16148)
## General

Nothing about texture displacement was written to the `.3mf`, so a
painted relief did not survive closing the project.
Everything the user set up is saved now, so a project reopens with the
relief intact and still editable.

### What is saved
- The layer stack: every per-layer setting (depth, midlevel, smoothing,
tiling, projection blend mode, colour) and the per-volume options
- Each layer's texture, as a file in the archive (why? because user
might want to move .3mf to another computer where custom textures are
missing, or he saves .3mf then deletes textures, and returns back to
.3mf)
- The painted region, one mask per layer slot
- The UV work: LSCM seams, island placement, per-vertex overrides
- Editor state: the selected layer and Standard/Pro, so the panel
reopens where it was left

### What is not saved
- The preview mesh. It is a second copy of the model in the file, for
something the app rebuilds quickly on reopen.
- Panel docked/undocked, which goes to the application config instead

## Format

- `<volume id>.json` - the layer stack and the per-volume options
- `<volume id>_<slot>.png` - each layer's texture, referenced from the
JSON through `path_in_3mf`

Paint masks ride along as one per-triangle attribute per slot
(`paint_texture_0..7`), beside
the attributes the existing paint tools already write.

## Compatibility
Both ways:
- an older build ignores what it does not know and still opens the
project, losing only the relief
- a newer build finds nothing in an older project and leaves the volume
as today.
2026-10-12 20:00:17 +08:00
SoftFever d8cae3268a Merge branch 'main' into feature/texdisp-3mf-persistence 2026-10-12 19:47:05 +08:00
chenshj73 7d4ec3494c Fix H2C start G-code record-data comments 2026-10-12 19:30:32 +08:00
HanifKoh cccf53850e Remove Never-Built and Stub Source Files (#16361)
SysInfoDialog, JumpPointSearch and WebUpdatePlugin are in no CMake list on any platform, and nothing includes ConfigExceptions.hpp, wxinit.h or Utils/Profile.hpp. MultiTaskModel holds only empty namespaces. Also drop the empty GUI_App::system_info() and comments that still mention SysInfoDialog.
2026-10-12 18:53:32 +08:00
HanifKoh 5095733323 Fix Include Guards Copied From Other Headers (#16368)
TriangleMeshDeal.hpp reused Timer.hpp's guard and CloneDialog.hpp reused
SingleChoiceDialog.hpp's, so including both headers of a pair silently
dropped the second one. Use #pragma once instead.
2026-10-12 18:52:53 +08:00
HanifKoh 0cec10748e Remove the /bot fix-tidy clang-tidy Fix Bot (#16400)
Its inline suggestions rarely apply: clang-tidy adds a missing include
to the include block at the top of the file, which a PR seldom touches,
and GitHub only accepts review suggestions on lines in the PR's diff.
2026-10-12 18:47:26 +08:00
HanifKoh c55f9c2251 Add a /bot fix-tidy Command That Suggests clang-tidy's Missing Includes (#16398)
* Add a /bot fix-tidy Command That Pushes clang-tidy's Missing Includes

A maintainer comments /bot fix-tidy on a PR. A read-only job runs
scripts/run_clang_tidy.sh --fix on the PR's merge commit and returns the
patch; a second job, which never runs the PR's code, accepts it only when
it adds nothing but #include lines to C++ files the PR already changes,
then commits it on the PR head and pushes with CLANG_TIDY_BOT_TOKEN.

* Post clang-tidy's Fix as Review Suggestions Instead of Pushing It

A failed clang-tidy check now runs once more with --fix and uploads the
patch as the clang-tidy-fix artifact; the check still fails. /bot
fix-tidy downloads that patch for the PR's latest commit, checks it adds
only includes to C++ files the PR changes, and posts one review: a
one-click suggestion for each include on a line the PR's diff shows, and
the whole patch with a git apply command. Nothing is pushed and no PR
code runs in the bot, so the PR's author can run it too and no token is
needed.

* Make the clang-tidy Fix in Its Own PR-Scoped Workflow on Request

clang_tidy.yml is back to main's version. clang_tidy_fix.yml runs on
every PR push but skips its job on the first attempt; /bot fix-tidy
re-runs it, so run_clang_tidy.sh --fix runs in the PR's own context
with a read-only token and the PR's cache, never main's, and the PR's
author can ask for it. When that re-run finishes, the bot posts the
patch as review suggestions as before. When the clang-tidy step fails,
the bot also comments asking the author to run the script or the
command, edits that comment on later failures, and deletes it once the
check passes.

* Give the clang-tidy Bot Write Access to PRs It Answers

* Tell /bot fix-tidy Users How to Start a Fix Run When There Is None to Re-Run
2026-10-12 18:31:03 +08:00
SoftFever 3f78959a0c Harden loading and saving of texture displacement in projects
A project no longer reads texture files from outside its archive, and a
malformed value or layer slot drops only the texture layers instead of
failing the whole load. Copies of an object that share a mesh keep their
own texture paint when saved, and projects without texture paint no
longer use extra memory to load.
2026-10-12 17:47:04 +08:00
SoftFever d2675f15d1 Fix Qidi start G-code ignoring the selected plate type (#16372)
# Description

With "Support multi bed types" enabled on a Qidi printer, the
first-layer bed temperature was always taken from the Smooth PEI / High
Temp Plate setting, whichever plate type was selected.

The slicer computes the right value (`first_layer_bed_temperature` in
the G-code footer follows the selected plate), but the machine start
G-code of these presets hardcoded `[hot_plate_temp_initial_layer]`:

- `fdm_qidi_x3_common` (base of X-Max 3, X-Plus 3, X-Smart 3, X-Plus 4,
Q1 Pro)
- `Qidi Q1 Pro 0.4 nozzle`
- `Qidi X-CF Pro 0.4 nozzle`

They now use `[bed_temperature_initial_layer_single]`, which follows the
selected plate type, as most other profiles do. The Qidi bundle version
is bumped to `02.04.00.17`.

With "Support multi bed types" disabled, these printers use the default
plate (Smooth PEI / High Temp Plate), so the temperature is unchanged
there.

# Screenshots/Recordings/Graphs

N/A — profile change only.

## Tests

`python3 scripts/orca_profile_tool.py check` passes.

Sliced on Qidi X-Max 3 0.4 nozzle with "Support multi bed types"
enabled, `0.20mm Standard @Qidi XMax3`, `Generic PLA @Qidi`, with a
different bed temperature set for each plate type (first layer / other
layers).

Before, with first layer set to 50–55 °C: `M190 S54` for every plate
type.

After, a two-layer print:

| Plate type | Set (first / other) | `M190` at start | `M140` at layer 2
|
| --- | --- | --- | --- |
| Cool Plate SuperTack | 51 / 61 | 51 | 61 |
| Cool Plate | 52 / 62 | 52 | 62 |
| Textured Cool Plate | 53 / 63 | 53 | 63 |
| Engineering Plate | 54 / 64 | 54 | 64 |
| Smooth PEI / High Temp Plate | 55 / 65 | 55 | 65 |
| Textured PEI Plate | 56 / 66 | 56 | 66 |

🤖 Generated with [Claude Code](https://claude.com/claude-code)4
2026-10-12 17:14:22 +08:00
HanifKoh 5371c85362 Refresh Dark Mode Colours When the System Theme Differs at Startup (#16390)
On Linux and macOS the app follows the system theme: at startup it
overwrites the saved dark_color_mode with the system appearance. The label
colours and the cached dark mode flag were already set from the saved value
by then, and the later "changed" check reads the mode only after the
overwrite, so it never fires. For that session every dialog that maps its
colours through UpdateDlgDarkUI keeps the old mode, e.g. white dialogs on a
dark main window after switching the desktop to dark, or on a fresh install
on a dark desktop.

Refresh the label colours and the flag when the system theme differs from
the saved mode.
2026-10-12 17:09:05 +08:00
SoftFever 30e48183e3 Merge branch 'main' into feature/texdisp-3mf-persistence
# Conflicts:
#	src/libslic3r/TextureDisplacement.hpp
#	tests/libslic3r/test_texture_displacement.cpp
2026-10-12 16:58:03 +08:00
SoftFever a243941b72 Add favorite filaments to AMS filament dropdown (#13946)
# Description

## Summary:

Adds favorite filament support to the AMS material selection dropdown.

Users can now click a star icon next to a selectable filament in the AMS Materials Setting dialog to mark it as a favorite. Favorited filaments appear in a new `Favorite filaments` section at the top of the dropdown, while all compatible filaments remain available in the `All filaments` section.

This PR also adds generic right-side action icon support to Orca's custom dropdown widget:

- Adds optional action icons to `DropDown::Item`.
- Adds a new `EVT_DROPDOWN_ITEM_ACTION` event for clicks on the action icon.
- Relays the action event through `ComboBox`.
- Adds `ComboBox::RefreshDropdownIfOpen()` so callers can refresh an already-open dropdown without changing normal `ForceDropdownOpen()` behavior.

The AMS favorites implementation:

- Uses existing bundled star assets:
  - `score_star_dark` for non-favorited filaments
  - `score_star_light` for favorited filaments
- Stores favorite filament IDs in app config under `ams_favorite_filament_ids`.
- Stores stable filament IDs instead of display names
- Uses existing C-style string escaping helpers for persistence.
- Keeps Bambu/RFID/read-only slot behavior unchanged

No new external dependencies.

**Note:** `AMSMaterialsSetting` now uses Orca's custom `ComboBox` on macOS as well, because the favorite-star UI depends on the custom `DropDown` item renderer. I was able to test this on Windows, but macOS/Linux smoke testing is still needed and would be appreciated.

# Screenshots/Recordings:

https://github.com/user-attachments/assets/41e881be-d4de-4a7d-8f99-4297567adef2

<img width="494" height="36" alt="Screenshot 2026-05-30 103432" src="https://github.com/user-attachments/assets/e7c34ed3-db7a-4705-a1cd-4bfe7ac1616a" />


## Tests

Tested on Windows:

- Built OrcaSlicer locally
- Opened the Device tab with Bambu Lab printer with AMS
- Opened the AMS Materials Setting dialog from an editable AMS slot
- Confirmed clicking a star toggles favorite state.
- Star clicks do not select the filament row.
- Dropdown remains open after toggling a favorite.
- Confirmed favorited filaments appear under `Favorite filaments`.
- All compatible filaments remain visible under `All filaments`.
- Confirmed Filament still selected as before
- Confirmed favorites persist after closing and reopening the dialog.
- Confirmed favorites persist after restarting OrcaSlicer.
- Confirmed the favorite IDs are saved in `OrcaSlicer.conf` under `ams_favorite_filament_ids`.
- Bambu/RFID/read-only filament slots continue using the existing read-only display behavior.

Not tested:

- macOS
- Linux/Wayland

These should be tested, `ComboBox` behavior not tested on macOS.

[How to Download Pull Requests Artifacts for Testing](https://www.orcaslicer.com/wiki/how_to_download_pr_artifacts)
2026-10-12 16:37:29 +08:00
SoftFever 6a1a5d51e9 Show an outline star for filaments that are not favorites 2026-10-12 16:03:49 +08:00
HanifKoh e625845b34 Keep Snapshot Suppression for the Whole Object List Edit (#16388)
Five Plater::TakeSnapshot guards in GUI_ObjectList were unnamed temporaries, so snapshots were allowed again as soon as the snapshot was taken. Naming them keeps the suppression until the edit is done, as everywhere else.
2026-10-12 16:02:43 +08:00
SoftFever 01b340dee1 Fix regressions in the AMS filament favorites dropdown 2026-10-12 14:54:17 +08:00
HanifKoh 4c2a63e11e Copy Plate Pick and Pattern File Paths When Loading a G-code 3MF (#16387)
The importer assigned pick_file.empty() and pattern_bbox_file.empty(), a bool, to the string fields, storing a one-character string instead of the path.
2026-10-12 14:14:28 +08:00
ExPikaPaka ed1f3e52c9 Texture displacement: typed values on every panel slider
Every slider in the texture displacement panel now takes an exact number,
either by Ctrl+clicking the track or through a small edit icon at its right
end. Both routes end in ImGui's own temp-input mode: the icon only asks ImGui
to focus the slider, which is what turns it into an input box, so the parsing,
the clamping and the Enter/click-away behaviour stay ImGui's rather than
becoming a second implementation.

The mechanism lives in one helper, typed_row(), with a float and an int form
over it. float_row() and int_row() are thin wrappers on those, and the six
sliders that previously built their widget inline (brush size, smart fill
angle, edge fade amount, remesh sharp angle, refine resolution and the uniform
triangle budget) now go through the same path.

Each slider carries a tooltip with its description and its range. The range is
derived from the bounds and the format string the slider is already given, so
no row states them twice and the tooltip cannot drift from the track. The
tooltip allows hovering while disabled, since several rows are drawn inside
disabled_begin(), where a greyed slider is exactly when the explanation is
wanted.

The panel's "?" popup gains an entry for each of the two ways in, appended to
every tool's shortcut list and shown on their own when no painting tool is
selected, where that popup was previously empty.
2026-10-12 07:57:07 +02:00
HanifKoh f8cf34c55b Reset the Fan Mover Instead of Releasing It (#16386)
Clearing per-export state called unique_ptr::release(), which gives up ownership without deleting. Every export uses a new GCode, so the pointer is still empty there today and nothing leaks; reset() states the intent and would free the object if a GCode were ever reused.
2026-10-12 13:42:19 +08:00
SoftFever d007134001 fix: update translation for Assistant(HMS) in Chinese localization 2026-10-12 12:53:16 +08:00
SoftFever 00d11a7ba0 Merge branch 'main' into UI-changes 2026-10-12 12:17:21 +08:00
Šimon 70f518d87a Added new profiles for the FELIX Printers vendor (#16314)
* Added new profiles for the FELIX Printers vendor

* fixed all errors from profiles
2026-10-12 10:02:56 +08:00
Boris SamorodovandClaude Opus 5.5 546b9c621d Fix Qidi start G-code ignoring the selected plate type
The start G-code of fdm_qidi_x3_common, Qidi Q1 Pro 0.4 nozzle and
Qidi X-CF Pro 0.4 nozzle heated the bed to hot_plate_temp_initial_layer,
so with "Support multi bed types" enabled every plate type got the
Smooth PEI / High Temp Plate temperature. Use
bed_temperature_initial_layer_single, which follows the selected plate.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-11 00:49:25 +02:00
ExPikaPaka 8ecfee6a21 Save where the panel was left, and recover a texture the archive lacks
The project carried the layer stack but not the user's place in it: a reopened
project landed on slot 0 in Standard, whatever they had been editing. The active
layer and Standard/Pro now live on the volume, next to the rest of its options,
and come back with it. Docked/undocked goes to the application config instead -
it describes the user's window, not the model, so opening someone else's project
must not move their panel.

A layer whose image_data was empty at save time was written with no texture and
came back with none. It now falls back to the file the layer came from, which the
importer put in the user's own texture library, so a project reopened on the same
machine keeps its pixels.

The texture is always stored as .png: the importer converts whatever the user
picked, so the extension was being taken from a name that no longer described the
bytes.

Also adds v2_flip_edges to the cereal field list, which the undo stack was
silently dropping.
2026-10-09 09:35:35 +02:00
ExPikaPaka fbf4652e12 Fix the build and clang-tidy failures in the persistence change
The round-trip test named a TextureTileMethod enumerator that does not
exist (MirroredRepeat, not Mirror) and used a bare Approx, which Catch2 v3
keeps in its own namespace. The rest of the file compares floats with
WithinAbs, so these follow it rather than reaching for Catch::Approx.

bbs_3mf.cpp reads and writes the layer JSON but picked up the declarations
through another header, and the same for boost::to_lower.
2026-10-09 09:05:42 +02:00
ExPikaPaka be9ff50130 Merge remote-tracking branch 'origin/main' into feature/texdisp-3mf-persistence
# Conflicts:
#	src/libslic3r/TextureDisplacement.cpp
2026-10-09 09:03:51 +02:00
SoftFever dee1f1715f Merge branch 'main' into feature/texdisp-3mf-persistence 2026-10-09 12:15:16 +08:00
ExPikaPaka fcb1f62bd9 Save texture displacement in the project file
A painted relief did not survive closing the project: nothing about the feature
was written to the .3mf, so the layers, their textures and the paint mask were
all lost on save. The layer struct's cereal save()/load() serve the undo/redo
stack only, which is one session and one binary stream.

Write the layer stack and the per-volume options as JSON in the archive, and
each layer's texture as the image file it was loaded from, both referenced by
path - the same split EmbossShape already makes for its SVG. The image stays
out of the XML deliberately: it is binary and routinely megabytes, and base64
in an attribute would bloat the one file every reader parses just to list the
objects. JSON rather than the cereal stream next to it because that one is
positional and unversioned, which would make every future field a
project-breaking change; an unknown key is ignored and a missing one keeps its
default, so a project written by either side keeps loading.

The paint masks go in as one attribute per layer slot, mirroring paint_color.
Older readers ignore attributes they do not know, so a project written here
still opens in a build without the feature - it loses the relief, which is all
it could have done with it anyway.

The layers are restored while the volume is being built rather than after the
archive is walked: volumes are constructed only once the whole archive has been
read, so a hook placed after the walk ran before any volume existed and
restored nothing.
2026-10-05 08:36:22 +02:00
ExPikaPaka bea412fddf Move the G-code processing result instead of copying it
GCodeProcessorResult declares a copy assignment, which suppresses the implicit
move assignment, so `*result = std::move(processor.extract_result())` binds to
the copy and duplicates the whole moves array: 96 bytes per move, measured at
147.7 MiB in one allocation for a 597k facet model at 0.08 mm, with the source
staying alive until the export returns.

Add the move assignment. It assigns exactly the same 39 members in the same
order as the copy, including the ones the copy deliberately leaves alone, so a
target that carries its own filament maps and nozzle type keeps them. A move
constructor is intentionally not added: the type holds a std::mutex, so it is
neither copy nor move constructible today and a partial one would leave ten
members uninitialised.

reset() now releases the two print sized vectors rather than clearing them. Its
callers are the paths that discard a result, so the memory went back only at the
next slice.

ViewerImpl::reset() does the same for the two vectors sized by the print, which
is what keeps a discarded preview resident, and counts m_vertices_colors in the
reported CPU memory, where it was missing.
2026-10-01 09:15:15 +02:00
ExPikaPaka 391c53a8da Take the print config by reference while simplifying extrusions
simplify_path, simplify_multi_path and simplify_loop each copied the whole
PrintConfig, 10520 bytes with around 200 heap owning members, once per extrusion
entity, from inside the parallel_for over all layers. LayerRegion.cpp already
binds a reference a few hundred lines above. Three more sites in Layer.cpp do the
same thing.

The tree support changes in the same area: draw_circles() dropped layers from an
owning vector without deleting them, so every re-slice leaked the layers above
the topmost overhang. std::stable_partition rather than std::remove_if, because
remove_if leaves moved-from duplicates of kept pointers in the tail and deleting
those would be a double free. The collision and avoidance accessors returned
ExPolygons by value out of a cache that hands them out by reference, several
times per node per layer. The preview cache is released when the support step
finishes instead of at the start of the next slice; nothing reads it in between.

set_shared_object() now releases the layers the object still owns before it
starts aliasing another object's. Both clear functions are no-ops once the alias
is set, so this cannot free the sharee's layers.

PrintObjectSlice.cpp: eps was a function local static inside a parallel_for, so
slice_closing_radius was latched once per process. This one changes output for
projects that override it per object, or on a re-slice after editing it. The old
behaviour was undefined: whichever object won the race set it for the session.
2026-10-01 09:15:15 +02:00
SoftFever a13089d357 Merge branch 'main' into UI-changes 2026-06-02 14:40:05 +08:00
KrishManan fb6c93963d Add AMS filament favorites 2026-05-30 17:45:03 +08:00
KrishManan 7688f7a16c Add dropdown item action icons 2026-05-30 17:45:03 +08:00
342 changed files with 16998 additions and 4703 deletions
+2 -6
View File
@@ -341,12 +341,12 @@ jobs:
# Notarize main DMG
xcrun notarytool submit "OrcaSlicer_Mac_universal_${{ env.ver }}.dmg" --apple-id "${{ secrets.APPLE_DEV_ACCOUNT }}" --team-id "${{ secrets.TEAM_ID }}" --password "${{ secrets.APP_PWD }}" --wait
xcrun stapler staple OrcaSlicer_Mac_universal_${{ env.ver }}.dmg
retry xcrun stapler staple OrcaSlicer_Mac_universal_${{ env.ver }}.dmg
# Notarize profile validator DMG if it exists
if [ -f "OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg" ]; then
xcrun notarytool submit "OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg" --apple-id "${{ secrets.APPLE_DEV_ACCOUNT }}" --team-id "${{ secrets.TEAM_ID }}" --password "${{ secrets.APP_PWD }}" --wait
xcrun stapler staple OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg
retry xcrun stapler staple OrcaSlicer_profile_validator_Mac_universal_${{ env.ver }}.dmg
fi
- name: Create DMG without notary
@@ -460,10 +460,6 @@ jobs:
- name: Build slicer Win
if: runner.os == 'Windows'
working-directory: ${{ github.workspace }}
# Orca: Removed Netfabb STL fixing service support in favor of CGAL.
# env:
# WindowsSdkDir: 'C:\Program Files (x86)\Windows Kits\10\'
# WindowsSDKVersion: '10.0.26100.0\'
# --tests builds the unit tests too; the unit_tests_windows_* jobs run them.
run: |
# cache-path is the install directory inside the deps build directory.
+70 -4
View File
@@ -16,6 +16,15 @@ on:
permissions:
contents: read
# Listing caches and builds while waiting for a deps cache.
actions: read
# Read by scripts/ci_deps_cache.sh.
env:
REPO: ${{ github.repository }}
WORKFLOW: build_all.yml
BASE_REF: ${{ github.base_ref }}
JOB: build_linux (${{ vars.SELF_HOSTED && 'orca-lnx-server' || 'ubuntu-24.04' }})
concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.number }}
@@ -35,7 +44,7 @@ jobs:
# The PR merge commit plus its first parent, the base it is diffed against.
fetch-depth: 2
- name: Look for changed C++ files
- name: Look for changed files
id: changes
run: |
if git -c core.quotePath=false diff --name-only HEAD^1 -- src tests | grep -qE '\.(cpp|cc|cxx|hpp|h|hxx)$'; then
@@ -43,18 +52,75 @@ jobs:
else
echo "No C++ changes under src/ or tests/."
fi
if ! git diff --quiet HEAD^1 -- deps; then
echo "deps=true" >> "$GITHUB_OUTPUT"
fi
echo "deps-key=linux-clang-cache-orcaslicer_deps-build-${{ hashFiles('deps/**') }}" >> "$GITHUB_OUTPUT"
# Parsing needs the dependency headers, not a build of this PR's deps/, so
# a PR that changes deps/ falls back to the newest cache main has.
# Parsing needs the dependency headers, not a build of this PR's deps/.
# Without an exact match the job waits for the build that saves it: this
# PR's own when it changes deps/, otherwise a running push build of the
# base branch with the same deps. With neither, a PR that keeps deps/
# falls back to the newest cache.
- name: Restore cached deps
id: deps_cache
if: steps.changes.outputs.cpp == 'true'
uses: actions/cache/restore@v6
with:
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep
key: linux-clang-cache-orcaslicer_deps-build-${{ hashFiles('deps/**') }}
key: ${{ steps.changes.outputs.deps-key }}
- name: Look for a build to wait for
id: wait_check
if: steps.changes.outputs.cpp == 'true' && steps.deps_cache.outputs.cache-hit != 'true'
env:
GH_TOKEN: ${{ github.token }}
HEAD_SHA: ${{ github.event.pull_request.head.sha }}
run: bash scripts/ci_deps_cache.sh ${{ steps.changes.outputs.deps == 'true' && 'own' || 'check' }}
# Linux Build Deps takes about 35 minutes on GitHub-hosted runners. The
# wait ends early when the deps job fails.
- name: Wait for the deps cache
if: steps.wait_check.outputs.wait-for != ''
timeout-minutes: 100
env:
GH_TOKEN: ${{ github.token }}
KEY: ${{ steps.changes.outputs.deps-key }}
CACHE_REF: ${{ steps.changes.outputs.deps == 'true' && github.ref || format('refs/heads/{0}', github.base_ref) }}
KEY_INPUTS: ${{ steps.wait_check.outputs.key-inputs }}
WAIT_FOR: ${{ steps.wait_check.outputs.wait-for }}
WAIT_SINCE: ${{ steps.wait_check.outputs.wait-since }}
WAIT_MINUTES: 90
run: bash scripts/ci_deps_cache.sh wait
- name: Restore the deps cache after waiting
id: waited_cache
if: steps.wait_check.outputs.wait-for != ''
uses: actions/cache/restore@v6
with:
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep
key: ${{ steps.changes.outputs.deps-key }}
- name: Fail without this PR's deps cache
if: steps.changes.outputs.deps == 'true' && steps.wait_check.outcome == 'success' && steps.waited_cache.outputs.cache-hit != 'true'
run: |
echo "::error::No deps cache ${{ steps.changes.outputs.deps-key }}. Check this PR's Linux Build Deps job, then rerun clang-tidy."
exit 1
- name: Restore the newest cached deps
id: newest_cache
if: steps.changes.outputs.deps != 'true' && steps.wait_check.outcome == 'success' && steps.waited_cache.outputs.cache-hit != 'true'
uses: actions/cache/restore@v6
with:
path: ${{ github.workspace }}/deps/build/OrcaSlicer_dep
key: ${{ steps.changes.outputs.deps-key }}
restore-keys: linux-clang-cache-orcaslicer_deps-build-
fail-on-cache-miss: true
- name: Warn about older deps
if: steps.newest_cache.outcome == 'success' && steps.newest_cache.outputs.cache-hit != 'true'
run: echo "::warning title=Older deps::No cache matches this PR's deps/, so clang-tidy parsed against ${{ steps.newest_cache.outputs.cache-matched-key }}. If it reports errors in code that uses a dependency, rerun clang-tidy once the base branch's Build all has saved the new deps."
- name: Apt-Install Dependencies
if: steps.changes.outputs.cpp == 'true' && !vars.SELF_HOSTED
uses: ./.github/actions/apt-install-deps
-41
View File
@@ -497,47 +497,6 @@ endif()
# Once we get rid of Perl and libslic3r is linked statically, we can get rid of -fPIC
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
# WIN10SDK_PATH is used to point CMake to the WIN10 SDK installation directory.
# We pick it from environment if it is not defined in another way
# ORCA: Removed Netfabb STL fixing service support in favor of CGAL.
# if(WIN32)
# if(NOT DEFINED WIN10SDK_PATH)
# if(DEFINED ENV{WIN10SDK_PATH})
# set(WIN10SDK_PATH "$ENV{WIN10SDK_PATH}")
# endif()
# endif()
# if(DEFINED WIN10SDK_PATH)
# #BBS: modify win10sdk_path
# if (EXISTS "${WIN10SDK_PATH}/winrt/windows.graphics.printing3d.h")
# set(WIN10SDK_INCLUDE_PATH "${WIN10SDK_PATH}")
# else()
# message("WIN10SDK_PATH is invalid: ${WIN10SDK_PATH}")
# message("${WIN10SDK_PATH}/winrt/windows.graphics.printing3d.h was not found")
# message("STL fixing by the Netfabb service will not be compiled")
# unset(WIN10SDK_PATH)
# endif()
# else()
# # Try to use the default Windows 10 SDK path.
# if (DEFINED ENV{WindowsSdkDir} AND DEFINED ENV{WindowsSDKVersion})
# set(WIN10SDK_INCLUDE_PATH "$ENV{WindowsSdkDir}/Include/$ENV{WindowsSDKVersion}")
# else ()
# set(WIN10SDK_INCLUDE_PATH "C:/Program Files (x86)/Windows Kits/10/Include/10.0.26100.0")
# endif ()
# if (NOT EXISTS "${WIN10SDK_INCLUDE_PATH}/winrt/windows.graphics.printing3d.h")
# message("${WIN10SDK_INCLUDE_PATH}/winrt/windows.graphics.printing3d.h was not found")
# message("STL fixing by the Netfabb service will not be compiled")
# unset(WIN10SDK_INCLUDE_PATH)
# endif()
# endif()
# if(WIN10SDK_INCLUDE_PATH)
# message("Building with Win10 Netfabb STL fixing service support")
# add_definitions(-DHAS_WIN10SDK)
# include_directories(SYSTEM "${WIN10SDK_INCLUDE_PATH}")
# else()
# message("Building without Win10 Netfabb STL fixing service support")
# endif()
# endif()
if (APPLE)
message("OS X SDK Path: ${CMAKE_OSX_SYSROOT}")
if (CMAKE_OSX_DEPLOYMENT_TARGET)
+8
View File
@@ -1,10 +1,18 @@
# ccache does not parse the -clang: arguments CMake uses for clang-cl's gcc-style
# depfile, so a cache hit writes the object and no depfile, and Ninja then records
# no headers for that object. ccache reproduces /showIncludes output on a hit.
#
# Clang also records the modification time of every input in a precompiled header
# and rejects the header once one differs. ccache caches the compile that creates
# the header, so a tree that regenerates cmake_pch.cxx gets back a header stamped
# with the old file's time, and every compile that uses it fails. The build system
# already rebuilds the header when an input changes. This covers the dependencies,
# such as wxWidgets; PrecompiledHeader.cmake does the same for OrcaSlicer's targets.
foreach (_lang C CXX)
if (CMAKE_${_lang}_COMPILER_ID STREQUAL "Clang" AND
CMAKE_${_lang}_COMPILER_FRONTEND_VARIANT STREQUAL "MSVC")
set(CMAKE_DEPFILE_FLAGS_${_lang} "/showIncludes")
set(CMAKE_${_lang}_DEPFILE_FORMAT msvc)
list(APPEND CMAKE_${_lang}_COMPILE_OPTIONS_CREATE_PCH -Xclang -fno-pch-timestamp)
endif ()
endforeach ()
+135
View File
@@ -0,0 +1,135 @@
# Mesh repair — High Level Design
## Purpose and scope
Mesh repair turns a broken triangle mesh into closed, outward oriented shells that bound a solid, so that the
mesh slices predictably and the other mesh tools (booleans, cut, painting) get valid input. It runs on demand:
the *Fix Model* command of the context menu of an object or part and of the warning icon in the object list, *Fix
All* and *Fix All Plates* in the context menu of a plate, the prompt the Cut tool shows when a cut leaves open edges,
the *Repair and import* choice of texture import, and the `--repair` option of the command line. It is built on CGAL
and is the only repair the application has, on every platform.
`repair_mesh()` in `src/libslic3r/MeshRepair.cpp` does the work on one `TriangleMesh`, and `ModelVolume::repair()`
applies it to a part: it replaces the mesh only when the repair changed it, and remaps or drops the painting of a
replaced mesh. The GUI side, `fix_model_with_cgal_gui()` in `src/slic3r/Utils/FixModelByCgal.cpp`, runs it on a
worker thread for each volume of an object, or for one volume, behind a progress dialog. `repair_mesh()` reports its
progress between stages through a callback, which cancels the repair by throwing.
## What the repaired mesh is
The repair keeps what the slicer would print from the input. The slicer fills a layer where the winding number of
the input surface is not zero (`MeshSlicingParams::SlicingMode::Regular` uses Clipper's nonzero fill rule), so:
- Shells crossing each other print as their union. The repair keeps them as separate shells, as the parts of an
object are kept, and makes each of them an outward oriented solid.
- A shell inside a solid that is oriented like it adds nothing, and the repair removes it.
- A shell inside a solid that is oriented inward is a cavity, and stays one.
- A whole mesh turned inside out prints as a solid, and the repair turns it outward.
On top of that, it closes holes and cracks, gives inconsistently oriented triangles the orientation of their
neighbours, drops degenerate, duplicate and stray flat geometry, and removes small self-intersections inside a shell,
such as slivers and folds. Where none of this applies, it reports the mesh as unmodified and the caller keeps the
original mesh, its painting and its object id.
A volume is repaired in place and is never split into several parts: splitting by connectivity would turn a cavity
into a separate solid part and fill it. Each solid of the result is a shell of its own, so *Split to parts* still
separates them. Open pieces of the input whose borders meet exactly, which are pieces of one surface rather than
solids, come out as the one shell they form.
## Pipeline
The input is treated as a triangle soup. Every stage after the first only runs on what the previous ones could
not settle, so a valid mesh passes through quickly.
### Valid parts first
Parts of the input that are connected by vertex indices and are already closed, consistently oriented 2-manifolds
skip the soup stages and go straight to the shell stages. Merging their points with coincident points of other
parts would only make non-manifold junctions out of solids that touch, for example parts of an assembly exported
together or voxels written as separate cubes.
### Soup clean-up
The rest of the soup has its coincident points merged. Triangles with repeated corners are dropped. Coincident
triangles of opposite orientation are a wall between two solids touching face to face, so they cancel in pairs;
of the remaining copies of a triangle one is kept. A connected region that would vanish entirely through
cancelling is a two-sided export instead (every face written in both orientations), and keeps one copy of each
triangle.
Open edges then get their vertices welded within a tolerance of 1e-4 of the bounding box diagonal, which closes the
cracks some exporters leave between triangles that should share corners. A vertex is never welded further than a
quarter of its shortest edge, so welding cannot collapse fine detail. A soup that stays mostly open after welding has
cracks wider than that tolerance, and is welded again with ten and then a hundred times the tolerance.
### Work units
The soup is cut into units repaired independently and in parallel: its connected parts, except that open parts whose
bounding boxes touch share a unit, so that cracks and T-junctions between separately exported patches still close.
### Building the mesh
A unit whose edges are each shared by at most two triangles, running in opposite directions, and whose vertices each
have a single fan of triangles, becomes a `Surface_mesh` directly. Any other unit is oriented first. Triangles are
flipped so that neighbours across an edge shared by two of them agree, each part keeping the orientation the
majority of its area had, which keeps inward oriented cavities inward. Edges where that is impossible or that more
than two triangles share are cut, and each fan of triangles around a vertex gets its own copy of the vertex. If that
still leaves an invalid mesh, CGAL's `orient_polygon_soup()` orients the unit instead, and the parts it flipped
against their majority are reversed back. The linear pass exists because `orient_polygon_soup()` is several times
slower on large soups that need only a few fixes.
### Closing
Compatible borders are stitched, parts that can be stitched once reversed are merged, and borders still open are
snapped onto each other within the weld tolerance, which closes T-junctions. Exactly degenerate faces are removed.
Holes are filled last. Planar border loops that face each other in one plane, one inside the other, bound a single
region, such as a missing annulus at the end of a tube or a cap with features standing on it. Such a group is
triangulated at once with a 2D constrained Delaunay triangulation that fills only the faces at odd nesting depth,
so the openings inside the region stay open. The patch is used only if it closes every loop with the orientation
of the triangles around it. Every other loop is filled on its own with `triangulate_hole()`, which uses a 2D
constrained Delaunay triangulation when the loop is planar. Otherwise it searches the best triangulation among all
triangles over the loop for loops of up to 100 edges, and among the triangles of a 3D Delaunay triangulation for
longer ones, as the full search is cubic in the length of the loop. Beyond 200 edges the full search is not even
used as a fallback, and a fan around the loop's centroid closes a loop nothing else could.
The closed unit is split into its shells. The largest stays in place and the others are copied out, as converting
the whole mesh again costs seconds on large models.
### Shells
The shells of all units, together with the valid parts set aside at the start, are handled independently and in
parallel. Shells enclosing no volume, which hole filling makes out of stray flat patches, are dropped.
Self-intersections inside a shell are removed locally with `experimental::remove_self_intersections()`, which
remeshes the region around them. It is used only for local defects: a shell whose intersections involve more than
5 % of its faces is left as it is, and a result that changes the enclosed volume by more than 0.1 % is undone. On
heavily overlapping ornamental models the remeshing otherwise cuts parts down to slivers, while on genuine defects
it changes the volume by thousandths of a percent. Overlaps left in place slice correctly. Remeshing can cut
small pieces off a shell, so a shell it changed is split again and its pieces enclosing no volume are dropped.
Shells crossing others are found through their bounding boxes and an AABB tree per shell, and are made outward
oriented solids. For every other shell the winding number just outside it is summed from the orientation of the
shells containing it, tested from a point on its largest face. The shell bounds the solid only if the winding
number is zero on exactly one of its sides; it is then oriented so that the solid is inside, or dropped otherwise.
Crossing shells are not united. Slicing unites them anyway, uniting them exactly costs tens of seconds on models
made of many overlapping pieces, and it would fuse parts that *Split to parts* should keep apart.
## Robustness
The repair avoids `experimental::autorefine_and_remove_self_intersections()` and corefinement, which can crash on
messy input, and uses only steps whose failures it can detect. A step that fails keeps its input. CGAL precondition
failures surface as `repair_mesh()` returning false with the message as the error. The output is written in float,
as every mesh in the application is.
The result does not depend on thread scheduling. `libslic3r_cgal` is built with `CGAL_LINKED_WITH_TBB`. Units and
shells are processed in parallel, but each on its own data, and their results are gathered in a fixed order;
sorts compare complete keys, and the detected self-intersections are put in order before they are used. Snapping
stays sequential, as its parallel version gives different results from run to run. Holes are filled with the full
search wherever it is affordable, because the search among Delaunay triangles can choose between equally good fills
differently from run to run, so only non-planar holes of more than 100 edges may still vary. On some inputs
`experimental::remove_self_intersections()` itself places a few vertices differently from run to run.
## Verification
`tests/libslic3r/test_mesh_repair.cpp` covers each kind of defect above on small meshes with known volumes.
-17
View File
@@ -62,23 +62,6 @@ Clipper2 behaves differently by default, the wrapper adjusts it.
clip do not leave slivers.
- Open polylines are clipped with the non-zero rule and keep their direction.
### Tiled booleans
The sweep slows down with the number of edges crossing a scan line, so a layer
cut into thousands of pieces makes every whole-layer boolean expensive.
`diff_ex_by_piece()` and `intersection_ex_by_piece()` take a subject of
non-overlapping `ExPolygons`, group them into tiles with
`ClipperUtils::tile_expolygons()`, and run each tile in parallel against only
the clip polygons near it, cut to the tile's box. Below 128 pieces there is a
single tile, and they are the plain `diff_ex()` / `intersection_ex()`.
The result covers the same area as the plain call. Without the safety offset
the rings are the same. With it, each tile unites only the clip polygons near
it, so a clip edge that the whole-layer union splits where it crosses a distant
clip polygon stays whole, and a crossing with the subject can round 1 unit
differently. The tiles' results are concatenated in tile order, so the order of
the output `ExPolygons` differs from the plain call.
### Offsets
- Before offsetting, input vertices closer than
File diff suppressed because it is too large Load Diff
+1 -1
View File
@@ -7478,7 +7478,7 @@ msgid "Update"
msgstr "更新"
msgid "Assistant(HMS)"
msgstr "助理(HMS)"
msgstr "助手(HMS)"
#, c-format, boost-format
msgid "Network plug-in v%s"
+3
View File
@@ -0,0 +1,3 @@
<svg width="28" height="27" viewBox="0 0 28 27" fill="none" xmlns="http://www.w3.org/2000/svg">
<path transform="matrix(0.9 0 0 0.9 1.4 1.35)" d="M11.9888 2.01601C12.8984 0.494662 15.1024 0.494662 16.012 2.01601L18.8677 6.79237C19.1958 7.34113 19.7339 7.73201 20.3572 7.87447L25.7821 9.11446C27.5101 9.50943 28.1913 11.6056 27.0254 12.9408L23.3652 17.1327C22.9449 17.6143 22.7394 18.2469 22.7964 18.8836L23.2936 24.4263C23.4519 26.1918 21.6687 27.4873 20.0386 26.7911L14.9209 24.6056C14.3329 24.3545 13.6679 24.3545 13.0799 24.6056L7.96209 26.7911C6.33196 27.4873 4.54887 26.1918 4.70722 24.4263L5.20434 18.8836C5.26145 18.2469 5.05595 17.6143 4.63544 17.1327L0.97533 12.9408C-0.19048 11.6056 0.490599 9.50943 2.21859 9.11446L7.64364 7.87447C8.2669 7.73201 8.80494 7.34113 9.13302 6.79237L11.9888 2.01601Z" stroke="#949494" stroke-width="2.4" stroke-linejoin="round"/>
</svg>

After

Width:  |  Height:  |  Size: 876 B

+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "Bambulab",
"url": "http://www.bambulab.com/Parameters/vendor/BBL.json",
"version": "02.08.00.14",
"version": "02.08.00.15",
"force_update": "0",
"description": "the initial version of BBL configurations",
"machine_model_list": [
File diff suppressed because one or more lines are too long
+790
View File
@@ -0,0 +1,790 @@
{
"name": "FELIX Printers",
"version": "1.0.0",
"force_update": "0",
"description": "Configuration file for printers by FELIX Printers",
"machine_model_list": [
{
"name": "FELIX Food Double",
"sub_path": "machine/FELIX Food Double.json"
},
{
"name": "FELIX Food Single",
"sub_path": "machine/FELIX Food Single.json"
},
{
"name": "FELIX Food Switch",
"sub_path": "machine/FELIX Food Switch.json"
},
{
"name": "FELIX Pro 3",
"sub_path": "machine/FELIX Pro 3.json"
},
{
"name": "FELIX Pro L 3.0",
"sub_path": "machine/FELIX Pro L 3.0.json"
},
{
"name": "FELIX Pro XL 3.0",
"sub_path": "machine/FELIX Pro XL 3.0.json"
},
{
"name": "FELIX Tec 4",
"sub_path": "machine/FELIX Tec 4.json"
}
],
"machine_list": [
{
"name": "fdm_all_machines_common",
"sub_path": "machine/fdm_all_machines_common.json"
},
{
"name": "fdm_felix_food_common",
"sub_path": "machine/fdm_felix_food_common.json"
},
{
"name": "fdm_felix_food_double_common",
"sub_path": "machine/fdm_felix_food_double_common.json"
},
{
"name": "fdm_felix_food_switch_common",
"sub_path": "machine/fdm_felix_food_switch_common.json"
},
{
"name": "fdm_felix_plastic_common",
"sub_path": "machine/fdm_felix_plastic_common.json"
},
{
"name": "fdm_felix_pro_3_common",
"sub_path": "machine/fdm_felix_pro_3_common.json"
},
{
"name": "fdm_felix_pro_l_3_common",
"sub_path": "machine/fdm_felix_pro_l_3.json"
},
{
"name": "fdm_felix_pro_xl_3_common",
"sub_path": "machine/fdm_felix_pro_xl_3_common.json"
},
{
"name": "fdm_felix_tec_common",
"sub_path": "machine/fdm_felix_tec_common.json"
},
{
"name": "FELIX Food Single 0.50mm nozzle",
"sub_path": "machine/FELIX Food Single 0.50mm nozzle.json"
},
{
"name": "FELIX Food Single 1.00mm nozzle",
"sub_path": "machine/FELIX Food Single 1.00mm nozzle.json"
},
{
"name": "FELIX Food Single 2.00mm nozzle",
"sub_path": "machine/FELIX Food Single 2.00mm nozzle.json"
},
{
"name": "FELIX Food Single 3.00mm nozzle",
"sub_path": "machine/FELIX Food Single 3.00mm nozzle.json"
},
{
"name": "FELIX Food Single 4.00mm nozzle",
"sub_path": "machine/FELIX Food Single 4.00mm nozzle.json"
},
{
"name": "FELIX Food Double 0.50mm nozzle",
"sub_path": "machine/FELIX Food Double 0.50mm nozzle.json"
},
{
"name": "FELIX Food Double 1.00mm nozzle",
"sub_path": "machine/FELIX Food Double 1.00mm nozzle.json"
},
{
"name": "FELIX Food Double 2.00mm nozzle",
"sub_path": "machine/FELIX Food Double 2.00mm nozzle.json"
},
{
"name": "FELIX Food Double 3.00mm nozzle",
"sub_path": "machine/FELIX Food Double 3.00mm nozzle.json"
},
{
"name": "FELIX Food Double 4.00mm nozzle",
"sub_path": "machine/FELIX Food Double 4.00mm nozzle.json"
},
{
"name": "FELIX Food Switch 0.50mm nozzle",
"sub_path": "machine/FELIX Food Switch 0.50mm nozzle.json"
},
{
"name": "FELIX Food Switch 1.00mm nozzle",
"sub_path": "machine/FELIX Food Switch 1.00mm nozzle.json"
},
{
"name": "FELIX Food Switch 2.00mm nozzle",
"sub_path": "machine/FELIX Food Switch 2.00mm nozzle.json"
},
{
"name": "FELIX Food Switch 3.00mm nozzle",
"sub_path": "machine/FELIX Food Switch 3.00mm nozzle.json"
},
{
"name": "FELIX Food Switch 4.00mm nozzle",
"sub_path": "machine/FELIX Food Switch 4.00mm nozzle.json"
},
{
"name": "FELIX Pro 3 0.25mm nozzle",
"sub_path": "machine/FELIX Pro 3 0.25mm nozzle.json"
},
{
"name": "FELIX Pro 3 0.35mm nozzle",
"sub_path": "machine/FELIX Pro 3 0.35mm nozzle.json"
},
{
"name": "FELIX Pro 3 0.50mm nozzle",
"sub_path": "machine/FELIX Pro 3 0.50mm nozzle.json"
},
{
"name": "FELIX Pro 3 0.70mm nozzle",
"sub_path": "machine/FELIX Pro 3 0.70mm nozzle.json"
},
{
"name": "FELIX Pro L 3.0 0.25mm nozzle",
"sub_path": "machine/FELIX Pro L 3.0 0.25mm nozzle.json"
},
{
"name": "FELIX Pro L 3.0 0.35mm nozzle",
"sub_path": "machine/FELIX Pro L 3.0 0.35mm nozzle.json"
},
{
"name": "FELIX Pro L 3.0 0.50mm nozzle",
"sub_path": "machine/FELIX Pro L 3.0 0.50mm nozzle.json"
},
{
"name": "FELIX Pro L 3.0 0.70mm nozzle",
"sub_path": "machine/FELIX Pro L 3.0 0.70mm nozzle.json"
},
{
"name": "FELIX Pro XL 3.0 0.25mm nozzle",
"sub_path": "machine/FELIX Pro XL 3.0 0.25mm nozzle.json"
},
{
"name": "FELIX Pro XL 3.0 0.35mm nozzle",
"sub_path": "machine/FELIX Pro XL 3.0 0.35mm nozzle.json"
},
{
"name": "FELIX Pro XL 3.0 0.50mm nozzle",
"sub_path": "machine/FELIX Pro XL 3.0 0.50mm nozzle.json"
},
{
"name": "FELIX Pro XL 3.0 0.70mm nozzle",
"sub_path": "machine/FELIX Pro XL 3.0 0.70mm nozzle.json"
},
{
"name": "FELIX Tec 4 0.25mm nozzle",
"sub_path": "machine/FELIX Tec 4 0.25mm nozzle.json"
},
{
"name": "FELIX Tec 4 0.35mm nozzle",
"sub_path": "machine/FELIX Tec 4 0.35mm nozzle.json"
},
{
"name": "FELIX Tec 4 0.50mm nozzle",
"sub_path": "machine/FELIX Tec 4 0.50mm nozzle.json"
},
{
"name": "FELIX Tec 4 0.70mm nozzle",
"sub_path": "machine/FELIX Tec 4 0.70mm nozzle.json"
}
],
"process_list": [
{
"name": "fdm_process_common",
"sub_path": "process/fdm_process_common.json"
},
{
"name": "fdm_process_felix_food_common",
"sub_path": "process/fdm_process_felix_food_common.json"
},
{
"name": "fdm_process_felix_plastic_common",
"sub_path": "process/fdm_process_felix_plastic_common.json"
},
{
"name": "FELIX Food Coarse @ 0.50mm",
"sub_path": "process/FELIX Food Coarse @ 0.50mm.json"
},
{
"name": "FELIX Food Coarse @ 1.00mm",
"sub_path": "process/FELIX Food Coarse @ 1.00mm.json"
},
{
"name": "FELIX Food Coarse @ 2.00mm",
"sub_path": "process/FELIX Food Coarse @ 2.00mm.json"
},
{
"name": "FELIX Food Coarse @ 3.00mm",
"sub_path": "process/FELIX Food Coarse @ 3.00mm.json"
},
{
"name": "FELIX Food Coarse @ 4.00mm",
"sub_path": "process/FELIX Food Coarse @ 4.00mm.json"
},
{
"name": "FELIX Food Fine @ 0.50mm",
"sub_path": "process/FELIX Food Fine @ 0.50mm.json"
},
{
"name": "FELIX Food Fine @ 1.00mm",
"sub_path": "process/FELIX Food Fine @ 1.00mm.json"
},
{
"name": "FELIX Food Fine @ 2.00mm",
"sub_path": "process/FELIX Food Fine @ 2.00mm.json"
},
{
"name": "FELIX Food Fine @ 3.00mm",
"sub_path": "process/FELIX Food Fine @ 3.00mm.json"
},
{
"name": "FELIX Food Fine @ 4.00mm",
"sub_path": "process/FELIX Food Fine @ 4.00mm.json"
},
{
"name": "FELIX Food Normal @ 0.50mm",
"sub_path": "process/FELIX Food Normal @ 0.50mm.json"
},
{
"name": "FELIX Food Normal @ 1.00mm",
"sub_path": "process/FELIX Food Normal @ 1.00mm.json"
},
{
"name": "FELIX Food Normal @ 2.00mm",
"sub_path": "process/FELIX Food Normal @ 2.00mm.json"
},
{
"name": "FELIX Food Normal @ 3.00mm",
"sub_path": "process/FELIX Food Normal @ 3.00mm.json"
},
{
"name": "FELIX Food Normal @ 4.00mm",
"sub_path": "process/FELIX Food Normal @ 4.00mm.json"
},
{
"name": "FELIX Plastic Coarse @ 0.35mm",
"sub_path": "process/FELIX Plastic Coarse @ 0.35mm.json"
},
{
"name": "FELIX Plastic Coarse @ 0.50mm",
"sub_path": "process/FELIX Plastic Coarse @ 0.50mm.json"
},
{
"name": "FELIX Plastic Coarse @ 0.70mm",
"sub_path": "process/FELIX Plastic Coarse @ 0.70mm.json"
},
{
"name": "FELIX Plastic Fine @ 0.25mm",
"sub_path": "process/FELIX Plastic Fine @ 0.25mm.json"
},
{
"name": "FELIX Plastic Fine @ 0.35mm",
"sub_path": "process/FELIX Plastic Fine @ 0.35mm.json"
},
{
"name": "FELIX Plastic Fine @ 0.50mm",
"sub_path": "process/FELIX Plastic Fine @ 0.50mm.json"
},
{
"name": "FELIX Plastic Fine @ 0.70mm",
"sub_path": "process/FELIX Plastic Fine @ 0.70mm.json"
},
{
"name": "FELIX Plastic Normal @ 0.25mm",
"sub_path": "process/FELIX Plastic Normal @ 0.25mm.json"
},
{
"name": "FELIX Plastic Normal @ 0.35mm",
"sub_path": "process/FELIX Plastic Normal @ 0.35mm.json"
},
{
"name": "FELIX Plastic Normal @ 0.50mm",
"sub_path": "process/FELIX Plastic Normal @ 0.50mm.json"
},
{
"name": "FELIX Plastic Normal @ 0.70mm",
"sub_path": "process/FELIX Plastic Normal @ 0.70mm.json"
},
{
"name": "FELIX Plastic Slightly Coarse @ 0.35mm",
"sub_path": "process/FELIX Plastic Slightly Coarse @ 0.35mm.json"
},
{
"name": "FELIX Plastic Slightly Coarse @ 0.50mm",
"sub_path": "process/FELIX Plastic Slightly Coarse @ 0.50mm.json"
},
{
"name": "FELIX Plastic Slightly Coarse @ 0.70mm",
"sub_path": "process/FELIX Plastic Slightly Coarse @ 0.70mm.json"
},
{
"name": "FELIX Plastic Super Coarse @ 0.70mm",
"sub_path": "process/FELIX Plastic Super Coarse @ 0.70mm.json"
},
{
"name": "FELIX Plastic Super Fine @ 0.25mm",
"sub_path": "process/FELIX Plastic Super Fine @ 0.25mm.json"
},
{
"name": "FELIX Plastic Super Fine @ 0.35mm",
"sub_path": "process/FELIX Plastic Super Fine @ 0.35mm.json"
},
{
"name": "FELIX Plastic Very Coarse @ 0.50mm",
"sub_path": "process/FELIX Plastic Very Coarse @ 0.50mm.json"
},
{
"name": "FELIX Plastic Very Coarse @ 0.70mm",
"sub_path": "process/FELIX Plastic Very Coarse @ 0.70mm.json"
},
{
"name": "FELIX Plastic Very Fine @ 0.25mm",
"sub_path": "process/FELIX Plastic Very Fine @ 0.25mm.json"
},
{
"name": "FELIX Plastic Very Fine @ 0.35mm",
"sub_path": "process/FELIX Plastic Very Fine @ 0.35mm.json"
},
{
"name": "FELIX Plastic Very Fine @ 0.50mm",
"sub_path": "process/FELIX Plastic Very Fine @ 0.50mm.json"
}
],
"filament_list": [
{
"name": "fdm_filament_common",
"sub_path": "filament/fdm_filament_common.json"
},
{
"name": "fdm_filament_food",
"sub_path": "filament/fdm_filament_food.json"
},
{
"name": "fdm_filament_abs",
"sub_path": "filament/fdm_filament_abs.json"
},
{
"name": "fdm_filament_asa",
"sub_path": "filament/fdm_filament_asa.json"
},
{
"name": "fdm_filament_flex",
"sub_path": "filament/fdm_filament_flex.json"
},
{
"name": "fdm_filament_pa",
"sub_path": "filament/fdm_filament_pa.json"
},
{
"name": "fdm_filament_pa11cf",
"sub_path": "filament/fdm_filament_pa11cf.json"
},
{
"name": "fdm_filament_pc",
"sub_path": "filament/fdm_filament_pc.json"
},
{
"name": "fdm_filament_pccf",
"sub_path": "filament/fdm_filament_pccf.json"
},
{
"name": "fdm_filament_pet",
"sub_path": "filament/fdm_filament_pet.json"
},
{
"name": "fdm_filament_pla",
"sub_path": "filament/fdm_filament_pla.json"
},
{
"name": "fdm_filament_pva",
"sub_path": "filament/fdm_filament_pva.json"
},
{
"name": "fdm_filament_pvb",
"sub_path": "filament/fdm_filament_pvb.json"
},
{
"name": "fdm_filament_tpu",
"sub_path": "filament/fdm_filament_tpu.json"
},
{
"name": "Food Medium Plastic Syringe @0.50mm",
"sub_path": "filament/FELIXFood/Food Medium Plastic Syringe @0.50mm.json"
},
{
"name": "Food Medium Plastic Syringe @1.00mm",
"sub_path": "filament/FELIXFood/Food Medium Plastic Syringe @1.00mm.json"
},
{
"name": "Food Medium Plastic Syringe @2.00mm",
"sub_path": "filament/FELIXFood/Food Medium Plastic Syringe @2.00mm.json"
},
{
"name": "Food Medium Plastic Syringe @3.00mm",
"sub_path": "filament/FELIXFood/Food Medium Plastic Syringe @3.00mm.json"
},
{
"name": "Food Medium Plastic Syringe @4.00mm",
"sub_path": "filament/FELIXFood/Food Medium Plastic Syringe @4.00mm.json"
},
{
"name": "Food Medium Stainless Steel Syringe @0.50mm",
"sub_path": "filament/FELIXFood/Food Medium Stainless Steel Syringe @0.50mm.json"
},
{
"name": "Food Medium Stainless Steel Syringe @1.00mm",
"sub_path": "filament/FELIXFood/Food Medium Stainless Steel Syringe @1.00mm.json"
},
{
"name": "Food Medium Stainless Steel Syringe @2.00mm",
"sub_path": "filament/FELIXFood/Food Medium Stainless Steel Syringe @2.00mm.json"
},
{
"name": "Food Medium Stainless Steel Syringe @3.00mm",
"sub_path": "filament/FELIXFood/Food Medium Stainless Steel Syringe @3.00mm.json"
},
{
"name": "Food Medium Stainless Steel Syringe @4.00mm",
"sub_path": "filament/FELIXFood/Food Medium Stainless Steel Syringe @4.00mm.json"
},
{
"name": "Food Thick Stainless Steel Syringe @0.50mm",
"sub_path": "filament/FELIXFood/Food Thick Stainless Steel Syringe @0.50mm.json"
},
{
"name": "Food Thick Stainless Steel Syringe @1.00mm",
"sub_path": "filament/FELIXFood/Food Thick Stainless Steel Syringe @1.00mm.json"
},
{
"name": "Food Thick Stainless Steel Syringe @2.00mm",
"sub_path": "filament/FELIXFood/Food Thick Stainless Steel Syringe @2.00mm.json"
},
{
"name": "Food Thick Stainless Steel Syringe @3.00mm",
"sub_path": "filament/FELIXFood/Food Thick Stainless Steel Syringe @3.00mm.json"
},
{
"name": "Food Thick Stainless Steel Syringe @4.00mm",
"sub_path": "filament/FELIXFood/Food Thick Stainless Steel Syringe @4.00mm.json"
},
{
"name": "Food Thin Plastic Syringe @0.50mm",
"sub_path": "filament/FELIXFood/Food Thin Plastic Syringe @0.50mm.json"
},
{
"name": "Food Thin Plastic Syringe @1.00mm",
"sub_path": "filament/FELIXFood/Food Thin Plastic Syringe @1.00mm.json"
},
{
"name": "Food Thin Plastic Syringe @2.00mm",
"sub_path": "filament/FELIXFood/Food Thin Plastic Syringe @2.00mm.json"
},
{
"name": "Food Thin Plastic Syringe @3.00mm",
"sub_path": "filament/FELIXFood/Food Thin Plastic Syringe @3.00mm.json"
},
{
"name": "Food Thin Plastic Syringe @4.00mm",
"sub_path": "filament/FELIXFood/Food Thin Plastic Syringe @4.00mm.json"
},
{
"name": "Food Thin Stainless Steel Syringe @0.50mm",
"sub_path": "filament/FELIXFood/Food Thin Stainless Steel Syringe @0.50mm.json"
},
{
"name": "Food Thin Stainless Steel Syringe @1.00mm",
"sub_path": "filament/FELIXFood/Food Thin Stainless Steel Syringe @1.00mm.json"
},
{
"name": "Food Thin Stainless Steel Syringe @2.00mm",
"sub_path": "filament/FELIXFood/Food Thin Stainless Steel Syringe @2.00mm.json"
},
{
"name": "Food Thin Stainless Steel Syringe @3.00mm",
"sub_path": "filament/FELIXFood/Food Thin Stainless Steel Syringe @3.00mm.json"
},
{
"name": "Food Thin Stainless Steel Syringe @4.00mm",
"sub_path": "filament/FELIXFood/Food Thin Stainless Steel Syringe @4.00mm.json"
},
{
"name": "Food Very Thick Stainless Steel Syringe @1.00mm",
"sub_path": "filament/FELIXFood/Food Very Thick Stainless Steel Syringe @1.00mm.json"
},
{
"name": "Food Very Thick Stainless Steel Syringe @2.00mm",
"sub_path": "filament/FELIXFood/Food Very Thick Stainless Steel Syringe @2.00mm.json"
},
{
"name": "Food Very Thick Stainless Steel Syringe @3.00mm",
"sub_path": "filament/FELIXFood/Food Very Thick Stainless Steel Syringe @3.00mm.json"
},
{
"name": "Food Very Thick Stainless Steel Syringe @4.00mm",
"sub_path": "filament/FELIXFood/Food Very Thick Stainless Steel Syringe @4.00mm.json"
},
{
"name": "Food Very Thin Plastic Syringe @0.50mm",
"sub_path": "filament/FELIXFood/Food Very Thin Plastic Syringe @0.50mm.json"
},
{
"name": "Food Very Thin Plastic Syringe @1.00mm",
"sub_path": "filament/FELIXFood/Food Very Thin Plastic Syringe @1.00mm.json"
},
{
"name": "Food Very Thin Plastic Syringe @2.00mm",
"sub_path": "filament/FELIXFood/Food Very Thin Plastic Syringe @2.00mm.json"
},
{
"name": "Food Very Thin Plastic Syringe @3.00mm",
"sub_path": "filament/FELIXFood/Food Very Thin Plastic Syringe @3.00mm.json"
},
{
"name": "Food Very Thin Plastic Syringe @4.00mm",
"sub_path": "filament/FELIXFood/Food Very Thin Plastic Syringe @4.00mm.json"
},
{
"name": "Food Very Thin Stainless Steel Syringe @1.00mm",
"sub_path": "filament/FELIXFood/Food Very Thin Stainless Steel Syringe @1.00mm.json"
},
{
"name": "Food Very Thin Stainless Steel Syringe @2.00mm",
"sub_path": "filament/FELIXFood/Food Very Thin Stainless Steel Syringe @2.00mm.json"
},
{
"name": "Food Very Thin Stainless Steel Syringe @3.00mm",
"sub_path": "filament/FELIXFood/Food Very Thin Stainless Steel Syringe @3.00mm.json"
},
{
"name": "Food Very Thin Stainless Steel Syringe @4.00mm",
"sub_path": "filament/FELIXFood/Food Very Thin Stainless Steel Syringe @4.00mm.json"
},
{
"name": "Food Very Thin Stainless Steel Syringe @0.50mm",
"sub_path": "filament/FELIXFood/Food Very Thin Stainless Steel Syringe @0.50mm.json"
},
{
"name": "FORMFUTURA TitanX ABS Brass @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA TitanX ABS Brass @ 0.35mm.json"
},
{
"name": "FORMFUTURA TitanX ABS Brass @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA TitanX ABS Brass @ 0.50mm.json"
},
{
"name": "FORMFUTURA TitanX ABS Hardened Steel @ 0.25mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA TitanX ABS Hardened Steel @ 0.25mm.json"
},
{
"name": "FORMFUTURA TitanX ABS Hardened Steel @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA TitanX ABS Hardened Steel @ 0.35mm.json"
},
{
"name": "FORMFUTURA TitanX ABS Hardened Steel @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA TitanX ABS Hardened Steel @ 0.50mm.json"
},
{
"name": "FORMFUTURA TitanX ABS Hardened Steel @ 0.70mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA TitanX ABS Hardened Steel @ 0.70mm.json"
},
{
"name": "Ultrafuse ABS Fusion+ Brass @ 0.35mm",
"sub_path": "filament/FELIXPlastic/Ultrafuse ABS Fusion+ Brass @ 0.35mm.json"
},
{
"name": "Ultrafuse ABS Fusion+ Brass @ 0.50mm",
"sub_path": "filament/FELIXPlastic/Ultrafuse ABS Fusion+ Brass @ 0.50mm.json"
},
{
"name": "Ultrafuse ABS Fusion+ Hardened Steel @ 0.25mm",
"sub_path": "filament/FELIXPlastic/Ultrafuse ABS Fusion+ Hardened Steel @ 0.25mm.json"
},
{
"name": "Ultrafuse ABS Fusion+ Hardened Steel @ 0.35mm",
"sub_path": "filament/FELIXPlastic/Ultrafuse ABS Fusion+ Hardened Steel @ 0.35mm.json"
},
{
"name": "Ultrafuse ABS Fusion+ Hardened Steel @ 0.50mm",
"sub_path": "filament/FELIXPlastic/Ultrafuse ABS Fusion+ Hardened Steel @ 0.50mm.json"
},
{
"name": "Ultrafuse ABS Fusion+ Hardened Steel @ 0.70mm",
"sub_path": "filament/FELIXPlastic/Ultrafuse ABS Fusion+ Hardened Steel @ 0.70mm.json"
},
{
"name": "FORMFUTURA AppoloX ASA Brass @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA AppoloX ASA Brass @ 0.35mm.json"
},
{
"name": "FORMFUTURA AppoloX ASA Brass @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA AppoloX ASA Brass @ 0.50mm.json"
},
{
"name": "FORMFUTURA AppoloX ASA Hardened Steel @ 0.25mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA AppoloX ASA Hardened Steel @ 0.25mm.json"
},
{
"name": "FORMFUTURA AppoloX ASA Hardened Steel @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA AppoloX ASA Hardened Steel @ 0.35mm.json"
},
{
"name": "FORMFUTURA AppoloX ASA Hardened Steel @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA AppoloX ASA Hardened Steel @ 0.50mm.json"
},
{
"name": "FORMFUTURA AppoloX ASA Hardened Steel @ 0.70mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA AppoloX ASA Hardened Steel @ 0.70mm.json"
},
{
"name": "FELIX FLEX Brass @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FELIX FLEX Brass @ 0.35mm.json"
},
{
"name": "FELIX FLEX Brass @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FELIX FLEX Brass @ 0.50mm.json"
},
{
"name": "FELIX FLEX Hardened Steel @ 0.25mm",
"sub_path": "filament/FELIXPlastic/FELIX FLEX Hardened Steel @ 0.25mm.json"
},
{
"name": "FELIX FLEX Hardened Steel @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FELIX FLEX Hardened Steel @ 0.35mm.json"
},
{
"name": "FELIX FLEX Hardened Steel @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FELIX FLEX Hardened Steel @ 0.50mm.json"
},
{
"name": "FELIX FLEX Hardened Steel @ 0.70mm",
"sub_path": "filament/FELIXPlastic/FELIX FLEX Hardened Steel @ 0.70mm.json"
},
{
"name": "FELIX PETG Brass @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FELIX PETG Brass @ 0.35mm.json"
},
{
"name": "FELIX PETG Brass @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FELIX PETG Brass @ 0.50mm.json"
},
{
"name": "FELIX PETG Hardened Steel @ 0.25mm",
"sub_path": "filament/FELIXPlastic/FELIX PETG Hardened Steel @ 0.25mm.json"
},
{
"name": "FELIX PETG Hardened Steel @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FELIX PETG Hardened Steel @ 0.35mm.json"
},
{
"name": "FELIX PETG Hardened Steel @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FELIX PETG Hardened Steel @ 0.50mm.json"
},
{
"name": "FELIX PETG Hardened Steel @ 0.70mm",
"sub_path": "filament/FELIXPlastic/FELIX PETG Hardened Steel @ 0.70mm.json"
},
{
"name": "FELIX Premium PLA Brass @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FELIX Premium PLA Brass @ 0.35mm.json"
},
{
"name": "FELIX Premium PLA Brass @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FELIX Premium PLA Brass @ 0.50mm.json"
},
{
"name": "FELIX Premium PLA Hardened Steel @ 0.25mm",
"sub_path": "filament/FELIXPlastic/FELIX Premium PLA Hardened Steel @ 0.25mm.json"
},
{
"name": "FELIX Premium PLA Hardened Steel @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FELIX Premium PLA Hardened Steel @ 0.35mm.json"
},
{
"name": "FELIX Premium PLA Hardened Steel @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FELIX Premium PLA Hardened Steel @ 0.50mm.json"
},
{
"name": "FELIX Premium PLA Hardened Steel @ 0.70mm",
"sub_path": "filament/FELIXPlastic/FELIX Premium PLA Hardened Steel @ 0.70mm.json"
},
{
"name": "FELIX Wood Brass @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FELIX Wood Brass @ 0.35mm.json"
},
{
"name": "FELIX Wood Brass @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FELIX Wood Brass @ 0.50mm.json"
},
{
"name": "FELIX Wood Hardened Steel @ 0.25mm",
"sub_path": "filament/FELIXPlastic/FELIX Wood Hardened Steel @ 0.25mm.json"
},
{
"name": "FELIX Wood Hardened Steel @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FELIX Wood Hardened Steel @ 0.35mm.json"
},
{
"name": "FELIX Wood Hardened Steel @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FELIX Wood Hardened Steel @ 0.50mm.json"
},
{
"name": "FELIX Wood Hardened Steel @ 0.70mm",
"sub_path": "filament/FELIXPlastic/FELIX Wood Hardened Steel @ 0.70mm.json"
},
{
"name": "FORMFUTURA ePLA Brass @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA ePLA Brass @ 0.35mm.json"
},
{
"name": "FORMFUTURA ePLA Brass @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA ePLA Brass @ 0.50mm.json"
},
{
"name": "FORMFUTURA ePLA Hardened Steel @ 0.25mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA ePLA Hardened Steel @ 0.25mm.json"
},
{
"name": "FORMFUTURA ePLA Hardened Steel @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA ePLA Hardened Steel @ 0.35mm.json"
},
{
"name": "FORMFUTURA ePLA Hardened Steel @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA ePLA Hardened Steel @ 0.50mm.json"
},
{
"name": "FORMFUTURA ePLA Hardened Steel @ 0.70mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA ePLA Hardened Steel @ 0.70mm.json"
},
{
"name": "FORMFUTURA Aquasolve PVA Brass @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA Aquasolve PVA Brass @ 0.35mm.json"
},
{
"name": "FORMFUTURA Aquasolve PVA Brass @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA Aquasolve PVA Brass @ 0.50mm.json"
},
{
"name": "FORMFUTURA Aquasolve PVA Hardened Steel @ 0.25mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA Aquasolve PVA Hardened Steel @ 0.25mm.json"
},
{
"name": "FORMFUTURA Aquasolve PVA Hardened Steel @ 0.35mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA Aquasolve PVA Hardened Steel @ 0.35mm.json"
},
{
"name": "FORMFUTURA Aquasolve PVA Hardened Steel @ 0.50mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA Aquasolve PVA Hardened Steel @ 0.50mm.json"
},
{
"name": "FORMFUTURA Aquasolve PVA Hardened Steel @ 0.70mm",
"sub_path": "filament/FELIXPlastic/FORMFUTURA Aquasolve PVA Hardened Steel @ 0.70mm.json"
}
]
}
@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg id="a" xmlns="http://www.w3.org/2000/svg" width="180.62mm" height="180.62mm" viewBox="0 0 512 512" xmlns:c2pa="http://c2pa.org/manifest">
<rect x="0" y="0" width="512" height="512" fill="none"/>
<g fill="#ffffff" transform="translate(5,460) scale(0.2)">
<g>
<path d="M139.4.8l-.2,62c-34.3,0-63.4,21.8-73.2,51.9C26.4,141,.2,187.8.2,241.3H0l.2-101.3C.2,63.1,62.4.8,139.4.8Z"/>
<path d="M139.1,92.5l-.8,62.5c-42.6,0-77.1,38.6-77.1,86.3l1-103.9c0-7.9,1.3-15.5,3.6-22.7,21.2-14.1,46.3-22.3,73.2-22.3Z"/>
<path d="M65.9,114.7c-2.3,7.2-3.6,14.8-3.6,22.7l-1,103.9H.2c0-53.5,26.3-100.3,65.7-126.6Z"/>
</g>
<polygon points="202.8 .4 202.8 92.9 226.2 92.9 226.2 56 259.8 56 259.8 36.1 226.2 36.1 226.2 19.4 265.7 19.4 265.7 0 202.8 .4"/>
<polygon points="282.3 -.3 282.3 93 346.1 93 346.1 72.4 306.8 72.4 306.8 55.6 341.7 55.6 341.7 36.4 306.5 36.4 306.5 19.6 346.2 19.6 346.2 -.3 282.3 -.3"/>
<polygon points="365.9 92.8 429.5 92.8 429.5 70.9 389.6 70.9 389.6 .2 365 .2 365.9 92.8"/>
<polygon points="448 0 471.9 0 471.9 92.5 447.5 92.5 448 0"/>
<path d="M485.1,92.5s34.7-44.3,33.4-46.5S485.7,0,485.7,0h29l18.4,24.8L550.1,0h26.6l-29.9,45.4,33.1,46.8h-28.8l-19.3-27.4-18.9,28.1-27.9-.4Z"/>
<g>
<path d="M210.9,154.1c-1.9,0-3.7-.2-5.3-.7-1.6-.4-3-1-4.2-1.6v-3.9c1.1.6,2.4,1.1,3.9,1.6,1.5.5,3.2.7,5.1.7,3.1,0,5.5-.6,7.2-1.7,1.7-1.2,2.5-2.8,2.5-5s-.8-3.9-2.5-5c-1.7-1.2-4.2-1.7-7.4-1.7h-3.9v-3.7h4c2.6,0,4.5-.5,5.9-1.5,1.4-1,2-2.4,2-4.2s-.3-2.3-1-3.1c-.6-.8-1.6-1.5-2.8-1.9-1.3-.4-2.8-.7-4.6-.7s-3,.2-4.3.6c-1.3.4-2.4.8-3.3,1.3v-3.9c1.1-.5,2.3-.9,3.6-1.3,1.3-.4,2.8-.5,4.5-.5s4,.3,5.5.8c1.5.5,2.7,1.3,3.6,2.2.9.9,1.6,1.9,2,3.1.4,1.1.6,2.3.6,3.4s-.2,2.4-.7,3.3c-.5.9-1,1.7-1.6,2.2-.6.6-1.4,1.1-2.3,1.6,1.3.7,2.3,1.4,3.2,2.1s1.6,1.7,2.2,2.8c.6,1.1,1,2.5,1,4.2s-.2,2.5-.7,3.8c-.5,1.2-1.2,2.4-2.2,3.4s-2.4,1.8-4,2.4c-1.7.6-3.7.9-6.1.9Z"/>
<path d="M232.1,153.7v-35.4h11.1c5.5,0,9.7,1.5,12.4,4.4,2.8,3,4.2,7.4,4.2,13.2s-1.4,10.3-4.2,13.2c-2.8,3-6.9,4.5-12.4,4.5h-11.1ZM235.9,150h7c4.5,0,7.8-1.1,9.9-3.4,2-2.3,3.1-5.8,3.1-10.7s-1-8.4-3.1-10.7c-2-2.3-5.3-3.4-9.9-3.4h-7v28.2Z"/>
<path d="M291.9,154.4c-.8,0-1.7-.1-2.6-.3-1-.2-1.9-.5-2.8-.8-.9-.3-1.7-.7-2.4-1l1.3-1.3v14.2h-3.8v-33.2c0-1.1.3-2,1-2.7.7-.7,1.6-1.2,2.7-1.6,1.1-.4,2.3-.6,3.5-.8,1.2-.2,2.4-.2,3.5-.2,2.1,0,4.1.4,6,1.3,1.9.9,3.4,2.4,4.6,4.5s1.7,5,1.7,8.6-.5,5.1-1.5,7.1c-1,2-2.4,3.5-4.3,4.6-1.9,1.1-4.2,1.6-6.9,1.6ZM291.9,150.9c1.9,0,3.5-.4,4.8-1.2,1.3-.8,2.2-2,2.8-3.5.6-1.5,1-3.2,1-5.1s-.2-3.7-.6-5.4c-.4-1.7-1.2-3-2.4-4-1.2-1-3-1.5-5.2-1.5s-3.4.2-4.8.6c-1.4.4-2,1-2,1.8v16.4c1.1.6,2.2,1.1,3.3,1.4s2.2.5,3.3.5Z"/>
<path d="M311.1,153.7v-24.3c.4-.2,1.2-.5,2.5-.9,1.2-.4,2.7-.8,4.4-1.2,1.7-.4,3.5-.5,5.3-.5s.6,0,.8.1c.3,0,.6.1.8.2v3.4c-.9-.1-1.8-.2-2.7-.2s-1.7,0-2.5.1c-.8,0-1.6.2-2.4.3-.8.1-1.6.3-2.4.4v22.5h-3.8Z"/>
<path d="M330.5,122.5v-4.2h4.2v4.2h-4.2ZM330.8,153.7v-26.4h3.8v26.4h-3.8Z"/>
<path d="M342.7,129.3c.8-.4,1.7-.8,2.6-1.1.9-.3,1.8-.6,2.8-.8.9-.2,1.9-.4,2.9-.5,1-.1,2-.2,2.9-.2,2.6,0,4.6.4,6.1,1.1,1.5.8,2.6,1.9,3.3,3.3.7,1.4,1,3.2,1,5.2v17.2h-3.8v-17.2c0-.6,0-1.3-.2-2-.2-.7-.5-1.4-.9-2-.5-.7-1.2-1.2-2.1-1.6s-2.2-.6-3.8-.6-2.2,0-3.4.3-2.4.4-3.6.8v22.4h-3.8v-24.3Z"/>
<path d="M380.7,154.1c-1.9,0-3.4-.6-4.7-1.7-1.3-1.1-1.9-2.9-1.9-5.1v-16.5h-4.6v-3.5h4.6v-7.5h3.8v7.5h6.8v3.5h-6.8v15.3c0,1.5.2,2.6.7,3.3s1.4,1.1,2.8,1.1,1.3,0,1.9-.2,1.1-.3,1.5-.5v3.6c-.5.2-1.1.3-1.9.5s-1.5.2-2.1.2Z"/>
<path d="M402,154.4c-2.5,0-4.7-.5-6.5-1.6-1.8-1-3.3-2.6-4.2-4.7-1-2.1-1.5-4.7-1.5-7.8,0-4.6,1-8,3.1-10.3,2.1-2.3,4.9-3.4,8.5-3.4s5.1.6,6.8,1.9c1.7,1.3,2.9,3,3.7,5.1.7,2.2,1.1,4.6,1.1,7.3h-21.3l.3-3.5h18.5l-1.5.5c-.1-2.6-.8-4.6-2-5.9-1.2-1.3-3.1-2-5.6-2s-3.2.3-4.3,1c-1.1.6-2,1.7-2.6,3.3s-.8,3.8-.8,6.6.8,5.7,2.3,7.3c1.5,1.7,3.6,2.5,6.3,2.5s2.5,0,3.6-.3,2.1-.5,3-.8c.9-.4,1.7-.7,2.4-1.2v3.9c-1.3.6-2.7,1.1-4.2,1.4-1.5.3-3.2.5-5.1.5Z"/>
<path d="M419.5,153.7v-24.3c.4-.2,1.2-.5,2.5-.9,1.2-.4,2.7-.8,4.4-1.2,1.7-.4,3.5-.5,5.3-.5s.6,0,.8.1c.3,0,.6.1.8.2v3.4c-.9-.1-1.8-.2-2.7-.2s-1.7,0-2.5.1-1.6.2-2.4.3c-.8.1-1.6.3-2.4.4v22.5h-3.8Z"/>
<path d="M446.4,154.4c-1.9,0-3.5-.2-4.8-.6s-2.6-.9-4-1.6v-4c1.1.6,2.1,1.1,2.9,1.5s1.7.7,2.6.9c.9.2,1.9.3,3,.3,1.8,0,3.2-.4,4.3-1.2,1.1-.8,1.7-1.8,1.7-3s-.3-1.7-.8-2.3-1.2-1-2.1-1.3c-.8-.4-1.7-.7-2.7-1.1-1-.3-2.1-.6-3.1-.9-1-.3-2-.8-2.9-1.3-.9-.5-1.6-1.3-2.1-2.1-.5-.9-.8-2-.8-3.4s.3-2.5.8-3.4c.5-1,1.3-1.7,2.1-2.4.9-.6,1.9-1.1,3-1.4,1.1-.3,2.2-.4,3.3-.4,1.6,0,2.9.2,4.1.6,1.1.4,2.3.9,3.5,1.4v3.8c-1.3-.7-2.5-1.3-3.6-1.7-1.1-.4-2.3-.7-3.8-.7s-2.7.3-3.9.9c-1.1.6-1.7,1.5-1.7,2.7s.3,1.8.9,2.4,1.4,1,2.3,1.4c1,.3,2,.7,3.1,1,.9.3,1.8.6,2.8.9,1,.3,1.8.8,2.7,1.3.8.5,1.5,1.3,2,2.1.5.9.8,2,.8,3.4s-.5,3.4-1.4,4.6-2.2,2.1-3.6,2.7c-1.5.6-3,.8-4.5.8Z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 808 KiB

@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg id="a" xmlns="http://www.w3.org/2000/svg" width="180.62mm" height="180.62mm" viewBox="0 0 250 195" xmlns:c2pa="http://c2pa.org/manifest">
<rect x="0" y="0" width="250" height="195" fill="none"/>
<g fill="#ffffff" transform="translate(2,169) scale(0.1)">
<g>
<path d="M139.4.8l-.2,62c-34.3,0-63.4,21.8-73.2,51.9C26.4,141,.2,187.8.2,241.3H0l.2-101.3C.2,63.1,62.4.8,139.4.8Z"/>
<path d="M139.1,92.5l-.8,62.5c-42.6,0-77.1,38.6-77.1,86.3l1-103.9c0-7.9,1.3-15.5,3.6-22.7,21.2-14.1,46.3-22.3,73.2-22.3Z"/>
<path d="M65.9,114.7c-2.3,7.2-3.6,14.8-3.6,22.7l-1,103.9H.2c0-53.5,26.3-100.3,65.7-126.6Z"/>
</g>
<polygon points="202.8 .4 202.8 92.9 226.2 92.9 226.2 56 259.8 56 259.8 36.1 226.2 36.1 226.2 19.4 265.7 19.4 265.7 0 202.8 .4"/>
<polygon points="282.3 -.3 282.3 93 346.1 93 346.1 72.4 306.8 72.4 306.8 55.6 341.7 55.6 341.7 36.4 306.5 36.4 306.5 19.6 346.2 19.6 346.2 -.3 282.3 -.3"/>
<polygon points="365.9 92.8 429.5 92.8 429.5 70.9 389.6 70.9 389.6 .2 365 .2 365.9 92.8"/>
<polygon points="448 0 471.9 0 471.9 92.5 447.5 92.5 448 0"/>
<path d="M485.1,92.5s34.7-44.3,33.4-46.5S485.7,0,485.7,0h29l18.4,24.8L550.1,0h26.6l-29.9,45.4,33.1,46.8h-28.8l-19.3-27.4-18.9,28.1-27.9-.4Z"/>
<g>
<path d="M210.9,154.1c-1.9,0-3.7-.2-5.3-.7-1.6-.4-3-1-4.2-1.6v-3.9c1.1.6,2.4,1.1,3.9,1.6,1.5.5,3.2.7,5.1.7,3.1,0,5.5-.6,7.2-1.7,1.7-1.2,2.5-2.8,2.5-5s-.8-3.9-2.5-5c-1.7-1.2-4.2-1.7-7.4-1.7h-3.9v-3.7h4c2.6,0,4.5-.5,5.9-1.5,1.4-1,2-2.4,2-4.2s-.3-2.3-1-3.1c-.6-.8-1.6-1.5-2.8-1.9-1.3-.4-2.8-.7-4.6-.7s-3,.2-4.3.6c-1.3.4-2.4.8-3.3,1.3v-3.9c1.1-.5,2.3-.9,3.6-1.3,1.3-.4,2.8-.5,4.5-.5s4,.3,5.5.8c1.5.5,2.7,1.3,3.6,2.2.9.9,1.6,1.9,2,3.1.4,1.1.6,2.3.6,3.4s-.2,2.4-.7,3.3c-.5.9-1,1.7-1.6,2.2-.6.6-1.4,1.1-2.3,1.6,1.3.7,2.3,1.4,3.2,2.1s1.6,1.7,2.2,2.8c.6,1.1,1,2.5,1,4.2s-.2,2.5-.7,3.8c-.5,1.2-1.2,2.4-2.2,3.4s-2.4,1.8-4,2.4c-1.7.6-3.7.9-6.1.9Z"/>
<path d="M232.1,153.7v-35.4h11.1c5.5,0,9.7,1.5,12.4,4.4,2.8,3,4.2,7.4,4.2,13.2s-1.4,10.3-4.2,13.2c-2.8,3-6.9,4.5-12.4,4.5h-11.1ZM235.9,150h7c4.5,0,7.8-1.1,9.9-3.4,2-2.3,3.1-5.8,3.1-10.7s-1-8.4-3.1-10.7c-2-2.3-5.3-3.4-9.9-3.4h-7v28.2Z"/>
<path d="M291.9,154.4c-.8,0-1.7-.1-2.6-.3-1-.2-1.9-.5-2.8-.8-.9-.3-1.7-.7-2.4-1l1.3-1.3v14.2h-3.8v-33.2c0-1.1.3-2,1-2.7.7-.7,1.6-1.2,2.7-1.6,1.1-.4,2.3-.6,3.5-.8,1.2-.2,2.4-.2,3.5-.2,2.1,0,4.1.4,6,1.3,1.9.9,3.4,2.4,4.6,4.5s1.7,5,1.7,8.6-.5,5.1-1.5,7.1c-1,2-2.4,3.5-4.3,4.6-1.9,1.1-4.2,1.6-6.9,1.6ZM291.9,150.9c1.9,0,3.5-.4,4.8-1.2,1.3-.8,2.2-2,2.8-3.5.6-1.5,1-3.2,1-5.1s-.2-3.7-.6-5.4c-.4-1.7-1.2-3-2.4-4-1.2-1-3-1.5-5.2-1.5s-3.4.2-4.8.6c-1.4.4-2,1-2,1.8v16.4c1.1.6,2.2,1.1,3.3,1.4s2.2.5,3.3.5Z"/>
<path d="M311.1,153.7v-24.3c.4-.2,1.2-.5,2.5-.9,1.2-.4,2.7-.8,4.4-1.2,1.7-.4,3.5-.5,5.3-.5s.6,0,.8.1c.3,0,.6.1.8.2v3.4c-.9-.1-1.8-.2-2.7-.2s-1.7,0-2.5.1c-.8,0-1.6.2-2.4.3-.8.1-1.6.3-2.4.4v22.5h-3.8Z"/>
<path d="M330.5,122.5v-4.2h4.2v4.2h-4.2ZM330.8,153.7v-26.4h3.8v26.4h-3.8Z"/>
<path d="M342.7,129.3c.8-.4,1.7-.8,2.6-1.1.9-.3,1.8-.6,2.8-.8.9-.2,1.9-.4,2.9-.5,1-.1,2-.2,2.9-.2,2.6,0,4.6.4,6.1,1.1,1.5.8,2.6,1.9,3.3,3.3.7,1.4,1,3.2,1,5.2v17.2h-3.8v-17.2c0-.6,0-1.3-.2-2-.2-.7-.5-1.4-.9-2-.5-.7-1.2-1.2-2.1-1.6s-2.2-.6-3.8-.6-2.2,0-3.4.3-2.4.4-3.6.8v22.4h-3.8v-24.3Z"/>
<path d="M380.7,154.1c-1.9,0-3.4-.6-4.7-1.7-1.3-1.1-1.9-2.9-1.9-5.1v-16.5h-4.6v-3.5h4.6v-7.5h3.8v7.5h6.8v3.5h-6.8v15.3c0,1.5.2,2.6.7,3.3s1.4,1.1,2.8,1.1,1.3,0,1.9-.2,1.1-.3,1.5-.5v3.6c-.5.2-1.1.3-1.9.5s-1.5.2-2.1.2Z"/>
<path d="M402,154.4c-2.5,0-4.7-.5-6.5-1.6-1.8-1-3.3-2.6-4.2-4.7-1-2.1-1.5-4.7-1.5-7.8,0-4.6,1-8,3.1-10.3,2.1-2.3,4.9-3.4,8.5-3.4s5.1.6,6.8,1.9c1.7,1.3,2.9,3,3.7,5.1.7,2.2,1.1,4.6,1.1,7.3h-21.3l.3-3.5h18.5l-1.5.5c-.1-2.6-.8-4.6-2-5.9-1.2-1.3-3.1-2-5.6-2s-3.2.3-4.3,1c-1.1.6-2,1.7-2.6,3.3s-.8,3.8-.8,6.6.8,5.7,2.3,7.3c1.5,1.7,3.6,2.5,6.3,2.5s2.5,0,3.6-.3,2.1-.5,3-.8c.9-.4,1.7-.7,2.4-1.2v3.9c-1.3.6-2.7,1.1-4.2,1.4-1.5.3-3.2.5-5.1.5Z"/>
<path d="M419.5,153.7v-24.3c.4-.2,1.2-.5,2.5-.9,1.2-.4,2.7-.8,4.4-1.2,1.7-.4,3.5-.5,5.3-.5s.6,0,.8.1c.3,0,.6.1.8.2v3.4c-.9-.1-1.8-.2-2.7-.2s-1.7,0-2.5.1-1.6.2-2.4.3c-.8.1-1.6.3-2.4.4v22.5h-3.8Z"/>
<path d="M446.4,154.4c-1.9,0-3.5-.2-4.8-.6s-2.6-.9-4-1.6v-4c1.1.6,2.1,1.1,2.9,1.5s1.7.7,2.6.9c.9.2,1.9.3,3,.3,1.8,0,3.2-.4,4.3-1.2,1.1-.8,1.7-1.8,1.7-3s-.3-1.7-.8-2.3-1.2-1-2.1-1.3c-.8-.4-1.7-.7-2.7-1.1-1-.3-2.1-.6-3.1-.9-1-.3-2-.8-2.9-1.3-.9-.5-1.6-1.3-2.1-2.1-.5-.9-.8-2-.8-3.4s.3-2.5.8-3.4c.5-1,1.3-1.7,2.1-2.4.9-.6,1.9-1.1,3-1.4,1.1-.3,2.2-.4,3.3-.4,1.6,0,2.9.2,4.1.6,1.1.4,2.3.9,3.5,1.4v3.8c-1.3-.7-2.5-1.3-3.6-1.7-1.1-.4-2.3-.7-3.8-.7s-2.7.3-3.9.9c-1.1.6-1.7,1.5-1.7,2.7s.3,1.8.9,2.4,1.4,1,2.3,1.4c1,.3,2,.7,3.1,1,.9.3,1.8.6,2.8.9,1,.3,1.8.8,2.7,1.3.8.5,1.5,1.3,2,2.1.5.9.8,2,.8,3.4s-.5,3.4-1.4,4.6-2.2,2.1-3.6,2.7c-1.5.6-3,.8-4.5.8Z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 716 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 793 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 183 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 69 KiB

@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg id="a" xmlns="http://www.w3.org/2000/svg" width="180.62mm" height="180.62mm" viewBox="0 0 300 400" xmlns:c2pa="http://c2pa.org/manifest">
<rect x="0" y="0" width="300" height="400" fill="none"/>
<g fill="#ffffff" transform="translate(3,365) scale(0.13)">
<g>
<path d="M139.4.8l-.2,62c-34.3,0-63.4,21.8-73.2,51.9C26.4,141,.2,187.8.2,241.3H0l.2-101.3C.2,63.1,62.4.8,139.4.8Z"/>
<path d="M139.1,92.5l-.8,62.5c-42.6,0-77.1,38.6-77.1,86.3l1-103.9c0-7.9,1.3-15.5,3.6-22.7,21.2-14.1,46.3-22.3,73.2-22.3Z"/>
<path d="M65.9,114.7c-2.3,7.2-3.6,14.8-3.6,22.7l-1,103.9H.2c0-53.5,26.3-100.3,65.7-126.6Z"/>
</g>
<polygon points="202.8 .4 202.8 92.9 226.2 92.9 226.2 56 259.8 56 259.8 36.1 226.2 36.1 226.2 19.4 265.7 19.4 265.7 0 202.8 .4"/>
<polygon points="282.3 -.3 282.3 93 346.1 93 346.1 72.4 306.8 72.4 306.8 55.6 341.7 55.6 341.7 36.4 306.5 36.4 306.5 19.6 346.2 19.6 346.2 -.3 282.3 -.3"/>
<polygon points="365.9 92.8 429.5 92.8 429.5 70.9 389.6 70.9 389.6 .2 365 .2 365.9 92.8"/>
<polygon points="448 0 471.9 0 471.9 92.5 447.5 92.5 448 0"/>
<path d="M485.1,92.5s34.7-44.3,33.4-46.5S485.7,0,485.7,0h29l18.4,24.8L550.1,0h26.6l-29.9,45.4,33.1,46.8h-28.8l-19.3-27.4-18.9,28.1-27.9-.4Z"/>
<g>
<path d="M210.9,154.1c-1.9,0-3.7-.2-5.3-.7-1.6-.4-3-1-4.2-1.6v-3.9c1.1.6,2.4,1.1,3.9,1.6,1.5.5,3.2.7,5.1.7,3.1,0,5.5-.6,7.2-1.7,1.7-1.2,2.5-2.8,2.5-5s-.8-3.9-2.5-5c-1.7-1.2-4.2-1.7-7.4-1.7h-3.9v-3.7h4c2.6,0,4.5-.5,5.9-1.5,1.4-1,2-2.4,2-4.2s-.3-2.3-1-3.1c-.6-.8-1.6-1.5-2.8-1.9-1.3-.4-2.8-.7-4.6-.7s-3,.2-4.3.6c-1.3.4-2.4.8-3.3,1.3v-3.9c1.1-.5,2.3-.9,3.6-1.3,1.3-.4,2.8-.5,4.5-.5s4,.3,5.5.8c1.5.5,2.7,1.3,3.6,2.2.9.9,1.6,1.9,2,3.1.4,1.1.6,2.3.6,3.4s-.2,2.4-.7,3.3c-.5.9-1,1.7-1.6,2.2-.6.6-1.4,1.1-2.3,1.6,1.3.7,2.3,1.4,3.2,2.1s1.6,1.7,2.2,2.8c.6,1.1,1,2.5,1,4.2s-.2,2.5-.7,3.8c-.5,1.2-1.2,2.4-2.2,3.4s-2.4,1.8-4,2.4c-1.7.6-3.7.9-6.1.9Z"/>
<path d="M232.1,153.7v-35.4h11.1c5.5,0,9.7,1.5,12.4,4.4,2.8,3,4.2,7.4,4.2,13.2s-1.4,10.3-4.2,13.2c-2.8,3-6.9,4.5-12.4,4.5h-11.1ZM235.9,150h7c4.5,0,7.8-1.1,9.9-3.4,2-2.3,3.1-5.8,3.1-10.7s-1-8.4-3.1-10.7c-2-2.3-5.3-3.4-9.9-3.4h-7v28.2Z"/>
<path d="M291.9,154.4c-.8,0-1.7-.1-2.6-.3-1-.2-1.9-.5-2.8-.8-.9-.3-1.7-.7-2.4-1l1.3-1.3v14.2h-3.8v-33.2c0-1.1.3-2,1-2.7.7-.7,1.6-1.2,2.7-1.6,1.1-.4,2.3-.6,3.5-.8,1.2-.2,2.4-.2,3.5-.2,2.1,0,4.1.4,6,1.3,1.9.9,3.4,2.4,4.6,4.5s1.7,5,1.7,8.6-.5,5.1-1.5,7.1c-1,2-2.4,3.5-4.3,4.6-1.9,1.1-4.2,1.6-6.9,1.6ZM291.9,150.9c1.9,0,3.5-.4,4.8-1.2,1.3-.8,2.2-2,2.8-3.5.6-1.5,1-3.2,1-5.1s-.2-3.7-.6-5.4c-.4-1.7-1.2-3-2.4-4-1.2-1-3-1.5-5.2-1.5s-3.4.2-4.8.6c-1.4.4-2,1-2,1.8v16.4c1.1.6,2.2,1.1,3.3,1.4s2.2.5,3.3.5Z"/>
<path d="M311.1,153.7v-24.3c.4-.2,1.2-.5,2.5-.9,1.2-.4,2.7-.8,4.4-1.2,1.7-.4,3.5-.5,5.3-.5s.6,0,.8.1c.3,0,.6.1.8.2v3.4c-.9-.1-1.8-.2-2.7-.2s-1.7,0-2.5.1c-.8,0-1.6.2-2.4.3-.8.1-1.6.3-2.4.4v22.5h-3.8Z"/>
<path d="M330.5,122.5v-4.2h4.2v4.2h-4.2ZM330.8,153.7v-26.4h3.8v26.4h-3.8Z"/>
<path d="M342.7,129.3c.8-.4,1.7-.8,2.6-1.1.9-.3,1.8-.6,2.8-.8.9-.2,1.9-.4,2.9-.5,1-.1,2-.2,2.9-.2,2.6,0,4.6.4,6.1,1.1,1.5.8,2.6,1.9,3.3,3.3.7,1.4,1,3.2,1,5.2v17.2h-3.8v-17.2c0-.6,0-1.3-.2-2-.2-.7-.5-1.4-.9-2-.5-.7-1.2-1.2-2.1-1.6s-2.2-.6-3.8-.6-2.2,0-3.4.3-2.4.4-3.6.8v22.4h-3.8v-24.3Z"/>
<path d="M380.7,154.1c-1.9,0-3.4-.6-4.7-1.7-1.3-1.1-1.9-2.9-1.9-5.1v-16.5h-4.6v-3.5h4.6v-7.5h3.8v7.5h6.8v3.5h-6.8v15.3c0,1.5.2,2.6.7,3.3s1.4,1.1,2.8,1.1,1.3,0,1.9-.2,1.1-.3,1.5-.5v3.6c-.5.2-1.1.3-1.9.5s-1.5.2-2.1.2Z"/>
<path d="M402,154.4c-2.5,0-4.7-.5-6.5-1.6-1.8-1-3.3-2.6-4.2-4.7-1-2.1-1.5-4.7-1.5-7.8,0-4.6,1-8,3.1-10.3,2.1-2.3,4.9-3.4,8.5-3.4s5.1.6,6.8,1.9c1.7,1.3,2.9,3,3.7,5.1.7,2.2,1.1,4.6,1.1,7.3h-21.3l.3-3.5h18.5l-1.5.5c-.1-2.6-.8-4.6-2-5.9-1.2-1.3-3.1-2-5.6-2s-3.2.3-4.3,1c-1.1.6-2,1.7-2.6,3.3s-.8,3.8-.8,6.6.8,5.7,2.3,7.3c1.5,1.7,3.6,2.5,6.3,2.5s2.5,0,3.6-.3,2.1-.5,3-.8c.9-.4,1.7-.7,2.4-1.2v3.9c-1.3.6-2.7,1.1-4.2,1.4-1.5.3-3.2.5-5.1.5Z"/>
<path d="M419.5,153.7v-24.3c.4-.2,1.2-.5,2.5-.9,1.2-.4,2.7-.8,4.4-1.2,1.7-.4,3.5-.5,5.3-.5s.6,0,.8.1c.3,0,.6.1.8.2v3.4c-.9-.1-1.8-.2-2.7-.2s-1.7,0-2.5.1-1.6.2-2.4.3c-.8.1-1.6.3-2.4.4v22.5h-3.8Z"/>
<path d="M446.4,154.4c-1.9,0-3.5-.2-4.8-.6s-2.6-.9-4-1.6v-4c1.1.6,2.1,1.1,2.9,1.5s1.7.7,2.6.9c.9.2,1.9.3,3,.3,1.8,0,3.2-.4,4.3-1.2,1.1-.8,1.7-1.8,1.7-3s-.3-1.7-.8-2.3-1.2-1-2.1-1.3c-.8-.4-1.7-.7-2.7-1.1-1-.3-2.1-.6-3.1-.9-1-.3-2-.8-2.9-1.3-.9-.5-1.6-1.3-2.1-2.1-.5-.9-.8-2-.8-3.4s.3-2.5.8-3.4c.5-1,1.3-1.7,2.1-2.4.9-.6,1.9-1.1,3-1.4,1.1-.3,2.2-.4,3.3-.4,1.6,0,2.9.2,4.1.6,1.1.4,2.3.9,3.5,1.4v3.8c-1.3-.7-2.5-1.3-3.6-1.7-1.1-.4-2.3-.7-3.8-.7s-2.7.3-3.9.9c-1.1.6-1.7,1.5-1.7,2.7s.3,1.8.9,2.4,1.4,1,2.3,1.4c1,.3,2,.7,3.1,1,.9.3,1.8.6,2.8.9,1,.3,1.8.8,2.7,1.3.8.5,1.5,1.3,2,2.1.5.9.8,2,.8,3.4s-.5,3.4-1.4,4.6-2.2,2.1-3.6,2.7c-1.5.6-3,.8-4.5.8Z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg id="a" xmlns="http://www.w3.org/2000/svg" width="180.62mm" height="180.62mm" viewBox="0 0 235 244" xmlns:c2pa="http://c2pa.org/manifest">
<rect x="0" y="0" width="235" height="244" fill="none"/>
<g fill="#ffffff" transform="translate(2,215) scale(0.1)">
<g>
<path d="M139.4.8l-.2,62c-34.3,0-63.4,21.8-73.2,51.9C26.4,141,.2,187.8.2,241.3H0l.2-101.3C.2,63.1,62.4.8,139.4.8Z"/>
<path d="M139.1,92.5l-.8,62.5c-42.6,0-77.1,38.6-77.1,86.3l1-103.9c0-7.9,1.3-15.5,3.6-22.7,21.2-14.1,46.3-22.3,73.2-22.3Z"/>
<path d="M65.9,114.7c-2.3,7.2-3.6,14.8-3.6,22.7l-1,103.9H.2c0-53.5,26.3-100.3,65.7-126.6Z"/>
</g>
<polygon points="202.8 .4 202.8 92.9 226.2 92.9 226.2 56 259.8 56 259.8 36.1 226.2 36.1 226.2 19.4 265.7 19.4 265.7 0 202.8 .4"/>
<polygon points="282.3 -.3 282.3 93 346.1 93 346.1 72.4 306.8 72.4 306.8 55.6 341.7 55.6 341.7 36.4 306.5 36.4 306.5 19.6 346.2 19.6 346.2 -.3 282.3 -.3"/>
<polygon points="365.9 92.8 429.5 92.8 429.5 70.9 389.6 70.9 389.6 .2 365 .2 365.9 92.8"/>
<polygon points="448 0 471.9 0 471.9 92.5 447.5 92.5 448 0"/>
<path d="M485.1,92.5s34.7-44.3,33.4-46.5S485.7,0,485.7,0h29l18.4,24.8L550.1,0h26.6l-29.9,45.4,33.1,46.8h-28.8l-19.3-27.4-18.9,28.1-27.9-.4Z"/>
<g>
<path d="M210.9,154.1c-1.9,0-3.7-.2-5.3-.7-1.6-.4-3-1-4.2-1.6v-3.9c1.1.6,2.4,1.1,3.9,1.6,1.5.5,3.2.7,5.1.7,3.1,0,5.5-.6,7.2-1.7,1.7-1.2,2.5-2.8,2.5-5s-.8-3.9-2.5-5c-1.7-1.2-4.2-1.7-7.4-1.7h-3.9v-3.7h4c2.6,0,4.5-.5,5.9-1.5,1.4-1,2-2.4,2-4.2s-.3-2.3-1-3.1c-.6-.8-1.6-1.5-2.8-1.9-1.3-.4-2.8-.7-4.6-.7s-3,.2-4.3.6c-1.3.4-2.4.8-3.3,1.3v-3.9c1.1-.5,2.3-.9,3.6-1.3,1.3-.4,2.8-.5,4.5-.5s4,.3,5.5.8c1.5.5,2.7,1.3,3.6,2.2.9.9,1.6,1.9,2,3.1.4,1.1.6,2.3.6,3.4s-.2,2.4-.7,3.3c-.5.9-1,1.7-1.6,2.2-.6.6-1.4,1.1-2.3,1.6,1.3.7,2.3,1.4,3.2,2.1s1.6,1.7,2.2,2.8c.6,1.1,1,2.5,1,4.2s-.2,2.5-.7,3.8c-.5,1.2-1.2,2.4-2.2,3.4s-2.4,1.8-4,2.4c-1.7.6-3.7.9-6.1.9Z"/>
<path d="M232.1,153.7v-35.4h11.1c5.5,0,9.7,1.5,12.4,4.4,2.8,3,4.2,7.4,4.2,13.2s-1.4,10.3-4.2,13.2c-2.8,3-6.9,4.5-12.4,4.5h-11.1ZM235.9,150h7c4.5,0,7.8-1.1,9.9-3.4,2-2.3,3.1-5.8,3.1-10.7s-1-8.4-3.1-10.7c-2-2.3-5.3-3.4-9.9-3.4h-7v28.2Z"/>
<path d="M291.9,154.4c-.8,0-1.7-.1-2.6-.3-1-.2-1.9-.5-2.8-.8-.9-.3-1.7-.7-2.4-1l1.3-1.3v14.2h-3.8v-33.2c0-1.1.3-2,1-2.7.7-.7,1.6-1.2,2.7-1.6,1.1-.4,2.3-.6,3.5-.8,1.2-.2,2.4-.2,3.5-.2,2.1,0,4.1.4,6,1.3,1.9.9,3.4,2.4,4.6,4.5s1.7,5,1.7,8.6-.5,5.1-1.5,7.1c-1,2-2.4,3.5-4.3,4.6-1.9,1.1-4.2,1.6-6.9,1.6ZM291.9,150.9c1.9,0,3.5-.4,4.8-1.2,1.3-.8,2.2-2,2.8-3.5.6-1.5,1-3.2,1-5.1s-.2-3.7-.6-5.4c-.4-1.7-1.2-3-2.4-4-1.2-1-3-1.5-5.2-1.5s-3.4.2-4.8.6c-1.4.4-2,1-2,1.8v16.4c1.1.6,2.2,1.1,3.3,1.4s2.2.5,3.3.5Z"/>
<path d="M311.1,153.7v-24.3c.4-.2,1.2-.5,2.5-.9,1.2-.4,2.7-.8,4.4-1.2,1.7-.4,3.5-.5,5.3-.5s.6,0,.8.1c.3,0,.6.1.8.2v3.4c-.9-.1-1.8-.2-2.7-.2s-1.7,0-2.5.1c-.8,0-1.6.2-2.4.3-.8.1-1.6.3-2.4.4v22.5h-3.8Z"/>
<path d="M330.5,122.5v-4.2h4.2v4.2h-4.2ZM330.8,153.7v-26.4h3.8v26.4h-3.8Z"/>
<path d="M342.7,129.3c.8-.4,1.7-.8,2.6-1.1.9-.3,1.8-.6,2.8-.8.9-.2,1.9-.4,2.9-.5,1-.1,2-.2,2.9-.2,2.6,0,4.6.4,6.1,1.1,1.5.8,2.6,1.9,3.3,3.3.7,1.4,1,3.2,1,5.2v17.2h-3.8v-17.2c0-.6,0-1.3-.2-2-.2-.7-.5-1.4-.9-2-.5-.7-1.2-1.2-2.1-1.6s-2.2-.6-3.8-.6-2.2,0-3.4.3-2.4.4-3.6.8v22.4h-3.8v-24.3Z"/>
<path d="M380.7,154.1c-1.9,0-3.4-.6-4.7-1.7-1.3-1.1-1.9-2.9-1.9-5.1v-16.5h-4.6v-3.5h4.6v-7.5h3.8v7.5h6.8v3.5h-6.8v15.3c0,1.5.2,2.6.7,3.3s1.4,1.1,2.8,1.1,1.3,0,1.9-.2,1.1-.3,1.5-.5v3.6c-.5.2-1.1.3-1.9.5s-1.5.2-2.1.2Z"/>
<path d="M402,154.4c-2.5,0-4.7-.5-6.5-1.6-1.8-1-3.3-2.6-4.2-4.7-1-2.1-1.5-4.7-1.5-7.8,0-4.6,1-8,3.1-10.3,2.1-2.3,4.9-3.4,8.5-3.4s5.1.6,6.8,1.9c1.7,1.3,2.9,3,3.7,5.1.7,2.2,1.1,4.6,1.1,7.3h-21.3l.3-3.5h18.5l-1.5.5c-.1-2.6-.8-4.6-2-5.9-1.2-1.3-3.1-2-5.6-2s-3.2.3-4.3,1c-1.1.6-2,1.7-2.6,3.3s-.8,3.8-.8,6.6.8,5.7,2.3,7.3c1.5,1.7,3.6,2.5,6.3,2.5s2.5,0,3.6-.3,2.1-.5,3-.8c.9-.4,1.7-.7,2.4-1.2v3.9c-1.3.6-2.7,1.1-4.2,1.4-1.5.3-3.2.5-5.1.5Z"/>
<path d="M419.5,153.7v-24.3c.4-.2,1.2-.5,2.5-.9,1.2-.4,2.7-.8,4.4-1.2,1.7-.4,3.5-.5,5.3-.5s.6,0,.8.1c.3,0,.6.1.8.2v3.4c-.9-.1-1.8-.2-2.7-.2s-1.7,0-2.5.1-1.6.2-2.4.3c-.8.1-1.6.3-2.4.4v22.5h-3.8Z"/>
<path d="M446.4,154.4c-1.9,0-3.5-.2-4.8-.6s-2.6-.9-4-1.6v-4c1.1.6,2.1,1.1,2.9,1.5s1.7.7,2.6.9c.9.2,1.9.3,3,.3,1.8,0,3.2-.4,4.3-1.2,1.1-.8,1.7-1.8,1.7-3s-.3-1.7-.8-2.3-1.2-1-2.1-1.3c-.8-.4-1.7-.7-2.7-1.1-1-.3-2.1-.6-3.1-.9-1-.3-2-.8-2.9-1.3-.9-.5-1.6-1.3-2.1-2.1-.5-.9-.8-2-.8-3.4s.3-2.5.8-3.4c.5-1,1.3-1.7,2.1-2.4.9-.6,1.9-1.1,3-1.4,1.1-.3,2.2-.4,3.3-.4,1.6,0,2.9.2,4.1.6,1.1.4,2.3.9,3.5,1.4v3.8c-1.3-.7-2.5-1.3-3.6-1.7-1.1-.4-2.3-.7-3.8-.7s-2.7.3-3.9.9c-1.1.6-1.7,1.5-1.7,2.7s.3,1.8.9,2.4,1.4,1,2.3,1.4c1,.3,2,.7,3.1,1,.9.3,1.8.6,2.8.9,1,.3,1.8.8,2.7,1.3.8.5,1.5,1.3,2,2.1.5.9.8,2,.8,3.4s-.5,3.4-1.4,4.6-2.2,2.1-3.6,2.7c-1.5.6-3,.8-4.5.8Z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1023 KiB

@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg id="a" xmlns="http://www.w3.org/2000/svg" width="180.62mm" height="180.62mm" viewBox="0 0 600 400" xmlns:c2pa="http://c2pa.org/manifest">
<rect x="0" y="0" width="600" height="400" fill="none"/>
<g fill="#ffffff" transform="translate(4,357) scale(0.16)">
<g>
<path d="M139.4.8l-.2,62c-34.3,0-63.4,21.8-73.2,51.9C26.4,141,.2,187.8.2,241.3H0l.2-101.3C.2,63.1,62.4.8,139.4.8Z"/>
<path d="M139.1,92.5l-.8,62.5c-42.6,0-77.1,38.6-77.1,86.3l1-103.9c0-7.9,1.3-15.5,3.6-22.7,21.2-14.1,46.3-22.3,73.2-22.3Z"/>
<path d="M65.9,114.7c-2.3,7.2-3.6,14.8-3.6,22.7l-1,103.9H.2c0-53.5,26.3-100.3,65.7-126.6Z"/>
</g>
<polygon points="202.8 .4 202.8 92.9 226.2 92.9 226.2 56 259.8 56 259.8 36.1 226.2 36.1 226.2 19.4 265.7 19.4 265.7 0 202.8 .4"/>
<polygon points="282.3 -.3 282.3 93 346.1 93 346.1 72.4 306.8 72.4 306.8 55.6 341.7 55.6 341.7 36.4 306.5 36.4 306.5 19.6 346.2 19.6 346.2 -.3 282.3 -.3"/>
<polygon points="365.9 92.8 429.5 92.8 429.5 70.9 389.6 70.9 389.6 .2 365 .2 365.9 92.8"/>
<polygon points="448 0 471.9 0 471.9 92.5 447.5 92.5 448 0"/>
<path d="M485.1,92.5s34.7-44.3,33.4-46.5S485.7,0,485.7,0h29l18.4,24.8L550.1,0h26.6l-29.9,45.4,33.1,46.8h-28.8l-19.3-27.4-18.9,28.1-27.9-.4Z"/>
<g>
<path d="M210.9,154.1c-1.9,0-3.7-.2-5.3-.7-1.6-.4-3-1-4.2-1.6v-3.9c1.1.6,2.4,1.1,3.9,1.6,1.5.5,3.2.7,5.1.7,3.1,0,5.5-.6,7.2-1.7,1.7-1.2,2.5-2.8,2.5-5s-.8-3.9-2.5-5c-1.7-1.2-4.2-1.7-7.4-1.7h-3.9v-3.7h4c2.6,0,4.5-.5,5.9-1.5,1.4-1,2-2.4,2-4.2s-.3-2.3-1-3.1c-.6-.8-1.6-1.5-2.8-1.9-1.3-.4-2.8-.7-4.6-.7s-3,.2-4.3.6c-1.3.4-2.4.8-3.3,1.3v-3.9c1.1-.5,2.3-.9,3.6-1.3,1.3-.4,2.8-.5,4.5-.5s4,.3,5.5.8c1.5.5,2.7,1.3,3.6,2.2.9.9,1.6,1.9,2,3.1.4,1.1.6,2.3.6,3.4s-.2,2.4-.7,3.3c-.5.9-1,1.7-1.6,2.2-.6.6-1.4,1.1-2.3,1.6,1.3.7,2.3,1.4,3.2,2.1s1.6,1.7,2.2,2.8c.6,1.1,1,2.5,1,4.2s-.2,2.5-.7,3.8c-.5,1.2-1.2,2.4-2.2,3.4s-2.4,1.8-4,2.4c-1.7.6-3.7.9-6.1.9Z"/>
<path d="M232.1,153.7v-35.4h11.1c5.5,0,9.7,1.5,12.4,4.4,2.8,3,4.2,7.4,4.2,13.2s-1.4,10.3-4.2,13.2c-2.8,3-6.9,4.5-12.4,4.5h-11.1ZM235.9,150h7c4.5,0,7.8-1.1,9.9-3.4,2-2.3,3.1-5.8,3.1-10.7s-1-8.4-3.1-10.7c-2-2.3-5.3-3.4-9.9-3.4h-7v28.2Z"/>
<path d="M291.9,154.4c-.8,0-1.7-.1-2.6-.3-1-.2-1.9-.5-2.8-.8-.9-.3-1.7-.7-2.4-1l1.3-1.3v14.2h-3.8v-33.2c0-1.1.3-2,1-2.7.7-.7,1.6-1.2,2.7-1.6,1.1-.4,2.3-.6,3.5-.8,1.2-.2,2.4-.2,3.5-.2,2.1,0,4.1.4,6,1.3,1.9.9,3.4,2.4,4.6,4.5s1.7,5,1.7,8.6-.5,5.1-1.5,7.1c-1,2-2.4,3.5-4.3,4.6-1.9,1.1-4.2,1.6-6.9,1.6ZM291.9,150.9c1.9,0,3.5-.4,4.8-1.2,1.3-.8,2.2-2,2.8-3.5.6-1.5,1-3.2,1-5.1s-.2-3.7-.6-5.4c-.4-1.7-1.2-3-2.4-4-1.2-1-3-1.5-5.2-1.5s-3.4.2-4.8.6c-1.4.4-2,1-2,1.8v16.4c1.1.6,2.2,1.1,3.3,1.4s2.2.5,3.3.5Z"/>
<path d="M311.1,153.7v-24.3c.4-.2,1.2-.5,2.5-.9,1.2-.4,2.7-.8,4.4-1.2,1.7-.4,3.5-.5,5.3-.5s.6,0,.8.1c.3,0,.6.1.8.2v3.4c-.9-.1-1.8-.2-2.7-.2s-1.7,0-2.5.1c-.8,0-1.6.2-2.4.3-.8.1-1.6.3-2.4.4v22.5h-3.8Z"/>
<path d="M330.5,122.5v-4.2h4.2v4.2h-4.2ZM330.8,153.7v-26.4h3.8v26.4h-3.8Z"/>
<path d="M342.7,129.3c.8-.4,1.7-.8,2.6-1.1.9-.3,1.8-.6,2.8-.8.9-.2,1.9-.4,2.9-.5,1-.1,2-.2,2.9-.2,2.6,0,4.6.4,6.1,1.1,1.5.8,2.6,1.9,3.3,3.3.7,1.4,1,3.2,1,5.2v17.2h-3.8v-17.2c0-.6,0-1.3-.2-2-.2-.7-.5-1.4-.9-2-.5-.7-1.2-1.2-2.1-1.6s-2.2-.6-3.8-.6-2.2,0-3.4.3-2.4.4-3.6.8v22.4h-3.8v-24.3Z"/>
<path d="M380.7,154.1c-1.9,0-3.4-.6-4.7-1.7-1.3-1.1-1.9-2.9-1.9-5.1v-16.5h-4.6v-3.5h4.6v-7.5h3.8v7.5h6.8v3.5h-6.8v15.3c0,1.5.2,2.6.7,3.3s1.4,1.1,2.8,1.1,1.3,0,1.9-.2,1.1-.3,1.5-.5v3.6c-.5.2-1.1.3-1.9.5s-1.5.2-2.1.2Z"/>
<path d="M402,154.4c-2.5,0-4.7-.5-6.5-1.6-1.8-1-3.3-2.6-4.2-4.7-1-2.1-1.5-4.7-1.5-7.8,0-4.6,1-8,3.1-10.3,2.1-2.3,4.9-3.4,8.5-3.4s5.1.6,6.8,1.9c1.7,1.3,2.9,3,3.7,5.1.7,2.2,1.1,4.6,1.1,7.3h-21.3l.3-3.5h18.5l-1.5.5c-.1-2.6-.8-4.6-2-5.9-1.2-1.3-3.1-2-5.6-2s-3.2.3-4.3,1c-1.1.6-2,1.7-2.6,3.3s-.8,3.8-.8,6.6.8,5.7,2.3,7.3c1.5,1.7,3.6,2.5,6.3,2.5s2.5,0,3.6-.3,2.1-.5,3-.8c.9-.4,1.7-.7,2.4-1.2v3.9c-1.3.6-2.7,1.1-4.2,1.4-1.5.3-3.2.5-5.1.5Z"/>
<path d="M419.5,153.7v-24.3c.4-.2,1.2-.5,2.5-.9,1.2-.4,2.7-.8,4.4-1.2,1.7-.4,3.5-.5,5.3-.5s.6,0,.8.1c.3,0,.6.1.8.2v3.4c-.9-.1-1.8-.2-2.7-.2s-1.7,0-2.5.1-1.6.2-2.4.3c-.8.1-1.6.3-2.4.4v22.5h-3.8Z"/>
<path d="M446.4,154.4c-1.9,0-3.5-.2-4.8-.6s-2.6-.9-4-1.6v-4c1.1.6,2.1,1.1,2.9,1.5s1.7.7,2.6.9c.9.2,1.9.3,3,.3,1.8,0,3.2-.4,4.3-1.2,1.1-.8,1.7-1.8,1.7-3s-.3-1.7-.8-2.3-1.2-1-2.1-1.3c-.8-.4-1.7-.7-2.7-1.1-1-.3-2.1-.6-3.1-.9-1-.3-2-.8-2.9-1.3-.9-.5-1.6-1.3-2.1-2.1-.5-.9-.8-2-.8-3.4s.3-2.5.8-3.4c.5-1,1.3-1.7,2.1-2.4.9-.6,1.9-1.1,3-1.4,1.1-.3,2.2-.4,3.3-.4,1.6,0,2.9.2,4.1.6,1.1.4,2.3.9,3.5,1.4v3.8c-1.3-.7-2.5-1.3-3.6-1.7-1.1-.4-2.3-.7-3.8-.7s-2.7.3-3.9.9c-1.1.6-1.7,1.5-1.7,2.7s.3,1.8.9,2.4,1.4,1,2.3,1.4c1,.3,2,.7,3.1,1,.9.3,1.8.6,2.8.9,1,.3,1.8.8,2.7,1.3.8.5,1.5,1.3,2,2.1.5.9.8,2,.8,3.4s-.5,3.4-1.4,4.6-2.2,2.1-3.6,2.7c-1.5.6-3,.8-4.5.8Z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

@@ -0,0 +1,28 @@
<?xml version="1.0" encoding="UTF-8"?>
<svg id="a" xmlns="http://www.w3.org/2000/svg" width="180.62mm" height="180.62mm" viewBox="0 0 205 255" xmlns:c2pa="http://c2pa.org/manifest">
<rect x="0" y="0" width="205" height="255" fill="none"/>
<g fill="#ffffff" transform="translate(3,228) scale(0.1)">
<g>
<path d="M139.4.8l-.2,62c-34.3,0-63.4,21.8-73.2,51.9C26.4,141,.2,187.8.2,241.3H0l.2-101.3C.2,63.1,62.4.8,139.4.8Z"/>
<path d="M139.1,92.5l-.8,62.5c-42.6,0-77.1,38.6-77.1,86.3l1-103.9c0-7.9,1.3-15.5,3.6-22.7,21.2-14.1,46.3-22.3,73.2-22.3Z"/>
<path d="M65.9,114.7c-2.3,7.2-3.6,14.8-3.6,22.7l-1,103.9H.2c0-53.5,26.3-100.3,65.7-126.6Z"/>
</g>
<polygon points="202.8 .4 202.8 92.9 226.2 92.9 226.2 56 259.8 56 259.8 36.1 226.2 36.1 226.2 19.4 265.7 19.4 265.7 0 202.8 .4"/>
<polygon points="282.3 -.3 282.3 93 346.1 93 346.1 72.4 306.8 72.4 306.8 55.6 341.7 55.6 341.7 36.4 306.5 36.4 306.5 19.6 346.2 19.6 346.2 -.3 282.3 -.3"/>
<polygon points="365.9 92.8 429.5 92.8 429.5 70.9 389.6 70.9 389.6 .2 365 .2 365.9 92.8"/>
<polygon points="448 0 471.9 0 471.9 92.5 447.5 92.5 448 0"/>
<path d="M485.1,92.5s34.7-44.3,33.4-46.5S485.7,0,485.7,0h29l18.4,24.8L550.1,0h26.6l-29.9,45.4,33.1,46.8h-28.8l-19.3-27.4-18.9,28.1-27.9-.4Z"/>
<g>
<path d="M210.9,154.1c-1.9,0-3.7-.2-5.3-.7-1.6-.4-3-1-4.2-1.6v-3.9c1.1.6,2.4,1.1,3.9,1.6,1.5.5,3.2.7,5.1.7,3.1,0,5.5-.6,7.2-1.7,1.7-1.2,2.5-2.8,2.5-5s-.8-3.9-2.5-5c-1.7-1.2-4.2-1.7-7.4-1.7h-3.9v-3.7h4c2.6,0,4.5-.5,5.9-1.5,1.4-1,2-2.4,2-4.2s-.3-2.3-1-3.1c-.6-.8-1.6-1.5-2.8-1.9-1.3-.4-2.8-.7-4.6-.7s-3,.2-4.3.6c-1.3.4-2.4.8-3.3,1.3v-3.9c1.1-.5,2.3-.9,3.6-1.3,1.3-.4,2.8-.5,4.5-.5s4,.3,5.5.8c1.5.5,2.7,1.3,3.6,2.2.9.9,1.6,1.9,2,3.1.4,1.1.6,2.3.6,3.4s-.2,2.4-.7,3.3c-.5.9-1,1.7-1.6,2.2-.6.6-1.4,1.1-2.3,1.6,1.3.7,2.3,1.4,3.2,2.1s1.6,1.7,2.2,2.8c.6,1.1,1,2.5,1,4.2s-.2,2.5-.7,3.8c-.5,1.2-1.2,2.4-2.2,3.4s-2.4,1.8-4,2.4c-1.7.6-3.7.9-6.1.9Z"/>
<path d="M232.1,153.7v-35.4h11.1c5.5,0,9.7,1.5,12.4,4.4,2.8,3,4.2,7.4,4.2,13.2s-1.4,10.3-4.2,13.2c-2.8,3-6.9,4.5-12.4,4.5h-11.1ZM235.9,150h7c4.5,0,7.8-1.1,9.9-3.4,2-2.3,3.1-5.8,3.1-10.7s-1-8.4-3.1-10.7c-2-2.3-5.3-3.4-9.9-3.4h-7v28.2Z"/>
<path d="M291.9,154.4c-.8,0-1.7-.1-2.6-.3-1-.2-1.9-.5-2.8-.8-.9-.3-1.7-.7-2.4-1l1.3-1.3v14.2h-3.8v-33.2c0-1.1.3-2,1-2.7.7-.7,1.6-1.2,2.7-1.6,1.1-.4,2.3-.6,3.5-.8,1.2-.2,2.4-.2,3.5-.2,2.1,0,4.1.4,6,1.3,1.9.9,3.4,2.4,4.6,4.5s1.7,5,1.7,8.6-.5,5.1-1.5,7.1c-1,2-2.4,3.5-4.3,4.6-1.9,1.1-4.2,1.6-6.9,1.6ZM291.9,150.9c1.9,0,3.5-.4,4.8-1.2,1.3-.8,2.2-2,2.8-3.5.6-1.5,1-3.2,1-5.1s-.2-3.7-.6-5.4c-.4-1.7-1.2-3-2.4-4-1.2-1-3-1.5-5.2-1.5s-3.4.2-4.8.6c-1.4.4-2,1-2,1.8v16.4c1.1.6,2.2,1.1,3.3,1.4s2.2.5,3.3.5Z"/>
<path d="M311.1,153.7v-24.3c.4-.2,1.2-.5,2.5-.9,1.2-.4,2.7-.8,4.4-1.2,1.7-.4,3.5-.5,5.3-.5s.6,0,.8.1c.3,0,.6.1.8.2v3.4c-.9-.1-1.8-.2-2.7-.2s-1.7,0-2.5.1c-.8,0-1.6.2-2.4.3-.8.1-1.6.3-2.4.4v22.5h-3.8Z"/>
<path d="M330.5,122.5v-4.2h4.2v4.2h-4.2ZM330.8,153.7v-26.4h3.8v26.4h-3.8Z"/>
<path d="M342.7,129.3c.8-.4,1.7-.8,2.6-1.1.9-.3,1.8-.6,2.8-.8.9-.2,1.9-.4,2.9-.5,1-.1,2-.2,2.9-.2,2.6,0,4.6.4,6.1,1.1,1.5.8,2.6,1.9,3.3,3.3.7,1.4,1,3.2,1,5.2v17.2h-3.8v-17.2c0-.6,0-1.3-.2-2-.2-.7-.5-1.4-.9-2-.5-.7-1.2-1.2-2.1-1.6s-2.2-.6-3.8-.6-2.2,0-3.4.3-2.4.4-3.6.8v22.4h-3.8v-24.3Z"/>
<path d="M380.7,154.1c-1.9,0-3.4-.6-4.7-1.7-1.3-1.1-1.9-2.9-1.9-5.1v-16.5h-4.6v-3.5h4.6v-7.5h3.8v7.5h6.8v3.5h-6.8v15.3c0,1.5.2,2.6.7,3.3s1.4,1.1,2.8,1.1,1.3,0,1.9-.2,1.1-.3,1.5-.5v3.6c-.5.2-1.1.3-1.9.5s-1.5.2-2.1.2Z"/>
<path d="M402,154.4c-2.5,0-4.7-.5-6.5-1.6-1.8-1-3.3-2.6-4.2-4.7-1-2.1-1.5-4.7-1.5-7.8,0-4.6,1-8,3.1-10.3,2.1-2.3,4.9-3.4,8.5-3.4s5.1.6,6.8,1.9c1.7,1.3,2.9,3,3.7,5.1.7,2.2,1.1,4.6,1.1,7.3h-21.3l.3-3.5h18.5l-1.5.5c-.1-2.6-.8-4.6-2-5.9-1.2-1.3-3.1-2-5.6-2s-3.2.3-4.3,1c-1.1.6-2,1.7-2.6,3.3s-.8,3.8-.8,6.6.8,5.7,2.3,7.3c1.5,1.7,3.6,2.5,6.3,2.5s2.5,0,3.6-.3,2.1-.5,3-.8c.9-.4,1.7-.7,2.4-1.2v3.9c-1.3.6-2.7,1.1-4.2,1.4-1.5.3-3.2.5-5.1.5Z"/>
<path d="M419.5,153.7v-24.3c.4-.2,1.2-.5,2.5-.9,1.2-.4,2.7-.8,4.4-1.2,1.7-.4,3.5-.5,5.3-.5s.6,0,.8.1c.3,0,.6.1.8.2v3.4c-.9-.1-1.8-.2-2.7-.2s-1.7,0-2.5.1-1.6.2-2.4.3c-.8.1-1.6.3-2.4.4v22.5h-3.8Z"/>
<path d="M446.4,154.4c-1.9,0-3.5-.2-4.8-.6s-2.6-.9-4-1.6v-4c1.1.6,2.1,1.1,2.9,1.5s1.7.7,2.6.9c.9.2,1.9.3,3,.3,1.8,0,3.2-.4,4.3-1.2,1.1-.8,1.7-1.8,1.7-3s-.3-1.7-.8-2.3-1.2-1-2.1-1.3c-.8-.4-1.7-.7-2.7-1.1-1-.3-2.1-.6-3.1-.9-1-.3-2-.8-2.9-1.3-.9-.5-1.6-1.3-2.1-2.1-.5-.9-.8-2-.8-3.4s.3-2.5.8-3.4c.5-1,1.3-1.7,2.1-2.4.9-.6,1.9-1.1,3-1.4,1.1-.3,2.2-.4,3.3-.4,1.6,0,2.9.2,4.1.6,1.1.4,2.3.9,3.5,1.4v3.8c-1.3-.7-2.5-1.3-3.6-1.7-1.1-.4-2.3-.7-3.8-.7s-2.7.3-3.9.9c-1.1.6-1.7,1.5-1.7,2.7s.3,1.8.9,2.4,1.4,1,2.3,1.4c1,.3,2,.7,3.1,1,.9.3,1.8.6,2.8.9,1,.3,1.8.8,2.7,1.3.8.5,1.5,1.3,2,2.1.5.9.8,2,.8,3.4s-.5,3.4-1.4,4.6-2.2,2.1-3.6,2.7c-1.5.6-3,.8-4.5.8Z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 611 KiB

Binary file not shown.
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Medium Plastic Syringe @0.50mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "IQnumbi0N4BnvMfO",
"filament_id": "OFAzgHcF",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 0.50mm nozzle",
"FELIX Food Double 0.50mm nozzle",
"FELIX Food Switch 0.50mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.05"
],
"filament_retraction_length": [
"3.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"6.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"0.75"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"7.2"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Medium Plastic Syringe @1.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "p8CG6dHMUxNl7iPL",
"filament_id": "OFAzgHcF",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 1.00mm nozzle",
"FELIX Food Double 1.00mm nozzle",
"FELIX Food Switch 1.00mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.05"
],
"filament_retraction_length": [
"3.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"6.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"1.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"27.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Medium Plastic Syringe @2.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "s5uPS7I3E57tiRRC",
"filament_id": "OFAzgHcF",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 2.00mm nozzle",
"FELIX Food Double 2.00mm nozzle",
"FELIX Food Switch 2.00mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.05"
],
"filament_retraction_length": [
"3.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"6.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"3.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"108.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Medium Plastic Syringe @3.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "zlZtghh6ytU7N09m",
"filament_id": "OFAzgHcF",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 3.00mm nozzle",
"FELIX Food Double 3.00mm nozzle",
"FELIX Food Switch 3.00mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.05"
],
"filament_retraction_length": [
"3.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"6.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"4.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"216.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Medium Plastic Syringe @4.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "fvTZEcREMbs3JW1D",
"filament_id": "OFAzgHcF",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 4.00mm nozzle",
"FELIX Food Double 4.00mm nozzle",
"FELIX Food Switch 4.00mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.05"
],
"filament_retraction_length": [
"3.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"6.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"6.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"432.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Medium Stainless Steel Syringe @0.50mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "2XyqnzMqyuRCqpPq",
"filament_id": "OFqZSD1S",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 0.50mm nozzle",
"FELIX Food Double 0.50mm nozzle",
"FELIX Food Switch 0.50mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.05"
],
"filament_retraction_length": [
"1.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"10.0"
],
"filament_deretraction_speed": [
"10.0"
],
"filament_retract_length_toolchange": [
"2.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"0.75"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"7.2"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Medium Stainless Steel Syringe @1.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "yNxVUGOb1kUbXLiw",
"filament_id": "OFqZSD1S",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 1.00mm nozzle",
"FELIX Food Double 1.00mm nozzle",
"FELIX Food Switch 1.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.05"
],
"filament_retraction_length": [
"1.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"10.0"
],
"filament_deretraction_speed": [
"10.0"
],
"filament_retract_length_toolchange": [
"2.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"1.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"27.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Medium Stainless Steel Syringe @2.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "4MhgYDnGFKLfurhc",
"filament_id": "OFqZSD1S",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 2.00mm nozzle",
"FELIX Food Double 2.00mm nozzle",
"FELIX Food Switch 2.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.05"
],
"filament_retraction_length": [
"1.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"10.0"
],
"filament_deretraction_speed": [
"10.0"
],
"filament_retract_length_toolchange": [
"2.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"3.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"108.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Medium Stainless Steel Syringe @3.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "mEH3Rgzzwjq9iptd",
"filament_id": "OFqZSD1S",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 3.00mm nozzle",
"FELIX Food Double 3.00mm nozzle",
"FELIX Food Switch 3.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.05"
],
"filament_retraction_length": [
"1.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"10.0"
],
"filament_deretraction_speed": [
"10.0"
],
"filament_retract_length_toolchange": [
"2.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"4.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"216.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Medium Stainless Steel Syringe @4.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "rJsNSIb8w9kOwhwE",
"filament_id": "OFqZSD1S",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 4.00mm nozzle",
"FELIX Food Double 4.00mm nozzle",
"FELIX Food Switch 4.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.05"
],
"filament_retraction_length": [
"1.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"10.0"
],
"filament_deretraction_speed": [
"10.0"
],
"filament_retract_length_toolchange": [
"2.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"6.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"432.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thick Stainless Steel Syringe @0.50mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "dJzDnkh8Kyn3phhF",
"filament_id": "OFjXHG0Z",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 0.50mm nozzle",
"FELIX Food Double 0.50mm nozzle",
"FELIX Food Switch 0.50mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.02"
],
"filament_retraction_length": [
"2.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"4.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"0.75"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"4.8"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thick Stainless Steel Syringe @1.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "QQi61sD4rX2jELMa",
"filament_id": "OFjXHG0Z",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 1.00mm nozzle",
"FELIX Food Double 1.00mm nozzle",
"FELIX Food Switch 1.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.02"
],
"filament_retraction_length": [
"2.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"4.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"1.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"18.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thick Stainless Steel Syringe @2.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "KUmfC5HZL2hXPfey",
"filament_id": "OFjXHG0Z",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 2.00mm nozzle",
"FELIX Food Double 2.00mm nozzle",
"FELIX Food Switch 2.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.02"
],
"filament_retraction_length": [
"2.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"4.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"3.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"72.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thick Stainless Steel Syringe @3.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "0BbaSUre1bztrKB0",
"filament_id": "OFjXHG0Z",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 3.00mm nozzle",
"FELIX Food Double 3.00mm nozzle",
"FELIX Food Switch 3.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.02"
],
"filament_retraction_length": [
"2.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"4.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"4.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"144.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thick Stainless Steel Syringe @4.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "b179BTbFqjhnsHPT",
"filament_id": "OFjXHG0Z",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 4.00mm nozzle",
"FELIX Food Double 4.00mm nozzle",
"FELIX Food Switch 4.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.02"
],
"filament_retraction_length": [
"2.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"4.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"6.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"288.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thin Plastic Syringe @0.50mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "dBTTG8HJRYb7GHqy",
"filament_id": "OF0kP94Y",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 0.50mm nozzle",
"FELIX Food Double 0.50mm nozzle",
"FELIX Food Switch 0.50mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.1"
],
"filament_retraction_length": [
"0.75"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"1.5"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"0.75"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"10.8"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thin Plastic Syringe @1.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "FITfR7iepAteWuno",
"filament_id": "OF0kP94Y",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 1.00mm nozzle",
"FELIX Food Double 1.00mm nozzle",
"FELIX Food Switch 1.00mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.1"
],
"filament_retraction_length": [
"0.75"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"1.5"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"1.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"40.5"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thin Plastic Syringe @2.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "i2DZouQfWUnIm4R5",
"filament_id": "OF0kP94Y",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 2.00mm nozzle",
"FELIX Food Double 2.00mm nozzle",
"FELIX Food Switch 2.00mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.1"
],
"filament_retraction_length": [
"0.75"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"1.5"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"3.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"162.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thin Plastic Syringe @3.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "EzV8T0DVT0NRPa7P",
"filament_id": "OF0kP94Y",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 3.00mm nozzle",
"FELIX Food Double 3.00mm nozzle",
"FELIX Food Switch 3.00mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.1"
],
"filament_retraction_length": [
"0.75"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"1.5"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"4.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"324.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thin Plastic Syringe @4.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "Q6msqrC9TM0un5qw",
"filament_id": "OF0kP94Y",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 4.00mm nozzle",
"FELIX Food Double 4.00mm nozzle",
"FELIX Food Switch 4.00mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.1"
],
"filament_retraction_length": [
"0.75"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"1.5"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"6.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"648.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thin Stainless Steel Syringe @0.50mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "I9W6tiEnRSMrkyzl",
"filament_id": "OF40XIE8",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 0.50mm nozzle",
"FELIX Food Double 0.50mm nozzle",
"FELIX Food Switch 0.50mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.1"
],
"filament_retraction_length": [
"0.2"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"10.0"
],
"filament_deretraction_speed": [
"10.0"
],
"filament_retract_length_toolchange": [
"0.4"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"0.75"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"10.8"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thin Stainless Steel Syringe @1.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "PJpJ8TTlDajNrRJo",
"filament_id": "OF40XIE8",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 1.00mm nozzle",
"FELIX Food Double 1.00mm nozzle",
"FELIX Food Switch 1.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.1"
],
"filament_retraction_length": [
"0.2"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"10.0"
],
"filament_deretraction_speed": [
"10.0"
],
"filament_retract_length_toolchange": [
"0.4"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"1.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"40.5"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thin Stainless Steel Syringe @2.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "s3GOL7BWdRbaV4GM",
"filament_id": "OF40XIE8",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 2.00mm nozzle",
"FELIX Food Double 2.00mm nozzle",
"FELIX Food Switch 2.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.1"
],
"filament_retraction_length": [
"0.2"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"10.0"
],
"filament_deretraction_speed": [
"10.0"
],
"filament_retract_length_toolchange": [
"0.4"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"3.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"162.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thin Stainless Steel Syringe @3.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "WKPEMCVctL0c5FFi",
"filament_id": "OF40XIE8",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 3.00mm nozzle",
"FELIX Food Double 3.00mm nozzle",
"FELIX Food Switch 3.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.1"
],
"filament_retraction_length": [
"0.2"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"10.0"
],
"filament_deretraction_speed": [
"10.0"
],
"filament_retract_length_toolchange": [
"0.4"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"4.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"324.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Thin Stainless Steel Syringe @4.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "I5UEkm93zhn9hdMF",
"filament_id": "OF40XIE8",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 4.00mm nozzle",
"FELIX Food Double 4.00mm nozzle",
"FELIX Food Switch 4.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.1"
],
"filament_retraction_length": [
"0.2"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"10.0"
],
"filament_deretraction_speed": [
"10.0"
],
"filament_retract_length_toolchange": [
"0.4"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"6.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"648.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thick Stainless Steel Syringe @1.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "OIZKSwXaRY7WZecX",
"filament_id": "OF0xT5HR",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 1.00mm nozzle",
"FELIX Food Double 1.00mm nozzle",
"FELIX Food Switch 1.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.0"
],
"filament_retraction_length": [
"2.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"4.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"0.75"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"13.5"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thick Stainless Steel Syringe @2.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "al27KBjL9MAi3ri9",
"filament_id": "OF0xT5HR",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 2.00mm nozzle",
"FELIX Food Double 2.00mm nozzle",
"FELIX Food Switch 2.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.0"
],
"filament_retraction_length": [
"2.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"4.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"1.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"53.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thick Stainless Steel Syringe @3.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "42ADzpr7vGuh3AKC",
"filament_id": "OF0xT5HR",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 3.00mm nozzle",
"FELIX Food Double 3.00mm nozzle",
"FELIX Food Switch 3.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.0"
],
"filament_retraction_length": [
"2.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"4.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"3.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"108.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thick Stainless Steel Syringe @4.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "FpQC7Cf5qnW1E2QO",
"filament_id": "OF0xT5HR",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 4.00mm nozzle",
"FELIX Food Double 4.00mm nozzle",
"FELIX Food Switch 4.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"1.0"
],
"filament_retraction_length": [
"2.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"4.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"4.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"216.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thin Plastic Syringe @0.50mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "9OMbRBrVCyDD6A2k",
"filament_id": "OF1XcHqz",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 0.50mm nozzle",
"FELIX Food Double 0.50mm nozzle",
"FELIX Food Switch 0.50mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.0"
],
"filament_retraction_length": [
"0.5"
],
"filament_retract_restart_extra": [
"0.03"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"1.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"0.75"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"14.4"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thin Plastic Syringe @1.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "ukd2jpvA1sHePEfs",
"filament_id": "OF1XcHqz",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 1.00mm nozzle",
"FELIX Food Double 1.00mm nozzle",
"FELIX Food Switch 1.00mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.0"
],
"filament_retraction_length": [
"0.5"
],
"filament_retract_restart_extra": [
"0.03"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"1.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"1.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"54.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thin Plastic Syringe @2.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "jXkY0MPClCiaCJGC",
"filament_id": "OF1XcHqz",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 2.00mm nozzle",
"FELIX Food Double 2.00mm nozzle",
"FELIX Food Switch 2.00mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.0"
],
"filament_retraction_length": [
"0.5"
],
"filament_retract_restart_extra": [
"0.03"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"1.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"3.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"218.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thin Plastic Syringe @3.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "jSTp7ePK9UKaNX3S",
"filament_id": "OF1XcHqz",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 3.00mm nozzle",
"FELIX Food Double 3.00mm nozzle",
"FELIX Food Switch 3.00mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.0"
],
"filament_retraction_length": [
"0.5"
],
"filament_retract_restart_extra": [
"0.03"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"1.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"4.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"432.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thin Plastic Syringe @4.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "q3tLnporrSrlZl6S",
"filament_id": "OF1XcHqz",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 4.00mm nozzle",
"FELIX Food Double 4.00mm nozzle",
"FELIX Food Switch 4.00mm nozzle"
],
"filament_diameter": [
"31.22"
],
"filament_flow_ratio": [
"1.0"
],
"filament_retraction_length": [
"0.5"
],
"filament_retract_restart_extra": [
"0.03"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"1.0"
],
"filament_retract_restart_extra_toolchange": [
"0.0"
],
"filament_wipe_distance": [
"6.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"864.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thin Stainless Steel Syringe @1.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "ZGtJ5dq6QEFrRzER",
"filament_id": "OFJDz9xO",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 1.00mm nozzle",
"FELIX Food Double 1.00mm nozzle",
"FELIX Food Switch 1.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"0.96"
],
"filament_retraction_length": [
"0.1"
],
"filament_retract_restart_extra": [
"0.03"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"0.2"
],
"filament_retract_restart_extra_toolchange": [
"0.03"
],
"filament_wipe_distance": [
"1.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"54.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thin Stainless Steel Syringe @2.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "il7EvApOb39ReoAt",
"filament_id": "OFJDz9xO",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 2.00mm nozzle",
"FELIX Food Double 2.00mm nozzle",
"FELIX Food Switch 2.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"0.96"
],
"filament_retraction_length": [
"0.1"
],
"filament_retract_restart_extra": [
"0.03"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"0.2"
],
"filament_retract_restart_extra_toolchange": [
"0.03"
],
"filament_wipe_distance": [
"3.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"216.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thin Stainless Steel Syringe @3.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "yTSl3aV0S2HD6zPy",
"filament_id": "OFJDz9xO",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 3.00mm nozzle",
"FELIX Food Double 3.00mm nozzle",
"FELIX Food Switch 3.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"0.96"
],
"filament_retraction_length": [
"0.1"
],
"filament_retract_restart_extra": [
"0.03"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"0.2"
],
"filament_retract_restart_extra_toolchange": [
"0.03"
],
"filament_wipe_distance": [
"4.5"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"432.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thin Stainless Steel Syringe @4.00mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "JfnwH4HjP0CQKuyr",
"filament_id": "OFJDz9xO",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 4.00mm nozzle",
"FELIX Food Double 4.00mm nozzle",
"FELIX Food Switch 4.00mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"0.96"
],
"filament_retraction_length": [
"0.1"
],
"filament_retract_restart_extra": [
"0.03"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"0.2"
],
"filament_retract_restart_extra_toolchange": [
"0.03"
],
"filament_wipe_distance": [
"6.0"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"864.0"
]
}
@@ -0,0 +1,47 @@
{
"type": "filament",
"name": "Food Very Thin Stainless Steel Syringe @0.50mm",
"inherits": "fdm_filament_food",
"from": "system",
"setting_id": "mIgwxwB2N67qAhxk",
"filament_id": "OFASY29j",
"instantiation": "true",
"compatible_printers": [
"FELIX Food Single 0.50mm nozzle",
"FELIX Food Double 0.50mm nozzle",
"FELIX Food Switch 0.50mm nozzle"
],
"filament_diameter": [
"25.4"
],
"filament_flow_ratio": [
"0.96"
],
"filament_retraction_length": [
"0.1"
],
"filament_retract_restart_extra": [
"0.03"
],
"filament_retraction_speed": [
"5.0"
],
"filament_deretraction_speed": [
"5.0"
],
"filament_retract_length_toolchange": [
"0.2"
],
"filament_retract_restart_extra_toolchange": [
"0.03"
],
"filament_wipe_distance": [
"0.75"
],
"filament_vendor": [
"FELIX Printers"
],
"filament_max_volumetric_speed": [
"14.4"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX FLEX Brass @ 0.35mm",
"inherits": "fdm_filament_flex",
"from": "system",
"setting_id": "UXX0sEaoqZvdXwi6",
"filament_id": "OFF6vK3j",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.35mm nozzle",
"FELIX Pro L 3.0 0.35mm nozzle",
"FELIX Pro XL 3.0 0.35mm nozzle",
"FELIX Tec 4 0.35mm nozzle"
],
"nozzle_temperature": [
"215.0"
],
"nozzle_temperature_initial_layer": [
"215.0"
],
"hot_plate_temp": [
"40.0"
],
"hot_plate_temp_initial_layer": [
"40.0"
],
"cool_plate_temp": [
"40.0"
],
"cool_plate_temp_initial_layer": [
"40.0"
],
"eng_plate_temp": [
"40.0"
],
"eng_plate_temp_initial_layer": [
"40.0"
],
"textured_plate_temp": [
"40.0"
],
"textured_plate_temp_initial_layer": [
"40.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"2.2"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"60.0"
],
"fan_max_speed": [
"60.0"
],
"filament_density": [
"1.38"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX FLEX Brass @ 0.50mm",
"inherits": "fdm_filament_flex",
"from": "system",
"setting_id": "B4AmHHxdvhsjN34a",
"filament_id": "OFF6vK3j",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.50mm nozzle",
"FELIX Pro L 3.0 0.50mm nozzle",
"FELIX Pro XL 3.0 0.50mm nozzle",
"FELIX Tec 4 0.50mm nozzle"
],
"nozzle_temperature": [
"215.0"
],
"nozzle_temperature_initial_layer": [
"215.0"
],
"hot_plate_temp": [
"40.0"
],
"hot_plate_temp_initial_layer": [
"40.0"
],
"cool_plate_temp": [
"40.0"
],
"cool_plate_temp_initial_layer": [
"40.0"
],
"eng_plate_temp": [
"40.0"
],
"eng_plate_temp_initial_layer": [
"40.0"
],
"textured_plate_temp": [
"40.0"
],
"textured_plate_temp_initial_layer": [
"40.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"2.2"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"60.0"
],
"fan_max_speed": [
"60.0"
],
"filament_density": [
"1.38"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX FLEX Hardened Steel @ 0.25mm",
"inherits": "fdm_filament_flex",
"from": "system",
"setting_id": "7z6rkaF5DBbiccZP",
"filament_id": "OFSOY4F3",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.25mm nozzle",
"FELIX Pro L 3.0 0.25mm nozzle",
"FELIX Pro XL 3.0 0.25mm nozzle",
"FELIX Tec 4 0.25mm nozzle"
],
"nozzle_temperature": [
"225.0"
],
"nozzle_temperature_initial_layer": [
"225.0"
],
"hot_plate_temp": [
"40.0"
],
"hot_plate_temp_initial_layer": [
"40.0"
],
"cool_plate_temp": [
"40.0"
],
"cool_plate_temp_initial_layer": [
"40.0"
],
"eng_plate_temp": [
"40.0"
],
"eng_plate_temp_initial_layer": [
"40.0"
],
"textured_plate_temp": [
"40.0"
],
"textured_plate_temp_initial_layer": [
"40.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"2.2"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"60.0"
],
"fan_max_speed": [
"60.0"
],
"filament_density": [
"1.38"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX FLEX Hardened Steel @ 0.35mm",
"inherits": "fdm_filament_flex",
"from": "system",
"setting_id": "DJRiMo6Aq0BvhFC9",
"filament_id": "OFSOY4F3",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.35mm nozzle",
"FELIX Pro L 3.0 0.35mm nozzle",
"FELIX Pro XL 3.0 0.35mm nozzle",
"FELIX Tec 4 0.35mm nozzle"
],
"nozzle_temperature": [
"225.0"
],
"nozzle_temperature_initial_layer": [
"225.0"
],
"hot_plate_temp": [
"40.0"
],
"hot_plate_temp_initial_layer": [
"40.0"
],
"cool_plate_temp": [
"40.0"
],
"cool_plate_temp_initial_layer": [
"40.0"
],
"eng_plate_temp": [
"40.0"
],
"eng_plate_temp_initial_layer": [
"40.0"
],
"textured_plate_temp": [
"40.0"
],
"textured_plate_temp_initial_layer": [
"40.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"2.2"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"60.0"
],
"fan_max_speed": [
"60.0"
],
"filament_density": [
"1.38"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX FLEX Hardened Steel @ 0.50mm",
"inherits": "fdm_filament_flex",
"from": "system",
"setting_id": "xgFrl1QpyQFFqBYz",
"filament_id": "OFSOY4F3",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.50mm nozzle",
"FELIX Pro L 3.0 0.50mm nozzle",
"FELIX Pro XL 3.0 0.50mm nozzle",
"FELIX Tec 4 0.50mm nozzle"
],
"nozzle_temperature": [
"225.0"
],
"nozzle_temperature_initial_layer": [
"225.0"
],
"hot_plate_temp": [
"40.0"
],
"hot_plate_temp_initial_layer": [
"40.0"
],
"cool_plate_temp": [
"40.0"
],
"cool_plate_temp_initial_layer": [
"40.0"
],
"eng_plate_temp": [
"40.0"
],
"eng_plate_temp_initial_layer": [
"40.0"
],
"textured_plate_temp": [
"40.0"
],
"textured_plate_temp_initial_layer": [
"40.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"2.2"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"60.0"
],
"fan_max_speed": [
"60.0"
],
"filament_density": [
"1.38"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX FLEX Hardened Steel @ 0.70mm",
"inherits": "fdm_filament_flex",
"from": "system",
"setting_id": "eZf8u1vzaQbsjyqO",
"filament_id": "OFSOY4F3",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.70mm nozzle",
"FELIX Pro L 3.0 0.70mm nozzle",
"FELIX Pro XL 3.0 0.70mm nozzle",
"FELIX Tec 4 0.70mm nozzle"
],
"nozzle_temperature": [
"225.0"
],
"nozzle_temperature_initial_layer": [
"225.0"
],
"hot_plate_temp": [
"40.0"
],
"hot_plate_temp_initial_layer": [
"40.0"
],
"cool_plate_temp": [
"40.0"
],
"cool_plate_temp_initial_layer": [
"40.0"
],
"eng_plate_temp": [
"40.0"
],
"eng_plate_temp_initial_layer": [
"40.0"
],
"textured_plate_temp": [
"40.0"
],
"textured_plate_temp_initial_layer": [
"40.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"2.2"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"60.0"
],
"fan_max_speed": [
"60.0"
],
"filament_density": [
"1.38"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX PETG Brass @ 0.35mm",
"inherits": "fdm_filament_pet",
"from": "system",
"setting_id": "KZzk6aIxMvt1JlOR",
"filament_id": "OF17qLwN",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.35mm nozzle",
"FELIX Pro L 3.0 0.35mm nozzle",
"FELIX Pro XL 3.0 0.35mm nozzle",
"FELIX Tec 4 0.35mm nozzle"
],
"nozzle_temperature": [
"220.0"
],
"nozzle_temperature_initial_layer": [
"220.0"
],
"hot_plate_temp": [
"75.0"
],
"hot_plate_temp_initial_layer": [
"75.0"
],
"cool_plate_temp": [
"75.0"
],
"cool_plate_temp_initial_layer": [
"75.0"
],
"eng_plate_temp": [
"75.0"
],
"eng_plate_temp_initial_layer": [
"75.0"
],
"textured_plate_temp": [
"75.0"
],
"textured_plate_temp_initial_layer": [
"75.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"1.2"
],
"filament_retract_speed": [
"60.0"
],
"filament_retraction_speed": [
"60.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"60.0"
],
"fan_max_speed": [
"60.0"
],
"filament_density": [
"1.27"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX PETG Brass @ 0.50mm",
"inherits": "fdm_filament_pet",
"from": "system",
"setting_id": "RWPOGeCx1EEYeV8R",
"filament_id": "OF17qLwN",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.50mm nozzle",
"FELIX Pro L 3.0 0.50mm nozzle",
"FELIX Pro XL 3.0 0.50mm nozzle",
"FELIX Tec 4 0.50mm nozzle"
],
"nozzle_temperature": [
"220.0"
],
"nozzle_temperature_initial_layer": [
"220.0"
],
"hot_plate_temp": [
"75.0"
],
"hot_plate_temp_initial_layer": [
"75.0"
],
"cool_plate_temp": [
"75.0"
],
"cool_plate_temp_initial_layer": [
"75.0"
],
"eng_plate_temp": [
"75.0"
],
"eng_plate_temp_initial_layer": [
"75.0"
],
"textured_plate_temp": [
"75.0"
],
"textured_plate_temp_initial_layer": [
"75.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"1.2"
],
"filament_retract_speed": [
"60.0"
],
"filament_retraction_speed": [
"60.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"60.0"
],
"fan_max_speed": [
"60.0"
],
"filament_density": [
"1.27"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX PETG Hardened Steel @ 0.25mm",
"inherits": "fdm_filament_pet",
"from": "system",
"setting_id": "5RK6gGxFKyADXi4x",
"filament_id": "OFQo5ZHk",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.25mm nozzle",
"FELIX Pro L 3.0 0.25mm nozzle",
"FELIX Pro XL 3.0 0.25mm nozzle",
"FELIX Tec 4 0.25mm nozzle"
],
"nozzle_temperature": [
"235.0"
],
"nozzle_temperature_initial_layer": [
"235.0"
],
"hot_plate_temp": [
"75.0"
],
"hot_plate_temp_initial_layer": [
"75.0"
],
"cool_plate_temp": [
"75.0"
],
"cool_plate_temp_initial_layer": [
"75.0"
],
"eng_plate_temp": [
"75.0"
],
"eng_plate_temp_initial_layer": [
"75.0"
],
"textured_plate_temp": [
"75.0"
],
"textured_plate_temp_initial_layer": [
"75.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"1.2"
],
"filament_retract_speed": [
"60.0"
],
"filament_retraction_speed": [
"60.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"60.0"
],
"fan_max_speed": [
"60.0"
],
"filament_density": [
"1.27"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX PETG Hardened Steel @ 0.35mm",
"inherits": "fdm_filament_pet",
"from": "system",
"setting_id": "rz08j2cn8mlnvAxh",
"filament_id": "OFQo5ZHk",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.35mm nozzle",
"FELIX Pro L 3.0 0.35mm nozzle",
"FELIX Pro XL 3.0 0.35mm nozzle",
"FELIX Tec 4 0.35mm nozzle"
],
"nozzle_temperature": [
"235.0"
],
"nozzle_temperature_initial_layer": [
"235.0"
],
"hot_plate_temp": [
"75.0"
],
"hot_plate_temp_initial_layer": [
"75.0"
],
"cool_plate_temp": [
"75.0"
],
"cool_plate_temp_initial_layer": [
"75.0"
],
"eng_plate_temp": [
"75.0"
],
"eng_plate_temp_initial_layer": [
"75.0"
],
"textured_plate_temp": [
"75.0"
],
"textured_plate_temp_initial_layer": [
"75.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"1.2"
],
"filament_retract_speed": [
"60.0"
],
"filament_retraction_speed": [
"60.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"60.0"
],
"fan_max_speed": [
"60.0"
],
"filament_density": [
"1.27"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX PETG Hardened Steel @ 0.50mm",
"inherits": "fdm_filament_pet",
"from": "system",
"setting_id": "1xOwhrqAqJVO48d0",
"filament_id": "OFQo5ZHk",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.50mm nozzle",
"FELIX Pro L 3.0 0.50mm nozzle",
"FELIX Pro XL 3.0 0.50mm nozzle",
"FELIX Tec 4 0.50mm nozzle"
],
"nozzle_temperature": [
"235.0"
],
"nozzle_temperature_initial_layer": [
"235.0"
],
"hot_plate_temp": [
"75.0"
],
"hot_plate_temp_initial_layer": [
"75.0"
],
"cool_plate_temp": [
"75.0"
],
"cool_plate_temp_initial_layer": [
"75.0"
],
"eng_plate_temp": [
"75.0"
],
"eng_plate_temp_initial_layer": [
"75.0"
],
"textured_plate_temp": [
"75.0"
],
"textured_plate_temp_initial_layer": [
"75.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"1.2"
],
"filament_retract_speed": [
"60.0"
],
"filament_retraction_speed": [
"60.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"60.0"
],
"fan_max_speed": [
"60.0"
],
"filament_density": [
"1.27"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX PETG Hardened Steel @ 0.70mm",
"inherits": "fdm_filament_pet",
"from": "system",
"setting_id": "I2QXz0yDQN6ULNeF",
"filament_id": "OFQo5ZHk",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.70mm nozzle",
"FELIX Pro L 3.0 0.70mm nozzle",
"FELIX Pro XL 3.0 0.70mm nozzle",
"FELIX Tec 4 0.70mm nozzle"
],
"nozzle_temperature": [
"235.0"
],
"nozzle_temperature_initial_layer": [
"235.0"
],
"hot_plate_temp": [
"75.0"
],
"hot_plate_temp_initial_layer": [
"75.0"
],
"cool_plate_temp": [
"75.0"
],
"cool_plate_temp_initial_layer": [
"75.0"
],
"eng_plate_temp": [
"75.0"
],
"eng_plate_temp_initial_layer": [
"75.0"
],
"textured_plate_temp": [
"75.0"
],
"textured_plate_temp_initial_layer": [
"75.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"1.2"
],
"filament_retract_speed": [
"60.0"
],
"filament_retraction_speed": [
"60.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"60.0"
],
"fan_max_speed": [
"60.0"
],
"filament_density": [
"1.27"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX Premium PLA Brass @ 0.35mm",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "6Ax3SY7RI04PcFFJ",
"filament_id": "OF8sLgrm",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.35mm nozzle",
"FELIX Pro L 3.0 0.35mm nozzle",
"FELIX Pro XL 3.0 0.35mm nozzle",
"FELIX Tec 4 0.35mm nozzle"
],
"nozzle_temperature": [
"190.0"
],
"nozzle_temperature_initial_layer": [
"190.0"
],
"hot_plate_temp": [
"55.0"
],
"hot_plate_temp_initial_layer": [
"55.0"
],
"cool_plate_temp": [
"55.0"
],
"cool_plate_temp_initial_layer": [
"55.0"
],
"eng_plate_temp": [
"55.0"
],
"eng_plate_temp_initial_layer": [
"55.0"
],
"textured_plate_temp": [
"55.0"
],
"textured_plate_temp_initial_layer": [
"55.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"1.4"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"100.0"
],
"fan_max_speed": [
"100.0"
],
"filament_density": [
"1.22"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX Premium PLA Brass @ 0.50mm",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "TzRWTEZl14IWlhrc",
"filament_id": "OF8sLgrm",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.50mm nozzle",
"FELIX Pro L 3.0 0.50mm nozzle",
"FELIX Pro XL 3.0 0.50mm nozzle",
"FELIX Tec 4 0.50mm nozzle"
],
"nozzle_temperature": [
"190.0"
],
"nozzle_temperature_initial_layer": [
"190.0"
],
"hot_plate_temp": [
"55.0"
],
"hot_plate_temp_initial_layer": [
"55.0"
],
"cool_plate_temp": [
"55.0"
],
"cool_plate_temp_initial_layer": [
"55.0"
],
"eng_plate_temp": [
"55.0"
],
"eng_plate_temp_initial_layer": [
"55.0"
],
"textured_plate_temp": [
"55.0"
],
"textured_plate_temp_initial_layer": [
"55.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"1.4"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"100.0"
],
"fan_max_speed": [
"100.0"
],
"filament_density": [
"1.22"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX Premium PLA Hardened Steel @ 0.25mm",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "RtjX1Noxcsnv5cHv",
"filament_id": "OFi00jWL",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.25mm nozzle",
"FELIX Pro L 3.0 0.25mm nozzle",
"FELIX Pro XL 3.0 0.25mm nozzle",
"FELIX Tec 4 0.25mm nozzle"
],
"nozzle_temperature": [
"205.0"
],
"nozzle_temperature_initial_layer": [
"205.0"
],
"hot_plate_temp": [
"55.0"
],
"hot_plate_temp_initial_layer": [
"55.0"
],
"cool_plate_temp": [
"55.0"
],
"cool_plate_temp_initial_layer": [
"55.0"
],
"eng_plate_temp": [
"55.0"
],
"eng_plate_temp_initial_layer": [
"55.0"
],
"textured_plate_temp": [
"55.0"
],
"textured_plate_temp_initial_layer": [
"55.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"1.4"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"100.0"
],
"fan_max_speed": [
"100.0"
],
"filament_density": [
"1.22"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX Premium PLA Hardened Steel @ 0.35mm",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "aQI8mIoLrX3liAlM",
"filament_id": "OFi00jWL",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.35mm nozzle",
"FELIX Pro L 3.0 0.35mm nozzle",
"FELIX Pro XL 3.0 0.35mm nozzle",
"FELIX Tec 4 0.35mm nozzle"
],
"nozzle_temperature": [
"205.0"
],
"nozzle_temperature_initial_layer": [
"205.0"
],
"hot_plate_temp": [
"55.0"
],
"hot_plate_temp_initial_layer": [
"55.0"
],
"cool_plate_temp": [
"55.0"
],
"cool_plate_temp_initial_layer": [
"55.0"
],
"eng_plate_temp": [
"55.0"
],
"eng_plate_temp_initial_layer": [
"55.0"
],
"textured_plate_temp": [
"55.0"
],
"textured_plate_temp_initial_layer": [
"55.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"1.4"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"100.0"
],
"fan_max_speed": [
"100.0"
],
"filament_density": [
"1.22"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX Premium PLA Hardened Steel @ 0.50mm",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "pdnfmqbhfYXV8MAj",
"filament_id": "OFi00jWL",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.50mm nozzle",
"FELIX Pro L 3.0 0.50mm nozzle",
"FELIX Pro XL 3.0 0.50mm nozzle",
"FELIX Tec 4 0.50mm nozzle"
],
"nozzle_temperature": [
"205.0"
],
"nozzle_temperature_initial_layer": [
"205.0"
],
"hot_plate_temp": [
"55.0"
],
"hot_plate_temp_initial_layer": [
"55.0"
],
"cool_plate_temp": [
"55.0"
],
"cool_plate_temp_initial_layer": [
"55.0"
],
"eng_plate_temp": [
"55.0"
],
"eng_plate_temp_initial_layer": [
"55.0"
],
"textured_plate_temp": [
"55.0"
],
"textured_plate_temp_initial_layer": [
"55.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"1.4"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"100.0"
],
"fan_max_speed": [
"100.0"
],
"filament_density": [
"1.22"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX Premium PLA Hardened Steel @ 0.70mm",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "BDxehnk3kKVRlysR",
"filament_id": "OFi00jWL",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.70mm nozzle",
"FELIX Pro L 3.0 0.70mm nozzle",
"FELIX Pro XL 3.0 0.70mm nozzle",
"FELIX Tec 4 0.70mm nozzle"
],
"nozzle_temperature": [
"205.0"
],
"nozzle_temperature_initial_layer": [
"205.0"
],
"hot_plate_temp": [
"55.0"
],
"hot_plate_temp_initial_layer": [
"55.0"
],
"cool_plate_temp": [
"55.0"
],
"cool_plate_temp_initial_layer": [
"55.0"
],
"eng_plate_temp": [
"55.0"
],
"eng_plate_temp_initial_layer": [
"55.0"
],
"textured_plate_temp": [
"55.0"
],
"textured_plate_temp_initial_layer": [
"55.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"1.4"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.05"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"100.0"
],
"fan_max_speed": [
"100.0"
],
"filament_density": [
"1.22"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX Wood Brass @ 0.35mm",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "nRikN9oc1mOeA6dO",
"filament_id": "OF7CzDzq",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.35mm nozzle",
"FELIX Pro L 3.0 0.35mm nozzle",
"FELIX Pro XL 3.0 0.35mm nozzle",
"FELIX Tec 4 0.35mm nozzle"
],
"nozzle_temperature": [
"185.0"
],
"nozzle_temperature_initial_layer": [
"185.0"
],
"hot_plate_temp": [
"55.0"
],
"hot_plate_temp_initial_layer": [
"55.0"
],
"cool_plate_temp": [
"55.0"
],
"cool_plate_temp_initial_layer": [
"55.0"
],
"eng_plate_temp": [
"55.0"
],
"eng_plate_temp_initial_layer": [
"55.0"
],
"textured_plate_temp": [
"55.0"
],
"textured_plate_temp_initial_layer": [
"55.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"2.5"
],
"filament_retract_speed": [
"60.0"
],
"filament_retraction_speed": [
"60.0"
],
"filament_retract_restart_extra": [
"0.15"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"100.0"
],
"fan_max_speed": [
"100.0"
],
"filament_density": [
"1.24"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX Wood Brass @ 0.50mm",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "SF4eGuHqUCtfEAGy",
"filament_id": "OFKwdz3w",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.50mm nozzle",
"FELIX Pro L 3.0 0.50mm nozzle",
"FELIX Pro XL 3.0 0.50mm nozzle",
"FELIX Tec 4 0.50mm nozzle"
],
"nozzle_temperature": [
"185.0"
],
"nozzle_temperature_initial_layer": [
"185.0"
],
"hot_plate_temp": [
"55.0"
],
"hot_plate_temp_initial_layer": [
"55.0"
],
"cool_plate_temp": [
"55.0"
],
"cool_plate_temp_initial_layer": [
"55.0"
],
"eng_plate_temp": [
"55.0"
],
"eng_plate_temp_initial_layer": [
"55.0"
],
"textured_plate_temp": [
"55.0"
],
"textured_plate_temp_initial_layer": [
"55.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"2.5"
],
"filament_retract_speed": [
"60.0"
],
"filament_retraction_speed": [
"60.0"
],
"filament_retract_restart_extra": [
"0.15"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"100.0"
],
"fan_max_speed": [
"100.0"
],
"filament_density": [
"1.24"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX Wood Hardened Steel @ 0.25mm",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "AkZV2IjFVNLytIaY",
"filament_id": "OFsMMDMp",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.25mm nozzle",
"FELIX Pro L 3.0 0.25mm nozzle",
"FELIX Pro XL 3.0 0.25mm nozzle",
"FELIX Tec 4 0.25mm nozzle"
],
"nozzle_temperature": [
"200.0"
],
"nozzle_temperature_initial_layer": [
"200.0"
],
"hot_plate_temp": [
"55.0"
],
"hot_plate_temp_initial_layer": [
"55.0"
],
"cool_plate_temp": [
"55.0"
],
"cool_plate_temp_initial_layer": [
"55.0"
],
"eng_plate_temp": [
"55.0"
],
"eng_plate_temp_initial_layer": [
"55.0"
],
"textured_plate_temp": [
"55.0"
],
"textured_plate_temp_initial_layer": [
"55.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"2.5"
],
"filament_retract_speed": [
"60.0"
],
"filament_retraction_speed": [
"60.0"
],
"filament_retract_restart_extra": [
"0.15"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"100.0"
],
"fan_max_speed": [
"100.0"
],
"filament_density": [
"1.24"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX Wood Hardened Steel @ 0.35mm",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "MEGMFP2nv59vZSpf",
"filament_id": "OFsMMDMp",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.35mm nozzle",
"FELIX Pro L 3.0 0.35mm nozzle",
"FELIX Pro XL 3.0 0.35mm nozzle",
"FELIX Tec 4 0.35mm nozzle"
],
"nozzle_temperature": [
"200.0"
],
"nozzle_temperature_initial_layer": [
"200.0"
],
"hot_plate_temp": [
"55.0"
],
"hot_plate_temp_initial_layer": [
"55.0"
],
"cool_plate_temp": [
"55.0"
],
"cool_plate_temp_initial_layer": [
"55.0"
],
"eng_plate_temp": [
"55.0"
],
"eng_plate_temp_initial_layer": [
"55.0"
],
"textured_plate_temp": [
"55.0"
],
"textured_plate_temp_initial_layer": [
"55.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"2.5"
],
"filament_retract_speed": [
"60.0"
],
"filament_retraction_speed": [
"60.0"
],
"filament_retract_restart_extra": [
"0.15"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"100.0"
],
"fan_max_speed": [
"100.0"
],
"filament_density": [
"1.24"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX Wood Hardened Steel @ 0.50mm",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "ObSufa3ZQ8tUmJUB",
"filament_id": "OFsMMDMp",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.50mm nozzle",
"FELIX Pro L 3.0 0.50mm nozzle",
"FELIX Pro XL 3.0 0.50mm nozzle",
"FELIX Tec 4 0.50mm nozzle"
],
"nozzle_temperature": [
"200.0"
],
"nozzle_temperature_initial_layer": [
"200.0"
],
"hot_plate_temp": [
"55.0"
],
"hot_plate_temp_initial_layer": [
"55.0"
],
"cool_plate_temp": [
"55.0"
],
"cool_plate_temp_initial_layer": [
"55.0"
],
"eng_plate_temp": [
"55.0"
],
"eng_plate_temp_initial_layer": [
"55.0"
],
"textured_plate_temp": [
"55.0"
],
"textured_plate_temp_initial_layer": [
"55.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"2.5"
],
"filament_retract_speed": [
"60.0"
],
"filament_retraction_speed": [
"60.0"
],
"filament_retract_restart_extra": [
"0.15"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"100.0"
],
"fan_max_speed": [
"100.0"
],
"filament_density": [
"1.24"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FELIX Wood Hardened Steel @ 0.70mm",
"inherits": "fdm_filament_pla",
"from": "system",
"setting_id": "LCRYcNn6HN4lviM2",
"filament_id": "OFsMMDMp",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.70mm nozzle",
"FELIX Pro L 3.0 0.70mm nozzle",
"FELIX Pro XL 3.0 0.70mm nozzle",
"FELIX Tec 4 0.70mm nozzle"
],
"nozzle_temperature": [
"200.0"
],
"nozzle_temperature_initial_layer": [
"200.0"
],
"hot_plate_temp": [
"55.0"
],
"hot_plate_temp_initial_layer": [
"55.0"
],
"cool_plate_temp": [
"55.0"
],
"cool_plate_temp_initial_layer": [
"55.0"
],
"eng_plate_temp": [
"55.0"
],
"eng_plate_temp_initial_layer": [
"55.0"
],
"textured_plate_temp": [
"55.0"
],
"textured_plate_temp_initial_layer": [
"55.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"120"
],
"filament_retract_length": [
"2.5"
],
"filament_retract_speed": [
"60.0"
],
"filament_retraction_speed": [
"60.0"
],
"filament_retract_restart_extra": [
"0.15"
],
"filament_flow_ratio": [
"1.0"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"100.0"
],
"fan_max_speed": [
"100.0"
],
"filament_density": [
"1.24"
],
"filament_vendor": [
"FELIX Printers"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FORMFUTURA AppoloX ASA Brass @ 0.35mm",
"inherits": "fdm_filament_asa",
"from": "system",
"setting_id": "gRmosSxV2WFOgLAa",
"filament_id": "OFEUX7D3",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.35mm nozzle",
"FELIX Pro L 3.0 0.35mm nozzle",
"FELIX Pro XL 3.0 0.35mm nozzle",
"FELIX Tec 4 0.35mm nozzle"
],
"nozzle_temperature": [
"235.0"
],
"nozzle_temperature_initial_layer": [
"235.0"
],
"hot_plate_temp": [
"90.0"
],
"hot_plate_temp_initial_layer": [
"90.0"
],
"cool_plate_temp": [
"90.0"
],
"cool_plate_temp_initial_layer": [
"90.0"
],
"eng_plate_temp": [
"90.0"
],
"eng_plate_temp_initial_layer": [
"90.0"
],
"textured_plate_temp": [
"90.0"
],
"textured_plate_temp_initial_layer": [
"90.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"140"
],
"filament_retract_length": [
"1.4"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_flow_ratio": [
"0.96"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"40.0"
],
"fan_max_speed": [
"40.0"
],
"filament_density": [
"1.07"
],
"filament_vendor": [
"FORMFUTURA"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FORMFUTURA AppoloX ASA Brass @ 0.50mm",
"inherits": "fdm_filament_asa",
"from": "system",
"setting_id": "iXdebkq6x0RsCLSh",
"filament_id": "OFEUX7D3",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.50mm nozzle",
"FELIX Pro L 3.0 0.50mm nozzle",
"FELIX Pro XL 3.0 0.50mm nozzle",
"FELIX Tec 4 0.50mm nozzle"
],
"nozzle_temperature": [
"235.0"
],
"nozzle_temperature_initial_layer": [
"235.0"
],
"hot_plate_temp": [
"90.0"
],
"hot_plate_temp_initial_layer": [
"90.0"
],
"cool_plate_temp": [
"90.0"
],
"cool_plate_temp_initial_layer": [
"90.0"
],
"eng_plate_temp": [
"90.0"
],
"eng_plate_temp_initial_layer": [
"90.0"
],
"textured_plate_temp": [
"90.0"
],
"textured_plate_temp_initial_layer": [
"90.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"140"
],
"filament_retract_length": [
"1.4"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_flow_ratio": [
"0.96"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"40.0"
],
"fan_max_speed": [
"40.0"
],
"filament_density": [
"1.07"
],
"filament_vendor": [
"FORMFUTURA"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FORMFUTURA AppoloX ASA Hardened Steel @ 0.25mm",
"inherits": "fdm_filament_asa",
"from": "system",
"setting_id": "vDwvCcVTrlXsApST",
"filament_id": "OFguQdOr",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.25mm nozzle",
"FELIX Pro L 3.0 0.25mm nozzle",
"FELIX Pro XL 3.0 0.25mm nozzle",
"FELIX Tec 4 0.25mm nozzle"
],
"nozzle_temperature": [
"245.0"
],
"nozzle_temperature_initial_layer": [
"245.0"
],
"hot_plate_temp": [
"90.0"
],
"hot_plate_temp_initial_layer": [
"90.0"
],
"cool_plate_temp": [
"90.0"
],
"cool_plate_temp_initial_layer": [
"90.0"
],
"eng_plate_temp": [
"90.0"
],
"eng_plate_temp_initial_layer": [
"90.0"
],
"textured_plate_temp": [
"90.0"
],
"textured_plate_temp_initial_layer": [
"90.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"140"
],
"filament_retract_length": [
"1.4"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_flow_ratio": [
"0.96"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"40.0"
],
"fan_max_speed": [
"40.0"
],
"filament_density": [
"1.07"
],
"filament_vendor": [
"FORMFUTURA"
]
}
@@ -0,0 +1,81 @@
{
"type": "filament",
"name": "FORMFUTURA AppoloX ASA Hardened Steel @ 0.35mm",
"inherits": "fdm_filament_asa",
"from": "system",
"setting_id": "WdP7DnbgAI8O4JOR",
"filament_id": "OFguQdOr",
"instantiation": "true",
"compatible_printers": [
"FELIX Pro 3 0.35mm nozzle",
"FELIX Pro L 3.0 0.35mm nozzle",
"FELIX Pro XL 3.0 0.35mm nozzle",
"FELIX Tec 4 0.35mm nozzle"
],
"nozzle_temperature": [
"245.0"
],
"nozzle_temperature_initial_layer": [
"245.0"
],
"hot_plate_temp": [
"90.0"
],
"hot_plate_temp_initial_layer": [
"90.0"
],
"cool_plate_temp": [
"90.0"
],
"cool_plate_temp_initial_layer": [
"90.0"
],
"eng_plate_temp": [
"90.0"
],
"eng_plate_temp_initial_layer": [
"90.0"
],
"textured_plate_temp": [
"90.0"
],
"textured_plate_temp_initial_layer": [
"90.0"
],
"chamber_temperature": [
"28.0"
],
"idle_temperature": [
"140"
],
"filament_retract_length": [
"1.4"
],
"filament_retract_speed": [
"50.0"
],
"filament_retraction_speed": [
"50.0"
],
"filament_retract_restart_extra": [
"0.0"
],
"filament_flow_ratio": [
"0.96"
],
"filament_max_volumetric_speed": [
"12.0"
],
"fan_min_speed": [
"40.0"
],
"fan_max_speed": [
"40.0"
],
"filament_density": [
"1.07"
],
"filament_vendor": [
"FORMFUTURA"
]
}

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