3d Print Model Splitting

Use when splitting a single complex STL / figurine / statue model into multiple 3D-printable and physically assemblable parts, especially with Blender face/material annotation, Bambu Studio, MeshFix, manifold Boolean, interface clearance/allowance, 3MF object validation, or assembly interference checks. Trigger for requests about STL hand-model splitting, Bambu-ready 3MF delivery, print-fit failures, or fixing part interfaces that print but do not assemble.

Audits

Pass

Install

openclaw skills install 3d-print-model-splitting

3D Print Model Splitting

This skill turns a single complex sculpted STL into multiple Bambu-ready, physically assemblable parts.

Core rule

Do not confuse printable with assemblable.

Also do not confuse a material-selection preview with a split part.

  • MeshFix/slicers can make parts watertight and printable.
  • They do not guarantee that interfaces have clearance.
  • The validated workflow succeeds because it treats part interfaces as the core problem.
  • A face-selection preview is only a semantic preview. It is not a valid part preview until every split part has its open contact boundary capped/filled.

Mandatory preview gates

For interactive demos or human-guided annotation, proactively generate previews; do not wait for the user to ask.

  • After preparing the annotation .blend: render a quick source/annotation preview so the user can confirm scale, orientation, and material slots.
  • After the user saves material-face annotation: render an annotation preview/contact sheet with clear part colors and face counts.
  • Before claiming “拆件完成” / “split complete”: generate a capped split preview, not just a face-selection preview.
  • In previews, label colors explicitly. If possible, show cap/interface faces in a distinct color.
  • If any part is still open at the cut/contact surface, say so clearly and call it “annotation preview only”, not “split preview”.

Split-surface capping hard rules

Every part created by material splitting must have its cut/contact surfaces filled before baseline export.

  • Deleting the other material groups leaves shell openings at the interface. This is expected but not acceptable as a split baseline.
  • Cap/fill all boundary loops introduced by the split before exporting baseline STLs.
  • Validate capping with boundary-edge counts per part. Target: boundary_edges = 0 for each baseline part, unless a known intentional opening is documented.
  • If automatic hole filling leaves residual boundaries, retry with a more robust method or explicitly report the residual count; do not present it as final.
  • Lock the first accepted baseline only after it is “split + capped”; never lock a raw material-isolated shell as baseline.

Scope boundaries

Good fit:

  • figurines, statues, toys, decorative sculpts, and similar triangle-mesh STL files;
  • human-guided semantic part boundaries;
  • glue-fit or lightly finished assemblies;
  • Bambu-ready 3MF/STL handoffs.

Poor fit unless explicitly requested:

  • fully automatic semantic recognition;
  • precision mechanical snap-fits;
  • automatic locator pins/magnets without human-confirmed anchors;
  • CAD-grade tolerance guarantees.

Dependencies

Common tools/libraries:

  • Blender for STL import, face/material annotation, rendering, and optional interference checks;
  • Python packages as needed by scripts: trimesh, numpy, manifold3d, pymeshfix, Pillow;
  • Bambu Studio or another slicer for final slicing/print review;
  • project-local folders for generated STL/3MF/Blend/PNG outputs.

Do not write generated model outputs into the skill directory.

Progressive references

Read only what the task needs:

  • references/sop.md — generic workflow from STL to assemblable 3MF.
  • references/clearance-lessons.md — Boolean/MeshFix/clearance failure modes.
  • references/blender-material-annotation.md — human Blender annotation instructions.
  • references/versioning.md — project versioning and status conventions.
  • references/case-study-v13.md — optional validated example for a 5-part figurine.

Standard workflow

  1. Prepare annotation file

    • Create a Blender .blend from the input STL.
    • Add material slots for intended parts.
    • Use a project-local output folder.
  2. Human material-face annotation

    • Human selects triangle faces in Blender Edit Mode.
    • Assign each face to a material slot.
    • Material assignment is geometry metadata (polygon.material_index), not texture paint.
  3. Split by material and lock a baseline

    • Use material indices to export parts.
    • Clean tiny islands, cap open boundaries, export STL, render preview.
    • Lock a baseline that is only “split + capped”, with no clearance/pins/experimental Boolean.
    • Never overwrite the baseline.
  4. Repair only before clearance

    • Use MeshFix when needed to make baseline parts watertight before clearance.
    • Treat MeshFix as a printability repair, not an assembly solution.
  5. Normalize winding before Boolean

    • Ensure each STL has outward / positive-volume winding.
    • If volume is negative, invert before expanding cutters.
    • Wrong winding can reverse the clearance direction.
  6. Apply interface clearance

    • Decide the real remaining assembly interfaces.
    • Define a responsibility table: which part subtracts which expanded neighbor.
    • Use robust manifold Boolean difference for interface allowance.
    • Choose clearance based on printer, scale, material, and finishing expectations.
  7. Do not MeshFix after clearance

    • After clearance, use only tiny manifold simplify/sliver cleanup.
    • Strong MeshFix can fill intentional clearance cavities and recreate interference.
  8. Validate the deliverable, not only source STL

    • Export the final 3MF/STL set.
    • Re-read 3MF objects and validate watertight/non-manifold properties.
    • Run pairwise interference checks on adjacent parts.
  9. Slicer and physical test

    • Use Bambu Studio or another slicer for import/slicing/support/print preview.
    • Do not treat “no overlap warning” as assembly proof.
    • Physical assembly test is the final gate.

Interface-clearance hard rules

  • Start from an un-clearanced baseline when changing the part plan.
  • Do not directly merge parts that already had clearance cut between them; this leaves internal cavities/seams.
  • Keep clearance work localized to real assembly interfaces.
  • If assembly is tight, create a new version and increase clearance locally; do not repair a failed branch blindly.

Deliverables checklist

For a final handoff, include:

  • final Bambu 3MF or slicer-ready project;
  • final STL parts;
  • preview/contact sheet;
  • version note;
  • validation summary;
  • 3MF object validation report;
  • pairwise interference report;
  • notes on failed/disallowed routes.

Script organization

Scripts in scripts/ are reusable helpers with parameterized paths and part definitions. Keep new scripts project-agnostic: no user-specific absolute paths, no private names, and no hardcoded part schema unless the script clearly accepts a config/CLI override.