Guide

Enheter: mm mot meter när du konverterar OBJ till STL

Uppdaterad · Bara mesh-OBJ till STL

STL har inga inbäddade enheter. Se varför modeller blir 1000× för stora eller små, kontrollera begränsningslådan och konvertera OBJ till STL med mm valt.

Stoppa ett skalfel på 1000× innan du skivar

Bestäm vad en enhet i OBJ betyder, skala till millimeter och bekräfta begränsningslådan innan du laddar ner en STL.

  1. Steg 1

    Namnge OBJ-enheten

    Bestäm om en koordinatenhet i OBJ är en millimeter, en centimeter, en meter eller en tum. Filen märker inte det åt dig.

  2. Steg 2

    Sätt den enheten i konverteraren

    Välj det alternativ som matchar. Millimeter är standard och multiplicerar med 1. Centimeter multiplicerar med 10, meter med 1000, tum med 25.4.

  3. Steg 3

    Läs begränsningslådan i millimeter

    Jämför storleken med en dimension du känner. En del på 40 mm ska inte läsas som 40 meter eller som 0.04 mm.

  4. Steg 4

    Ladda ner först när storleken ser rätt ut

    Spara den binära STL-filen och bekräfta samma millimeter i slicern. Stapla inte en extra skala på 1000% ovanpå.

STL är en lista med trianglar med koordinater och en ytsnormal. Den har inget enhetsfält. Talet 10 kan vara 10 millimeter eller 10 meter. Program fyller den tystnaden med en vana. FDM-slicers behandlar nästan alltid en enhet som en millimeter. Modelleringsprogram gör det ofta inte. Glappet mellan de vanorna är så en nyckelring blir en del i rumsstorlek, eller en rekvisita i rumsstorlek blir ett dammkorn på plattan.

Fallet 1000×

En meter är 1000 millimeter. Om en OBJ lagrar en figur på 0.08 meter som talet 0.08, och du lämnar konverteraren på millimeter, säger STL fortfarande 0.08. Slicern skriver ut 0.08 mm. Du hittar den inte på plattan. Det omvända är filen människor minns: ett objekt modellerat som „1 enhet = 1 meter“ men exporterat som talet 1 och sedan läst som 1 mm är pyttelitet; ett objekt vars koordinater redan låg i tusental, eftersom någon exporterade råa meterscenetal utan skalning, är enormt.

Om OBJ verkligen var i meter, sätt enhetsmenyn till meter. Konverteraren multiplicerar varje koordinat med 1000 innan den skriver STL. En modellenhet på 0.08 blir 80 mm. Begränsningslådan bör då läsa ungefär 80 mm på den axel du väntar dig. Den lådan är hela poängen med kontrollen. En enhetsmeny utan en mätning är en gissning du inte kan se.

Centimeter är kusinen på 10×. Ett arkitekturmesh i centimeter, lämnat på millimeter, skrivs ut i en tiondel av den tänkta storleken. Tum multiplicerar med 25.4. En del på 2 tum lämnad på millimeter blir en del på 2 mm. Ingen av de faktorerna lagras efteråt i STL. De bakas in i koordinaterna. Om du ändrar dig, konvertera igen. Behåll inte den felaktiga filen och „kom ihåg“ skalan i huvudet.

Diagram över en meter som tusen millimeter, och hur den skalan syns när en slicer antar millimeter

Räknat exempel: provkuben på 10 enheter

Det inbyggda provet är en kub på 10×10×10 (koordinater från −5 till 5 på varje axel). Med millimeter valt och skala 1 läser begränsningslådan ungefär 10 × 10 × 10 mm. Med meter valt multipliceras varje koordinat med 1000, så samma kub läser ungefär 10000 × 10000 × 10000 mm (10 m på varje kant — ett linjärt hopp på 1000×). Det är vad enhetsmenyn är till för. Ladda ner först när lådan matchar storleken du menar.

Så ser du vilken enhet du har

