Tvorba 3D grafických objektů Roman Plch Konverzní programy Komerční produkty: Deep Exploration 3D Reviewer (pouze na Windows, k dispozici na citrixu) PDF3D ReportGen (k dispozici i Linuxová verze) Okino Universal-3D Geometry Export Converter „Nekomerční“ produkty: Meshlab, nejnovější verze na citrixu Jreality IDTFConverter Pro oboustranné zobrazení grafického objektu je třeba nastavit v Adobe Readeru – Preferences – 3D & Multimedia – Enable double-sided rendering. Generování 3D grafiky v Maplu > plot3d(x^2+y^2, x=-3..3, y=-3..3); Následně export 3D grafiky formátu X3D (Extensible 3D) nebo DAE. maplex3d2prc Při exportu do X3D je možné s výhodou použít programu maplex3d2prc, exportuje i osy s popisem a zachovává nastavení měřítka na osách a barevné schéma. Program se spouští s jediným argumentem – jménem souboru X3D, exportovaným z Maplu. Na výstupu dostáváme PRC soubor, PDF soubor s vloženou 3D grafikou a JavaScript, který zajišťuje správnou orientaci popisu os a musí být připojen při vkládání objektu do PDF souboru. Je možné použít i systémový maplex3d2prc.js. \includemedia[% label=j1, width=0.6\textwidth, height=0.6\textwidth, activate=pageopen,3Dmenu, 3Droo=72, 3Dcoo=-0.27 -0.28 -0.036, 3Dc2c=0.78 -0.55 0.30, 3Droll=2.35, 3Dlights=Day, add3Djscript=maplex3d2prc.js] {}{maple15x3d.prc} Při práci s Adobe Readerem na linuxových systémech je třeba nastavit systémovou proměnnou export LC_NUMERIC="C" (jinak se vložený JavaScript neprovede). Obrázek : Graf vytvořený v Maplu a převedený do PRC pomocí maplex3d2prc Export z Maplu do VRML Generování 3D grafiky v Maplu: > fce:=plot3d(x^2+y^2, x=-3..3, y=-3..3): Pro kreslení os je lepší použít proceduru PlotAxes (značky na osách a jejich popis se do VRML neexportují korektně): > read("PlotAxes.m"); > osy:=plotAxes(3,3,15,.005): Nyní zobrazíme objekt i osy do jednoho obrázku a následně provedeme export pomocí příkazu vrml z balíčku plottools. > objekt:=display([fce,osy]): > plottools[vrml](objekt,"objekt.wrl"); Maple generuje grafický objekt v zastaralém formátu VRML 1. Před konverzí do U3D pomocí Meshlabu je třeba získaný VRML soubor nejdříve zkonvertovat do novější verze (např. pomocí ivvrml – ke stažení na http://merlin.fit.vutbr.cz/wiki/index.php/ Open_Inventor_Tools#ivvrml). Maxima load(draw); draw_renderer : ’vtk $ draw3d( axis_3d =true, file_name = "ukazka", terminal= vrml, enhanced3d = true, explicit(sin(x^2+y^2)/5, x, -2, 2, y, -2, 2) )$ Matlab – export do VRML pomocí příkazu vrml nebo pomocí balíčku fig2u3d R – použití balíčku misc3d a příkazu exportScene(scene, filename, format=c("OFF", "IDTF", "ASY")) Obrázek : Graf vytvořený v Maximě a převedený do PRC pomocí 3D Reviewer Obrázek : Graf vytvořený v Maximě a převedený do U3D pomocí Meshlabu Sage https://sage.math.muni.cz var(’x y’); plot3d(y^2-x^2,(x,-2,2),(y,-1,1)) Uložení ve formátu Jmol (Toggle Advanced Controls -> Download this view). Následně otevření v programu Jmol (na linuxu příkazem jmol) a export do formátu IDTF nebo X3D. Exportovaný IDTF soubor poté převedeme do U3D příkazem IDTFconverter -input soubor.idtf -output soubor.u3d Pro konverzi X3D souboru použijeme např. Meshlab. Obrázek : Graf vytvořený pomocí CAS Sage