Convertire STL in OBJ

Qui converti STL in OBJ gratis e senza account: trascina il file qui sopra e in un paio di secondi il risultato è pronto da scaricare. La conversione avviene dentro il tuo browser, quindi il file non viene mai caricato. Funziona allo stesso modo su Windows, macOS e Linux e anche su iPhone e Android, e continua a funzionare anche se stacchi la connessione.

  • Dove gira Nel tuo browser. Il file non viene mai caricato.
  • Ricostruito OBJ funziona in modo diverso da STL. Non è quindi il degrado graduale di un codec con perdita: quello che OBJ sa esprimere viene riprodotto fedelmente, e quello che lì non ha un equivalente non sopravvive affatto.
  • Limite di dimensione Fino a 100 MB per file, gratis e senza account.
  • Vale la pena saperlo Solo la geometria. Materiali, colori, texture e animazione non passano, e un modello collocato più volte torna con ogni copia fissata nella propria posizione.

Fino a 100 file alla volta. Formati diversi insieme non sono un problema.

Portare un STL fuori dal mondo della stampa per poterlo modificare

STL esiste per essere affettato. Porta triangoli e nient’altro, esattamente ciò che vuole uno slicer ed esattamente ciò che un’applicazione di modellazione non vuole — nessun gruppo da isolare, nessun materiale da assegnare, nessun nome da cercare, e, fondamentalmente, nessun vertice condiviso. Tutto ciò che fa un modellatore inizia selezionando parte di una mesh, e un STL non dà nulla da selezionare.

OBJ è il tipo opposto di file: testo, indicizzato, raggruppato, importato universalmente, e abbastanza vecchio che anche un pacchetto del 1998 lo legge. Non è un formato migliore di STL in astratto; è il formato che ogni strumento in una pipeline di modellazione tratta come predefinito.

La saldatura è ciò che rende la mesh selezionabile

Un cubo in un STL sono dodici triangoli con trentasei vertici, perché ogni triangolo porta i suoi tre angoli indipendentemente e gli otto angoli reali sono scritti quattro o cinque volte ciascuno. Importatelo invariato e ogni triangolo è un’isola a sé: Seleziona Collegati prende una sola faccia, la selezione a loop non trova alcun loop, la suddivisione produce buchi, e l’ombreggiatura liscia non ha normali condivise da mediare.

Il lettore qui unisce i vertici coincidenti prima che venga scritto qualunque cosa. La chiave di confronto è arrotondata a sei cifre decimali, perché due triangoli che si incontrano su un bordo spesso disaccordano nell’ultimo bit di un float — sei cifre sono ben sotto qualunque tolleranza stampabile. Il cubo esce con otto vertici e dodici facce, una mesh nel senso che intende un modellatore.

Cosa contiene davvero il file OBJ

Una riga di commento, una riga o che nomina l’unico gruppo, poi una riga v per vertice e una riga f per triangolo. Questo è l’intero file. Gli indici sono a base uno, come richiede OBJ, e contano attraverso l’intero file piuttosto che per gruppo.

Non ci sono righe vt perché un STL non ha coordinate texture, nessuna riga vn perché le normali sono derivabili, nessuna riga usemtl perché non c’è materiale, e nessun riferimento mtllib perché non c’è libreria materiali. Qualunque cosa apra OBJ lo leggerà senza problemi.

Il gruppo singolo, e separare le parti dopo

Un STL non ha il concetto di oggetto, quindi l’OBJ ha un gruppo ed è chiamato mesh_1. Un modello assemblato da un corpo, un coperchio e una maniglia arriva come un gruppo contenente tre gusci disconnessi.

Ogni applicazione di modellazione può dividerlo. Blender lo fa con Separate By Loose Parts in modalità edit; MeshLab ha Split in Connected Components; Maya e 3ds Max hanno entrambi un equivalente. Ciò che nessuno può fare è recuperare i nomi, perché l’STL non li ha mai avuti.

Nessuna normale viene scritta, ed è la decisione giusta

Un STL memorizza una normale per faccia per triangolo. Non viene scritta nell’OBJ, e nulla si perde: una normale di faccia è completamente determinata dall’ordine di avvolgimento dei suoi tre angoli, e ogni applicazione la ricalcola all’importazione. Diversi slicer ignorano del tutto il valore memorizzato, proprio perché molti scrittori lo sbagliano.

L’assenza di normali per vertice è più interessante. Senza di esse l’importatore ne calcola di proprie, il che per una mesh saldata significa mediare sui vertici condivisi — quindi il modello arriva pronto per essere ombreggiato liscio o piatto a piacere.

Come il lettore decide se il vostro STL è binario o testo

Entrambi i dialetti si convertono e il file non dice quale sia. Il test usuale — il file inizia con la parola solid? — è sbagliato, perché un STL binario può contenere qualunque cosa nella sua intestazione di ottanta byte e diversi scrittori ci mettono solid, il che produce un file che sembra testo e non lo è.

Il test affidabile è aritmetico: un STL binario è esattamente 84 + 50n byte per il conteggio triangoli dichiarato nella sua intestazione, e nient’altro lo è. Se l’aritmetica non torna, il file viene decodificato come testo e ogni riga vertex viene letta.