Leta efter en dimension du redan känner. En miniatyrbas som ska vara 40 mm, ett telefonställ som ska vara 80 mm brett, ett hål i ett fäste som ska vara 5 mm. Släpp OBJ med millimeter valt och läs lådan. Om den kända kanten är rätt är du klar. Om den är ungefär 1000× för liten var filen i meter. Om den är ungefär 10× för liten, prova centimeter. Om den är ungefär 25.4× för liten, prova tum.

Blenders scenenhet är en ledtråd, inte ett bevis. Människor sätter scenen till meter och skriver sedan „40“ och tänker millimeter, eller tvärtom. Exportören skriver de tal den har. Enhetsmenyn på den här webbplatsen frågar vad de talen betyder, vilket inte alltid är det scenpanelen säger. När de är oense, lita på en känd millimetermätning.

Tillämpa objektskalan i Blender innan du exporterar. En skala på 0.01 på objektet kan gömma en enhetsomvandling inuti objekttransformen. Om den skalan inte är tillämpad kan du „rätta“ enheter här och ändå vara fel, eftersom vertex aldrig var så stora som vyn antydde. Tillämpa skala, exportera en färsk OBJ och konvertera den filen.

Extra skala i konverteraren är en annan ratt. Det är en faktor efter enhetsomvandlingen. Lämna den på 1 när du bara översätter meter till millimeter. Använd 1.05 eller 0.98 när du vill ha en medveten passning, och skriv ner det valet. Att använda extra skala för att mena „den här filen var meter“ förvirrar dig nästa vecka. Materalternativet betyder redan det.

Platta, axel och en andra skala i slicern

Y uppåt mot Z uppåt ändrar vilken axel som är höjd. Det ska inte ändra den längsta dimensionen på en kub, men det ändrar vilket tal som är Z på en figur. Läs höjden efter att du valt uppåtaxeln, inte före. Att sätta meshet på plattan flyttar Z så att minimum är 0. Det ändrar inte delens storlek. Om höjden var fel reparerar plattförskjutningen den inte.

Gör skalan på ett ställe. Om du sätter meter här, skriv inte också 1000% i Cura. De två rättningarna multipliceras. Den vanliga rena vägen är: rätt enhet på den här sidan, extra skala 1, sedan en slicerskala på 100% om du inte justerar för krympning du förstår. Bekräfta slicerns rapporterade storlek mot begränsningslådan. De bör stämma.

Vad som fortfarande inte finns i filen

Efter en korrekt skala är STL fortfarande utan enhet. Ett annat program kan läsa den fel. Triangelantalet ändras inte av skala: en kub med 12 trianglar förblir 12 trianglar vid 10 mm eller vid 10 m. Skala lägger inte till detalj och stänger inte hål. Ett storleksfel på 1000× och ett trasigt skal är separata problem. Valet binär mot ASCII ändrar inte heller storlek. ASCII är inte ett noggrannare enhetssystem. Det är samma hörn skrivna som text.

Om du vill ha Blender-exporten klick för klick runt den här kontrollen, använd konvertera OBJ till STL. Om talen ser rätt ut och du bestämmer om du ska behålla källfilen, använd OBJ mot STL.

Frågor

Varför är standard millimeter?

Slicers för FDM-utskrift, däribland Bambu Studio, Cura och PrusaSlicer, behandlar vanligtvis STL-koordinater som millimeter. Att matcha den standarden undviker en tyst omskalning i det vanliga fallet.

Min Blender-scen säger meter men jag modellerade i millimeter. Vad väljer jag?

Välj den enhet som matchar talen i filen, inte etiketten i scenpanelen, om de är oense. En bas på 40 enheter som du vet är 40 mm är millimeter, även om scenenheten visar meter.

Minns STL att jag valde millimeter?

Nej. Filen lagrar bara koordinater. Valet ändrar talen. Slicern antar sedan millimeter. Begränsningslådan är så du ser valet.

Konvertera med millimeter valt