Guia
Unidades, mm ou metros, para converter OBJ para STL
Atualizado · Só malha OBJ para STL
O STL não traz unidades. Percebe porque é que os modelos chegam 1000× demasiado grandes ou pequenos, lê a caixa delimitadora e converte com mm selecionado no navegador.
Evitar um erro de escala de 1000× antes de fatiar
Decide o que significa uma unidade no OBJ, escala para milímetros e confirma a caixa delimitadora antes de descarregares um STL.
Passo 1
Dar nome à unidade do OBJ
Decide se uma unidade de coordenada no OBJ é um milímetro, um centímetro, um metro ou uma polegada. O ficheiro não te diz isto.
Passo 2
Definir essa unidade no conversor
Escolhe a opção correspondente. Milímetros é a predefinição e multiplica por 1. Centímetros multiplicam por 10, metros por 1000, polegadas por 25.4.
Passo 3
Ler a caixa delimitadora em milímetros
Compara o tamanho com uma medida que conheces. Uma peça de 40 mm não deve aparecer como 40 metros nem como 0.04 mm.
Passo 4
Descarregar só quando o tamanho parecer certo
Guarda o STL binário e confirma os mesmos milímetros no slicer. Não empilhes uma segunda escala de 1000% por cima.
Um STL é uma lista de triângulos com coordenadas e uma normal de face. Não tem campo de unidade. O número 10 pode ser 10 milímetros ou 10 metros. Os programas preenchem esse silêncio com um hábito. Os slicers FDM tratam quase sempre uma unidade como um milímetro. As aplicações de modelação muitas vezes não. O fosso entre esses hábitos é a forma de um porta-chaves se tornar numa peça do tamanho de uma sala, ou de um adereço do tamanho de uma sala se tornar num grão na base.
O caso dos 1000×
Um metro são 1000 milímetros. Se um OBJ guarda uma figura de 0.08 metros como o número 0.08, e deixas o conversor em milímetros, o STL continua a dizer 0.08. O slicer imprime 0.08 mm. Não a vais encontrar na placa. O inverso é o ficheiro de que as pessoas se lembram: um objeto modelado como «1 unidade = 1 metro» mas exportado como o número 1, e depois lido como 1 mm, fica minúsculo; um objeto cujas coordenadas já iam aos milhares porque alguém exportou os números crus da cena em metros, sem escalar, fica enorme.
Se o OBJ estava mesmo em metros, põe o menu de unidades em metros. O conversor multiplica cada coordenada por 1000 antes de escrever o STL. Uma unidade de modelo de 0.08 passa a 80 mm. A caixa delimitadora deve então ler cerca de 80 mm no eixo que esperas. Essa caixa é o sentido todo do controlo. Um menu de unidades sem uma medida é um palpite que não consegues ver.
Os centímetros são o primo dos 10×. Uma malha de arquitetura em centímetros, deixada em milímetros, imprime a um décimo do tamanho pretendido. As polegadas multiplicam por 25.4. Uma peça de 2 polegadas deixada em milímetros torna-se numa peça de 2 mm. Nenhum destes fatores fica guardado no STL depois. Ficam cozidos nas coordenadas. Se mudares de ideias, converte outra vez. Não guardes o ficheiro errado e «lembra-te» da escala de cabeça.
Exemplo resolvido: o cubo de amostra de 10 unidades
A amostra integrada é um cubo de 10×10×10 (coordenadas de −5 a 5 em cada eixo). Com milímetros selecionados e escala 1, a caixa delimitadora lê cerca de 10 × 10 × 10 mm. Com metros selecionados, cada coordenada é multiplicada por 1000, por isso o mesmo cubo lê cerca de 10000 × 10000 × 10000 mm (10 m em cada aresta — um salto linear de 1000×). É para isso que serve o menu de unidades. Descarrega só depois de a caixa bater com o tamanho que queres.
Como saber que unidade tens
Procura uma medida que já conheces. Uma base de miniatura que deve ter 40 mm, um suporte de telemóvel que deve ter 80 mm de largura, um furo de suporte que deve ter 5 mm. Larga o OBJ com milímetros selecionados e lê a caixa. Se a aresta conhecida estiver certa, acabou. Se estiver cerca de 1000× pequena, o ficheiro estava em metros. Se estiver cerca de 10× pequena, experimenta centímetros. Se estiver cerca de 25.4× pequena, experimenta polegadas.
A unidade de cena do Blender é uma pista, não uma prova. Há quem ponha a cena em metros e depois escreva «40» a pensar em milímetros, ou o contrário. O exportador escreve os números que tem. O menu de unidades deste site pergunta o que esses números significam, o que nem sempre é o que o painel da cena diz. Quando discordam, acredita numa medida em milímetros que conheces.
Aplica a escala do objeto no Blender antes de exportares. Uma escala de 0.01 no objeto pode esconder uma conversão de unidades dentro da transformação do objeto. Se essa escala não estiver aplicada, podes «corrigir» as unidades aqui e continuar errado, porque os vértices nunca foram tão grandes como a vista sugeria. Aplica a escala, exporta um OBJ novo e converte esse ficheiro.
A escala extra no conversor é outro botão. É um multiplicador depois da conversão de unidades. Deixa-a em 1 quando só estás a passar metros para milímetros. Usa 1.05 ou 0.98 quando queres um ajuste de encaixe de propósito, e anota essa escolha. Usar a escala extra para querer dizer «este ficheiro estava em metros» vai confundir-te na semana seguinte. A opção de metros já quer dizer isso.
Base, eixo e uma segunda escala no slicer
Y para cima ou Z para cima muda qual é o eixo da altura. Não deve mudar a dimensão mais longa de um cubo, mas muda qual é o número Z numa figura. Lê a altura depois de escolheres o eixo para cima, não antes. Assentar a malha na base desloca Z para o mínimo ser 0. Não redimensiona a peça. Se a altura estava errada, o deslocamento da base não a repara.
Faz a escala num só sítio. Se pões metros aqui, não escrevas também 1000% no Cura. As duas correções multiplicam-se. O caminho limpo habitual é: unidade correta nesta página, escala extra 1, e depois uma escala de 100% no slicer, salvo se estiveres a ajustar uma retração que compreendes. Confirma o tamanho que o slicer indica com a caixa delimitadora. Devem coincidir.
O que continua a não estar no ficheiro
Depois de uma escala correta, o STL continua sem unidade. Outro programa pode lê-lo mal. A contagem de triângulos não muda com a escala: um cubo de 12 triângulos continua com 12 triângulos a 10 mm ou a 10 m. A escala não acrescenta detalhe e não fecha buracos. Um erro de tamanho de 1000× e uma casca partida são problemas separados. A escolha binário ou ASCII também não muda o tamanho. O ASCII não é um sistema de unidades mais preciso. São os mesmos cantos escritos como texto.
Se queres o export do Blender clique a clique à volta desta verificação, usa como converter OBJ para STL. Se os números parecem certos e estás a decidir se ficas com o ficheiro de origem, usa OBJ ou STL.
Perguntas
Porque é que a predefinição são milímetros?
Os slicers de impressão FDM, incluindo o Bambu Studio, o Cura e o PrusaSlicer, tratam em geral as coordenadas STL como milímetros. Igualar essa predefinição evita um reescalonamento silencioso no caso comum.
A cena do Blender diz metros, mas modelei em milímetros. Qual escolho?
Escolhe a unidade que corresponde aos números do ficheiro, não ao rótulo do painel da cena, se os dois discordarem. Uma base de 40 unidades que sabes ter 40 mm é milímetros, mesmo que a unidade da cena diga metros.
O STL regista que escolhi milímetros?
Não. O ficheiro só guarda coordenadas. A escolha muda os números. O slicer assume depois milímetros. A caixa delimitadora é a forma de veres a escolha.
Guias relacionadas
- Como converter OBJ para STLExportação no Blender, este conversor, depois Bambu, Cura ou Prusa.
- STL binário ou ASCIIPorque é que o descarregamento vem em STL binário por predefinição.
- OBJ ou STLQuando ficas com o OBJ e o que um STL deita fora.
- O que é um ficheiro STLMalhas de triângulos, coordenadas sem unidade e slicers.
- FAQPrivacidade, tamanho, texturas, STEP e ficheiros de imagem.