Een 3MF-pakket kan een expliciete maateenheid, meerdere objecten en extra eigenschappen zoals kleur of materiaalindeling bevatten. Een STL bewaart in hoofdzaak een oppervlak van driehoeken. Wanneer je een 3MF naar STL omzet, kan de vorm gelijk blijven terwijl de eenheidsverklaring en andere projectinformatie wegvallen. Controleer daarom na de conversie zelf het objectaantal, de buitenmaten en de bedoelde eenheid, en leg vast welke informatie niet is meegekomen.
Deze gids beschrijft een lokale, herhaalbare conversie en de controle erna. Hij is geen online converter, bewaart geen bestanden en bewijst geen fysieke print. Voor een menselijke beoordeling of een projectgebonden voorstel blijft de 3D-printservice de commerciële route.
Download het invulbare werkblad in CSV. Open het lokaal als UTF-8 met een komma als scheidingsteken en vervang de voorbeeldwaarden door je eigen gegevens.
1. Bewaar het bronbestand en noteer wat je verwacht
Maak een werkkopie van het 3MF met een nieuwe revisienaam, bijvoorbeeld onderdeel-v1.3mf. Het bronbestand blijft ongewijzigd, ook als een programma "in-place" wil opslaan. Noteer de bron, de maker, de bedoelde maateenheid en minstens één bedoelde buitenmaat. Zonder die referentie kun je na de conversie alleen zien dat er een STL bestaat, niet dat die nog klopt.
STL legt de bedoelde maateenheid niet vast. Als je 40 bij 20 bij 10 millimeter verwacht, schrijf dat apart op. De conversie mag die keuze niet stilzwijgend veranderen, en na afloop staat de eenheid nergens meer in het bestand.
Heb je het model nog niet op maat en objectaantal gecontroleerd? Doe dat eerst met de gids STL-bestand openen en controleren. Omzetten zonder bekende bronmaat maakt van een onzekerheid er twee.
2. Wat 3MF draagt en wat STL niet meeneemt
Een 3MF is een pakketformaat. De kern bevat driehoekige modelgeometrie en kan een expliciete eenheid noemen. Een 3MF kan meerdere objecten en build-informatie bevatten, en via uitbreidingen kleur- of materiaalgegevens. Dat zijn mogelijkheden van het formaat; ze kunnen in jouw bestand ontbreken of maar deels geschreven zijn.
De normale 3MF-kernmesh bestaat ook uit punten en driehoeken. Die mesh belooft op zichzelf geen oorspronkelijke CAD-schetsen, maatconstraints, features of ontwerpgeschiedenis. Een 3MF kan extra projectinformatie dragen, maar je moet in het werkelijke pakket controleren wat aanwezig is. De conversie naar STL kan alleen verliezen wat de bron werkelijk bevat; zij kan geen geschiedenis verwijderen die nooit in de 3MF zat.
Een gewone STL beschrijft alleen de buitenkant als driehoekige facetten. Er is geen gestandaardiseerde eenheid en geen gestandaardiseerde kleur- of materiaalstructuur. Een echte conversie herschrijft de geometrie als STL-driehoeken. Alleen de bestandsnaam of de extensie wijzigen naar stl zet niets om: dat levert een onleesbaar bestand op en voegt geen eenheden of kleuren toe en haalt ze ook niet betrouwbaar weg.
3. De gecontroleerde proef: twee 3MF-kernmeshes naar ASCII STL
Voor deze gids is één standaardvormig 3MF-pakket opgebouwd met de onderdelen 3D/3dmodel.model, het content-types-bestand en het relatiebestand. Het pakket bevat twee benoemde kernmesh-objecten en twee build-items. Meetblok A heeft 12 driehoeken en ligt op X 0 tot 40; meetblok B heeft eveneens 12 driehoeken en ligt op X 50 tot 60. De eenheid millimeter staat expliciet in de 3MF. De lokale conversiestap heeft beide meshes in één ASCII STL geschreven, waarna alle punten en verbonden shells opnieuw zijn ingelezen.
De uitkomst: twee objecten en twee build-items in de 3MF, 12 driehoeken per object, 24 driehoeken in de STL en twee losse shells na herlezing. Shell A bleef 40 bij 20 bij 10 millimeter en shell B 10 bij 10 bij 10; samen liggen de uitersten 60 bij 20 bij 10. De STL bevat geen eenheidsverklaring, 3MF-titel of objectnamen.
| Controlepunt | 3MF-invoer | ASCII STL-uitvoer | Wat je zelf bevestigt |
|---|---|---|---|
| Pakketopbouw | Modelbestand plus content-types en relaties | Eén tekstbestand met driehoeken | Of het juiste bestand is omgezet |
| Objecten | 2 objecten en 2 build-items | 2 losse shells | Tel per object en na herimport |
| Driehoeken | 12 per object | 24 totaal | Vergelijk per bronobject en totaal |
| Eenheid | Millimeter, expliciet vermeld | Geen eenheidsverklaring | Leg de bedoelde eenheid apart vast |
| Buitenmaten | A 40 x 20 x 10; B 10 x 10 x 10; totaal 60 x 20 x 10 | Zelfde twee shellmaten en totale uitersten | Meet elke shell en het geheel |
| Overige 3MF-gegevens | Titel en namen meetblok-A en meetblok-B | Niet aanwezig | Geef ze apart door |
Deze proef bewijst alleen deze conversie van twee kernmeshes zonder build-transformaties en de controle erna. Het script wijst een 3MF met een transform-attribuut bewust af in plaats van een plaatsing stil te laten vallen. Het test geen willekeurige 3MF-uitbreidingen, materialen, kleuren of texturen, en geen benoemde conversie-interface, slicer of fysieke print. De genoemde waarden zijn een redactionele bureau-oefening; vervang ze door je eigen projectmetingen.
4. Zet de conversie lokaal en controleerbaar op
De opgeslagen proef is zonder upload reproduceerbaar met Python 3 en alleen modules uit de standaardbibliotheek. Download het 3MF-invoerbestand, het STL-uitvoerbestand en het lokale conversie- en controlescript naar één lokale map. Voer daar python 30-create-convert-check-3mf-fixture.py uit. Het script bouwt dezelfde 3MF met vaste ZIP-tijdstempels opnieuw, leest de model-XML, schrijft 24 driehoeken als ASCII STL, telt twee verbonden shells, meet iedere shell en overschrijft het JSON-controlerapport.
Deze route ondersteunt alleen de twee opgeslagen objecten zonder transformatie en zonder optionele extensies. Zij is geen algemene converter voor willekeurige 3MF-pakketten. Voor een eigen bestand heb je software nodig die precies de gebruikte 3MF-onderdelen ondersteunt, waarna dezelfde voor-en-na-controle volgt.
Werk in vaste stappen zodat je elke keer hetzelfde resultaat kunt herhalen:
- Kopieer het 3MF-bronbestand naar een werkmap met een nieuwe revisienaam.
- Noteer vóór de conversie het objectaantal, de eenheid en de buitenmaten uit de bron.
- Kies een lokale conversiewijze die het bestand niet hoeft te uploaden als het model vertrouwelijk is en controleer welke 3MF-onderdelen die werkwijze werkelijk leest.
- Houd bij hoeveel objecten in het 3MF zaten en hoe die in de STL terechtkomen; STL houdt losse onderdelen vaak als aparte bestanden of losse shells.
- Bewaar de uitvoer als een nieuw bestand, bijvoorbeeld onderdeel-v1.stl. Overschrijf het 3MF niet.
- Sla de gebruikte werkwijze en versie op wanneer een interpretatieverschil tussen programma's mogelijk is.
5. Herimporteer de STL en controleer objecten, driehoeken en buitenmaten
Open precies de geëxporteerde STL, niet het nog geopende ontwerpvenster. Dat venster kan informatie tonen die nooit in het uitgewisselde bestand terechtkwam.
Loop deze volgorde af:
- Tel de objecten of losse shells na de herimport en vergelijk met de bron.
- Lees lengte, breedte en hoogte en vergelijk ze met de bedoelde eindmaat.
- Controleer of het aantal driehoeken plausibel gelijk is gebleven; bij de proef bleven het er 12 per bronobject en 24 totaal.
- Kijk of onderdelen onbedoeld zijn samengevoegd, weggevallen of verplaatst.
- Noteer elke afwijking met de waarde die je meet, niet alleen "afwijkend".
Bij de proef leverde de herimport twee losse shells, 24 driehoeken en totale uitersten van 60 bij 20 bij 10 millimeter op. Shell A bleef 40 bij 20 bij 10 en shell B 10 bij 10 bij 10. Eén shell of bijvoorbeeld 58 bij 20 bij 10 is geen geslaagde uitkomst: er is dan een object-, plaatsings-, schaal- of exportfout in geslopen.
6. Leg de eenheid en ontbrekende informatie apart vast
Omdat de STL geen eenheid draagt, schrijf je de bedoelde eenheid, meestal millimeter, in de overdrachtsnotitie en in je eigen controleblad. Een cel die je leeg laat, wordt te makkelijk verward met "niet van toepassing".
Noteer daarnaast wat de conversie heeft laten vallen: een kleur- of materiaaltoewijzing, build-posities van meerdere objecten, uitbreidingen en de oorspronkelijke CAD-features of ontwerpgeschiedenis. Behandel niet-ondersteunde of afwezige eigenschappen als ontbrekende overdracht. Als die informatie voor jouw onderdeel beslissend is, is een kale STL niet de juiste aanlevering.
7. Stopmomenten bij een verschil
Stop en stuur de STL niet door wanneer een van deze punten geldt:
- het objectaantal ná herimport verschilt van de bron;
- de buitenmaten of de bedoelde eindmaat komen niet overeen;
- de eenheid is onduidelijk of is niet apart vastgelegd;
- vereiste informatie zoals kleur, materiaalindeling of onderlinge positie zat alleen in het 3MF en is nu weg;
- de driehoeken of het silhouet zijn zichtbaar veranderd.
Vraag dan om een nieuwe export of om bevestiging van de brongegevens, of houd het 3MF als aanleverformaat. Een printbaar ogende mesh is nog geen veilig of maatvast onderdeel. Gebruik deze bureaucontrole niet als goedkeuring voor dragende, medische, elektrische of andere kritische toepassingen; daarvoor is een aparte beoordeling en meestal een proefprint nodig.
8. Leg de controle vast en geef de context door
Leg per rij de bronwaarde, je eigen gemeten waarde en het besluit vast. Laat een onbekende waarde herkenbaar onbekend. De onderstaande tabel is het minimale overdrachtsrecord; gebruik het downloadbare werkblad om de eigen waarden en het besluit vast te leggen.
| Uitkomst | Voorbeeld bij de proef | Volgende stap |
|---|---|---|
| Conversie aannemelijk | 2 shells, 24 driehoeken, beide shellmaten gelijk, eenheid apart genoteerd | Bestand plus werkblad meesturen voor beoordeling |
| Opnieuw omzetten | Driehoeken of maten verspringen door een instelling | Nieuwe werkkopie uit de bron; het 3MF blijft staan |
| 3MF behouden | Kleur, objecten of posities zijn nodig en vallen weg | STL niet gebruiken; het 3MF aanleveren |
Stuur bij een beoordeling de bestandsnaam en revisie mee, de bedoelde eenheid, de drie buitenmaten, het objectaantal, wat de conversie heeft laten vallen en wat nog onzeker is. Bij de 3D-printservice volgt eerst beoordeling en daarna een projectgebonden voorstel. Een omgezette STL is op zichzelf geen bestelling, geen prijs en geen garantie op maakbaarheid.
