Cookie di statistica e di pubblicità
Usiamo cookie di statistica e di pubblicità, entrambi inviati a Google. Rifiutare non cambia niente di quello che vedi.Leggi la pagina sulla privacy
Qui converti 3MF in PLY 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.
Fino a 100 file alla volta. Formati diversi insieme non sono un problema.
Vengono convertiti uno dopo l’altro e scaricati insieme in uno ZIP.
3MF in PLY
Esiste un lavoro distinto che non è stampare e non è modellare : capire se un componente è quello che dovrebbe essere. La parete è davvero 1,6 mm dove dice il disegno. Quanto materiale consumerà. Il file del fornitore corrisponde alla geometria che era stata approvata. Di quanto si è discostata una parte stampata dal modello, una volta scansionata.
Niente di tutto ciò avviene in uno slicer, e accade naturalmente in MeshLab, CloudCompare, Open3D e trimesh — che trattano PLY come il formato che non ha bisogno di spiegazioni. La conversione è dunque un passaggio in una misura, non in una consegna, e le domande cui vale la pena rispondere qui riguardano la fedeltà dei numeri, non l’aspetto.
PLY non registra unità. Non lo fanno STL, OBJ o glTF. Una scansione da un dispositivo è in millimetri, da un altro in metri, e una mesh da un pacchetto di modellazione è in qualsiasi cosa l’autore stesse pensando — così un volume calcolato su un PLY tipico è un numero di cui si deve stabilire l’unità separatamente.
Un 3MF è l’eccezione, perché il formato richiede che l’elemento model ne dichiari una : micron, millimetro, centimetro, pollice, piede o metro. Il lettore la risolve, moltiplicando per 25,4 per i pollici e per 1000 per i metri, quindi il PLY che esce è in millimetri qualunque cosa dicesse la sorgente. Il volume riportato da MeshLab è quindi in millimetri cubi e le distanze misurate in millimetri, senza un fattore di conversione scritto su un post-it.
Alcune sorgenti sul sito vengono saldate in ingresso, perché un STL memorizza tre vertici non condivisi per triangolo e produrrebbe altrimenti file assurdi. Un 3MF memorizza già un elenco di vertici indicizzato, quindi nulla viene saldato e nulla viene rinumerato all’interno di un oggetto — le posizioni e gli indici dei triangoli arrivano come il file li aveva.
È esattamente la proprietà di cui una comparazione ha bisogno. Se la sorgente dichiara 48.212 vertici, l’intestazione del PLY dice 48.212, e una differenza è una differenza reale, non un artefatto della conversione. Significa anche che eventuali vertici duplicati lasciati dallo strumento di authoring sono ancora lì, e vale la pena saperlo prima di eseguire un algoritmo che presume un manifold pulito — meglio unire con una tolleranza esplicita nel proprio strumento piuttosto che dare per scontato che sia stato fatto.
Un 3MF separa ciò che un oggetto è da dove va messo : la sezione resources contiene le mesh, e la sezione build colloca ciascuna con una trasformazione. Il lettore applica quelle trasformazioni ai vertici, perché PLY non ha modo di esprimere un posizionamento.
La conseguenza è una trappola di misura che vale la pena nominare. Le coordinate nel PLY sono coordinate del piano, non coordinate della parte, quindi un componente disposto nell’angolo posteriore sinistro di un letto da 256 mm non è vicino all’origine e il suo bounding box è corretto mentre la sua posizione è priva di senso come descrizione della parte. Per volume, area e spessore non importa. Per la registrazione rispetto a una scansione, o per confrontare due esportazioni della stessa parte, è meglio traslare ogni mesh sul proprio baricentro — `mesh.apply_translation(-mesh.centroid)` in trimesh — altrimenti il passo di allineamento parte da uno scarto di cento millimetri che deve scoprire.
PLY contiene un unico elenco di vertici e un unico elenco di facce. Un 3MF che contiene tre oggetti con nome, o un oggetto collocato cinque volte, produce quindi una superficie con gli elenchi di vertici concatenati e gli indici delle facce traslati di conseguenza.
La geometria è intatta e l’identità è persa : niente nomi, niente confini tra oggetti, niente metadati per oggetto. L’analisi delle componenti connesse recupera i pezzi — Split in Connected Components di MeshLab e `trimesh.Mesh.split()` lo fanno entrambi — ma un volume calcolato sul file fuso è il totale su tutto ciò che sta sul piano, che è la risposta sbagliata a «quanto materiale è questa parte». Se i numeri devono essere per parte, convertire un oggetto per volta, cancellando gli altri in uno slicer e salvando di nuovo.
Un oggetto 3MF può essere definito come un assemblaggio — un elenco di `<components>` che referenziano altri oggetti, ciascuno con la propria trasformazione — invece che come mesh. Il lettore risolve quei riferimenti ricorsivamente e moltiplica ciascuna trasformazione in quella sopra, così una parte annidata due livelli sotto finisce dove il file dice che va, e non all’origine.
Non è sempre stato così, e il guasto che ha sostituito vale la pena nominarlo perché era silenzioso. Camminare solo sugli elementi mesh significava che l’item di build nominava un oggetto senza geometria propria, il modello usciva vuoto, e il fallback emetteva poi gli oggetti parte all’origine con ogni posizionamento perso — un assemblaggio a due pezzi che arrivava come due parti sovrapposte. Oggi un file che non produca triangoli da nessuna parte genera «Nessuna geometria triangolare trovata in questo 3MF», e una catena di componenti che si referenzia da sola viene troncata invece di essere seguita fino a uno stack overflow.
L’intestazione dice sempre `format ascii 1.0`. Non c’è opzione binaria, quindi ogni coordinata è scritta come cifra decimale e ogni faccia come una riga che inizia con 3. I riassunti del formato — compreso quello di questo sito — descrivono PLY come formato binario, il che è vero per la specifica ma non per ciò che esce da qui.
La differenza di dimensione è notevole : una coordinata float32 impacchettata occupa quattro byte e la sua forma scritta dieci-quindici caratteri. Un 3MF è XML compresso, quindi un pacchetto di pochi megabyte si espande di routine in un PLY molte volte più grande. Tutto legge il risultato, e `head -20` mostra l’intestazione, che è uno scambio equo per un file che comunque sta per essere caricato in uno strumento di analisi. Se serve compresso, MeshLab e trimesh scrivono entrambi PLY binario al salvataggio successivo.
Gruppi di colori, materiali base, assegnazioni di proprietà per triangolo, nomi di oggetti, impostazioni di stampa, supporti forzati, mesh di modifica, profilo della stampante, definizione del piano, anteprima e ogni brandello di metadati dello slicer. Niente di tutto ciò viene letto, e il PLY dichiara solo proprietà x, y e z senza colore, normali o coordinate di texture.
Per una misura è perlopiù irrilevante — si chiede della geometria — con un’eccezione da segnalare. Se la parte è multi-materiale, il confine tra i materiali è espresso come assegnazioni di proprietà sui triangoli, e dopo la conversione non c’è modo di distinguere una regione dall’altra. Misurare il volume della sola sezione flessibile è una domanda a cui questo file non può rispondere.
In questa scheda del browser. L’archivio viene decompresso e l’XML del modello analizzato da JavaScript in esecuzione nella pagina, senza alcun modulo WebAssembly da scaricare, senza caricamento, senza account e senza quota giornaliera. La scheda Rete durante una conversione è il modo per confermarlo.
I file di stampa sono spesso proprietà intellettuale di qualcun altro — un componente del cliente, la geometria di un fornitore, un pezzo coperto da accordo di riservatezza — e il lavoro di controllo qualità su questa pagina è esattamente la situazione in cui ciò è vero. Una conversione che non invia mai il file è l’unica versione di questo flusso che non richiede una conversazione con qualcuno in proposito.
| 3MF | PLY | |
|---|---|---|
| Nome completo | 3D Manufacturing Format | Polygon File Format |
| Estensione del file | .3mf | .ply |
| Tipo di media | model/3mf | model/ply |
| Prima pubblicazione | 2015 | 1994 |
| Pubblicato da | 3MF Consortium | Stanford University |
| Specifica | 3MF Core Specification | — |
| Licenza | Standard aperto | Standard aperto |
| Situazione attuale | Attuale | Attuale |
| Si apre nel browser | Nessun browser | Nessun browser |
| Valutato al suo posto | STL, OBJ | OBJ, STL |
I programmi di sempre non coincidono: 3MF si apre in PrusaSlicer, Cura e Microsoft 3D Builder, PLY in MeshLab, Blender e CloudCompare, quindi chi riceve il risultato ha bisogno di uno del secondo gruppo.
I due puntano a lavori diversi: 3MF a la stampa 3D, PLY a la scansione e spostare dati fra programmi. Vale la pena valutarlo prima, perché il motivo per cui esiste uno è di solito il motivo per cui l'altro risulta scomodo.
3MF è il formato di 3MF Consortium, pubblicato nel 2015. È descritto in 3MF Core Specification, e vale la pena conoscerlo se il file deve sopravvivere allo strumento che lo ha scritto.
PLY viene da Stanford University e risale al 1994. MeshLab, Blender e CloudCompare lo leggono.
PLY è stato pubblicato nel 1994 e 3MF nel 2015. Il più vecchio è in genere il file più sicuro da consegnare; il più recente fa lo stesso lavoro con meno byte.
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.
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.
3MF e PLY 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.
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 Polygon File Format.