3D-PDF kostenlos mit Open Source
Das 3D-PDF-Format (auch bekannt unter dem Namen PDF/E) ist nahezu ideal, um platte 2D-Zeichnungen in die dritte Dimension zu bringen und damit insbesondere kompliziertere Bauteile und Baugruppen einfacher zu visualisieren. Nur leider scheint es auf dem Markt der 3D-PDF-Erzeuger fast ausschließlich mehr oder minder kostspielige Tools zu geben.
Wie man trotzdem kostenlos und ohne Lizenzkosten sehr einfach aus 3D-Modellen interaktive 3D-PDF-Dokumente erzeugt, veranschaulicht dieser Artikel. Zwei Open Source Programme verhelfen Ihnen dazu. Und selbst eine Batch- oder Serverlösung zur Konvertierung von Massendaten steht Ihnen hiermit zur Verfügung.
Wie kommt das 3D-Modell in ein PDF ?
Zunächst einmal die Randbedingungen und etwas Zusatzwissen, wie üblicheweise ein 3D-Modell in ein PDF kommt.
Adobe hat in seiner PDF-Spezifikation aktuell genau zwei Möglichkeiten vorgesehen, interaktive Daten, sei es ein Multimedia Film oder eben ein 3D-Modell, in einem PDF-Dokument einzubetten:
- Einbetten eines U3D-Modells (Universal 3D, ein offenes 3D-Format, welches immer mehr Akzeptanz findet), lesbar ab Adobe Reader 7
- Einbetten eines sog. PRC-Modells (proprietäres 3D-Format mit sehr guten Eigenschaften, eigentlich von Adobe), lesbar ab Adobe Reader 8. Wie man es genau einbindet ist aber nicht dokumentiert.
An dieser Konstellation sieht man, dass das PDF-Format Adobe schon sehr viel bedeutet. Denn es erlaubt zum einen Open Source Tools, ebenfalls 3D-PDF-Dokumente zu erzeugen, aber hält am Ende natürlich den Königsweg (PRC) nur für Adobe selbst offen. Adobe-Produkte wird damit vermutlich immer die Software sein, die immer die besten Resultate liefern wird – wie in der Vergangenheit (Ghostscript) schon immer gewesen.
Das PRC-Format wurde inder Vergangenheit mit einem Converter (integriert in Acrobat 8 und 9) erzeugt, welches von der Firma TTF entwickelt wurde, welches wiederum zunächst von Adobe aufgekauft wurde. Später wurde der Kern dieser Software ausgegliedert . Das PRC-Format aus dieser Engine ist ein sehr genaues Format, welches nahezu exakte Geometrie liefert und noch viele weitere Vorteile bieten soll.
Das U3D-Format hingegen wird mittlerweile von vielen aktuellen CAD-Systemen unterstützt und ist nicht die beste aber eben eine freie Variante.
Meshlab erzeugt das neutrale U3D -Format
Der hier skizzierte Weg führt natürlich über U3D. Und dazu benötigen wir ein Programm, welches ein aus jedem 3D-CAD-System exportierbares Format einlesen kann und in das U3D-Format konvertieren kann. Meshlab ist so ein Werkzeug, was dies beherrscht. Es kann unter vielen anderen Formaten auch VRML und STL einlesen, welches in der Regel aus einigen 3D-Programmen ohne Zusatzlizenz exportiert werden kann. Nun sind die Formate VRML und STL nicht gerade die Besten um sehr große Baugruppen oder Modelle zu konvertieren, da es sog. tesselierte Formate (aus vielen Dreiecken gebildete Flächen) sind und keine ganzen Flächen oder solide Körper darstellen. Aber für Visualisierungszwecke reicht das allemal aus.
Keine Angst vor LaTEX oder MikTEX
Ein weiteres Werkzeug namens Miktex erlaubt die Einbindung des U3D-Modells in ein PDF-Dokument. Miktex ist ein Ableger des Text-Satz-Systems LaTEX für Windows. Es beinhaltet (online nachladbar!) ein Paket namens movie15, welches Multimedia-Objekte und eben auch U3D ins Dokument einbetten und mit dem Kommando pdflatex als PDF ausgeben kann. Mit LaTEX lässt sich das künftige 3D-PDF-Dokument natürlich nach belieben aufbauen und als Template verwenden. Keine Angst, Sie müssen kein LaTEX lernen. Meshlab exportiert es Ihnen schon beim U3D-Export als Begleitdatei (Datei mit Endung .tex), welches Sie nur noch mit einem Aufruf von pdflatex direkt ins 3D-PDF-Format wandeln können.
In Kürze dargestellt
- Export VRML oder STL aus CAD-System
- Import des VRML/STL in Meshlab und Export als U3D
- Konvertieren der U3D-Datei mithilfe der .tex-Datei mit pdflatex nach 3D-PDF
Glauben Sie mir, Sie benötigen hierfür keinerlei Wissen über LaTEX. Wenn Sie es aber dennoch können, ergeben sich für Sie noch viel mehr Möglichkeiten als nur einfache 3D-PDF-Dokumente. Z.B. könnten Sie mit einem weiteren Programm wie hier dargestellt zu jeder 2D-Zeichnung auch ein 3D-PDF mit hinzufügen, also 2 PDF-Dokumente zu einer machen.
Kleine Geheimtipps
- Meshlab kann auch im Batch verwendet werden. Das Tool dazu heißt meshlabserver.exe im Meshlab Programmverzeichnis. Damit lassen sich dann sogar massenhaft Daten konvertieren und in den Arbeitsablauf im Unternehmen integrieren.
- Meshlab und Miktex sind im Quellcode verfügbar. Beide Tools lassen sich auch auf anderen Plattformen wie dem MAC verwenden.
- Die beim Export mit Meshlab entstehende .tex Datei ist ein Template des zu erzeugenden PDFs. Man kann, wenn man LaTEX kann, vor der PDF-Erzeugung noch weiteren Text in das Template bringen. So kann z.B. ein Dateiname des 3D-Modells, ein Datum, oder andere Dinge im endgültigen PDF mit angezeigt werden. Mit LaTEXT geht aber noch viel viel mehr.
Es soll noch eine weitere Möglichkeit geben, 3D-PDF kostenlos mit Bentley View V8i über DXF-Dateien zu erzeugen. Ich habe es zwar nicht probiert. Aber vielleicht kann ja jemand anders mal berichten.
Die Einschränkungen
- Die im CAD-System farbig dargestellten Modelle werden, auch wenn Sie im STL/VRML noch farbig sind, im 3D-PDF leider immer grau dargestellt. Das liegt daran, dass Meshlab im Moment keine Farben ins U3D bringen kann. Das ändert sich aber hoffentlich in Zukunft.
- Extrem große Modelle lassen sich leider manchmal gar nicht konvertieren. Das liegt an der oben beschriebenen Problematik mit der Tesselierung (Dreiecksbildung). Dagegen hilft leider nur viel mächtigere Hardware.
Weiterführende Links:
5 Kommentare
Pingback:
mephisto
Danke für die tolle Arbeit. Ich benutze es ab und an schon seit nun fast 2 Jahren. Meshlab kann mittlerweile Farben ins U3D bringen 😀
wenn man den workflow erstmal drin hat, dann geht es recht zügig!
ist4000
Hallo, danke für die Beschreibung. Allerding wäre schön, gleich im Artikel zu erfahren, wie man das notwendige Package holt. – Über das extra Programm Package Manager. Habe eine Weile gebraucht, um das zu verstehen.
Es funktioniert aber trotzdem nicht. Es heißt:
initexmf: warning: Option –admin should be specified when running this program with administrative privileges
Im Text in der ersten Zeile
\documentclass[a4paper]{article}
ist die geschwungene Klammer rot, mittendrin in der Zeile
toolbar, %same as `controls‘
ist %same as `controls‘
rot, am Ende bei
]{\linewidth}{\linewidth}{2-motoren-test.u3d}
sind die geschwungenen Klammern rot.
ist4000
Eigener Fehler. Funktioniert doch…
Frank
„… Meshlab exportiert es Ihnen schon beim U3D-Export als Begleitdatei (Datei mit Endung .tex), welches Sie nur noch mit einem Aufruf von pdflatex direkt ins 3D-PDF-Format wandeln können.“
Das macht Meshlab bei mir leider nicht.
Nun bekomme ich doch Angst.