La dimensione dell’OBJ contro l’STL da cui proviene

Due effetti tirano in direzioni opposte. La saldatura rimuove la maggior parte della duplicazione: una mesh tipica ha ogni vertice condiviso da cinque o sei triangoli, quindi la lista vertici si riduce circa di quel fattore. Il testo espande ciò che resta: un float da quattro byte diventa dieci-quindici caratteri decimali.

Il risultato di solito è nello stesso intervallo con l’OBJ leggermente in vantaggio rispetto all’STL binario — un aumento piuttosto che una moltiplicazione. Il tetto gratuito qui è 100 MB, circa due milioni di triangoli STL.

Importare l’OBJ convertito in Blender o MeshLab

Due impostazioni vale la pena controllare all’ingresso. L’asse verticale: OBJ non ha convenzione e l’importatore di Blender predefinisce Y-up, mentre un STL da un flusso CAD o di stampa è quasi sempre Z-up, quindi il modello arriva sdraiato sul viso a meno che non lo impostiate. E la scala: nessun formato dichiara un’unità.

Dopo l’importazione, la prima mossa utile su qualunque mesh CAD convertita è Merge By Distance con una soglia molto piccola, che cattura tutto ciò che la saldatura a sei decimali non ha preso perché la geometria sorgente disaccordava davvero.

Triangoli fino in fondo, e cosa significa per la modifica

La mesh è saldata ed è comunque interamente triangoli, perché è tutto ciò che l’STL ha mai contenuto. Quad e n-gon non possono essere recuperati — l’informazione su quali coppie di triangoli fossero un tempo un quad non è nel file. Scultura, operazioni booleane, decimazione e misurazione funzionano tutte bene su triangoli.

Ciò che non funziona bene è la modellazione a superficie di suddivisione, che vuole quad. Se continuerete a lavorare su questo modello, la retopologia è il passo successivo onesto: Quadriflow Remesh di Blender, ZRemesher di ZBrush o InstantMeshes danno una mesh quad in un passaggio.

Dove viene convertito l’STL

In questa scheda del browser, con JavaScript ordinario. Nessun modulo WebAssembly viene scaricato, nulla viene caricato, non c’è account né limite giornaliero. Aprire il pannello di rete e convertire qualcosa è il modo per confermarlo.

Gli STL sono spesso il design di qualcun altro — il pezzo di un cliente, la geometria di un fornitore, un componente sotto accordo — e il lavoro di modellazione di questa pagina è esattamente la situazione in cui ciò è vero.

Come convertire STL in OBJ

  1. Trascina il tuo file STL su questa pagina, oppure fai clic per sceglierne uno.
  2. Scegli OBJ come destinazione. La conversione avviene nel tuo browser e il file non viene caricato.
  3. Scarica il file OBJ finito.

STL o OBJ: cosa cambia

STL a confronto con OBJ
STLOBJ
Nome completoStereolithographyOggetto Wavefront
Estensione del file.stl.obj
Tipo di mediamodel/stlmodel/obj
Prima pubblicazione19871992
Pubblicato da3D SystemsWavefront Technologies
LicenzaStandard apertoStandard aperto
Situazione attualeAttualeAttuale
Si apre nel browserNessun browserNessun browser
Valutato al suo posto3MF, PLYGLTF, PLY

Aprire il risultato

Blender legge sia STL sia OBJ, quindi puoi confrontare il risultato con l'originale senza un secondo programma.

A che cosa serve ciascun formato

I due puntano a lavori diversi: STL a la stampa 3D, OBJ a spostare dati fra programmi e la modifica. Vale la pena valutarlo prima, perché il motivo per cui esiste uno è di solito il motivo per cui l'altro risulta scomodo.

OBJ viene da Wavefront Technologies e risale al 1992. Blender, MeshLab e Maya lo leggono.

Da STL a OBJ: domande frequenti

Il mio file STL viene caricato da qualche parte?

No. Questa conversione avviene interamente nel tuo browser, quindi il file non esce dal tuo dispositivo. Puoi controllarlo da solo: apri la scheda di rete degli strumenti per sviluppatori e converti qualcosa. Vedrai la pagina stessa e le richieste di statistica e di pubblicità con cui questo servizio si paga, e nemmeno una che porti il tuo file.

Convertire STL in OBJ è gratis?

Sì. Senza account, senza filigrana e senza una quota giornaliera da consumare: gira sulla tua macchina, quindi puoi tornare quante volte vuoi. Il browser lavora file fino a 100 MB, 100 per volta.

Si perde qualità convertendo STL in OBJ?

STL e OBJ descrivono il contenuto in modi radicalmente diversi. La conversione è quindi una ricostruzione e non una copia: fedele, ma non identica byte per byte. Solo la geometria. Materiali, colori, texture e animazione non passano, e un modello collocato più volte torna con ogni copia fissata nella propria posizione.

Devo installare qualcosa per aprire un file OBJ?

Per la conversione no: avviene nel browser che hai già aperto. Per aprire il risultato ti serve poi il programma con cui il tuo dispositivo mostra di solito Wavefront Object.

Altro su questi formati