Interaktivní 3D grafika v HTML a PDF dokumentech Roman Plch, Petra Šarmanová Příspěvek si všímá problematiky vkládání interaktivní 3D grafiky vytvořené CAS systémem Maple do webových stránek a PDF dokumentů. Popisuje, jak využít mapleovskou knihovnu JavaViewLib k exportu interaktivních objektů a jak lze tuto dynamickou grafiku následně pomocí programu JavaView prezentovat na webu. V druhé části příspěvku autoři popisují vytváření PDF dokumentů se zařazenou interaktivní 3D grafikou pomocí pdfTEXu a balíčku movie15. 1. Úvod Vhodně vytvořená a okomentovaná grafika přispívá k pochopení probírané problematiky a rozvoji geometrické představivosti studentů. Ilustrační grafiku lze použít k objasňování nového teoretického pojmu či závislosti daného jevu na parametrech, k dokreslení geometrického významu řešených úloh a případně k ověření „reálnosti“ řešení. Jedním z možných dělení grafiky je na grafiku statickou a dynamickou. Mezi statickou grafiku počítáme jakékoliv obrázky, s nimiž nemůžeme dále manipulovat. Interaktivní grafika nám naproti tomu umožňuje aktivně pracovat s objektem, např. prohlédnout si ho ze všech stran, zvětšovat a zmenšovat, zobrazit detail vybrané části, zobrazit normálové vektory, měnit nastavení barev, průhlednost objektu a mnoho dalšího (dle možností zobrazovacího programu). V první části příspěvku popíšeme, jak lze interaktivní grafické objekty vytvořit pomocí systému Maple za použití knihovny JavaViewLib a jak je lze prezentovat na webu (s využitím zobrazovacího programu JavaView). Druhá část příspěvku je věnována zkušenostem autorů s vkládáním interaktivních 3D objektů do PDF dokumentu, počínaje úpravami 3D grafiky v Maplu, jejím exportem do formátu VRML, převodem do formátu U3D pomocí programu Deep Exploration, až po začlenění do PDF dokumentu pomocí pdfTEXu a balíčku movie15. Ve výsledném PDF dokumentu je tak zachována možnost interakce uživatele s 3D objektem bez nutnosti lokální instalace programu Maple či jiných grafických programů. 2. Interaktivní grafika v HTML dokumentu JavaView je prohlížeč geometrických útvarů a výpočetní program napsaný v jazyce Java. Může být použit jako samostatná aplikace pro zobrazování a manipulaci 76 s 3D objekty nebo jako applet na webových stránkách pro vzdálené použití skrze webový prohlížeč. Program JavaView nabízí velmi pěkné zobrazovací prostředí, které umožňuje přibližování, posunutí, rotace, ovládání barev, textur, řeší průhlednost, viditelnost, vyhlazování nerovností, animování a mnoho dalšího. JavaView umožňuje import a export 3D objektů různých formátů (JVX, VRML, OFF, OBJ, DXF, . . . ) a formátů souborů s grafikou programů Maple a Mathematica. JavaView nejenže uchovává všechny možnosti modifikace grafických objektů, které Maple umožňuje, ale dokonce ho v mnohém převyšuje. 2.1. Mapleovská knihovna JavaViewLib K tomu, abychom mohli jednoduše exportovat z Maplu interaktivní grafiku, slouží mapleovská knihovna JavaViewLib (JVL), která se tak stává spojovacím článkem mezi systémem Maple a programem pro manipulaci s 3D grafickými objekty JavaView. Statické grafické výstupy z Maplu tak mohou být nahrazeny dynamickými obrázky zobrazenými pomocí appletu JavaView. JavaViewLib umožňuje export interaktivní 3D grafiky do formátu MPL (interní datový formát Maplu) a JVX (oficiální formát programu JavaView, založený na jazyku XML), s kterými si „rozumí“ program JavaView. Kromě těchto výstupů je umožněn přímý export do HTML kódu a okamžité zobrazení interaktivní 3D grafiky pomocí webového prohlížeče. Knihovnu je možno zdarma stáhnout z adresy http://www.javaview.de/ maple/ a nakopírovat do adresáře, kde jsou uloženy mapleovské knihovny. Na začátku práce v Maplu je třeba nastavit cestu ke knihovně:1 > libname:="C:\\Program Files\\Maple 11\\LIB\\JavaViewLib\\", > libname; Knihovnu načteme příkazem: > with(JavaViewLib); [exportHTM, exportHTMLite, exportJVX, exportMPL, exportValidate, genTag, genTagLite, getBrowser, getInfo, getInfoState, getOS, import, importJVX, importMPL, runApplet, runAppletLite, runJavaView, runMarkupTree, set, setEnabledValidate, setWorkingPath, viewGallery] Přitom se nám zobrazí seznam funkcí, které JVL nabízí. Některé funkce mají příponu Lite. Tyto využívají alternativní verzi programu, tzv. JavaViewLite. Jedná se o verzi optimalizovanou pouze pro prohlížení geometrických objektů bez možnosti větších manipulací s těmito objekty. Výhodou je rychlejší načítání appletů. 1Nastavení cesty závisí na použitém operačním systému. 77 2.2. Export grafů Maple používá k popisu generované grafiky vlastní datovou strukturu, užívající jen prostého textu. První z možností exportu pomocí JavaViewLib využívá přímo tohoto zápisu, téměř nezměněný ho přepíše do vnějšího souboru s příponou MPL. > graf:=plot3d(sin(x+y), x=-Pi..Pi,y=-Pi..Pi,axes=framed): > exportMPL(graf,"sin"): V pracovním adresáři (adresář C:\Program Files\Maple 11\JavaViewLib, pokud není nastaven příkazem setWorkingPath jiný adresář), podadresáři mpl, se uloží soubor sin.mpl. Při zobrazení souboru MPL pomocí JavaView se respektuje většina parametrů příkazu plot3d pro vykreslování grafu. Stačí tedy vytvořit výslednou podobu grafu v Maplu a dále nemusíme soubor MPL nijak upravovat (obr. 1). Analogicky fungují příkazy pro export do formátu JVX, mateřského jazyka JavaView. Tento je založený na značkovacím jazyce XML. > exportJVX(graf,"sin"): Při exportu do formátu JVX pomocí příkazu exportJVX dojde k uložení zobrazovaného objektu, nikoliv k uložení nastavení parametrů zobrazení (barvy, osy, osvětlení atd., obr. 2). Chceme-li uchovat parametry zobrazení 3D grafiky nastavené v Maplu, je vhodnější exportovat grafiku z Maplu do MPL, soubor MPL zobrazit pomocí JavaView a teprve poté uložit grafiku do souboru JVX a parametry zobrazení do souboru JVD (Display Settings). Chceme-li tuto grafiku znovu zobrazit, načítáme do JavaView oba soubory (JVX i JVD). Stejně postupujeme při jakýchkoliv úpravách provedených přímo programem JavaView. Obrázek 1: Export do MPL Obrázek 2: Export do JVX 78 Příkaz > exportHTM(graf,"sin"): uloží soubor sin.htm do podadresáře htm pracovního adresáře. HTML soubor obsahuje párový tag , v němž jsou přímo zapsána data exportovaného grafu, stejná, která by byla zapsána do externího souboru formátu MPL. Žádný další soubor tedy neexistuje. Pokud jako druhý parametr příkazu exportHTM použijeme jméno souboru s extenzí MPL nebo JVX, vytvoří se soubor sin.htm (v podadresáři htm), který obsahuje odkaz na soubor sin.mpl (v podadresáři mpl), resp. sin.jvx (v podadresáři jvx). Chceme-li vytvořit HTML soubor s více applety, je výhodné příkazem genTag vygenerovat zdrojový kód appletu přímo do mapleovského zápisníku a pak tento kód kopírovat do HTML souboru. > genTag(graf, "sin.mpl"): Příkaz viewGallery vytvoří stránku s odkazy na všechny soubory, které jsou uloženy v podadresáři htm pracovního adresáře. 2.3. Zobrazení grafů pomocí JavaView Příkaz > runJavaView(graf): spustí program JavaView a zobrazí v něm zadaný graf funkce. Příkaz > runApplet(graf): provede totéž jako příkaz exportHTM(graf), jen navíc otevře vygenerovanou stránku ve webovém prohlížeči (obr. 3). 2.4. Ostatní příkazy Seznam parametrů a jejich hodnot získáme příkazem: > getInfo(); JavaViewLib State Information -----------------------+------ [W ] Applet Width | 300 [H ] Applet Height | 300 [A~] Applet Alignment | center [CB] Applet Codebase | .. [AS] Applet Archive | jars/javaview.jar,jars/jvx.jar [AL] Applet Archive Lite | jars/jvLite.jar [BG] Applet Backcolor | 200 200 200 [R ] AutoRotate | show 1. 1. 1. [X ] Axes | hide 79 Obrázek 3: Ukázka začlenění interaktivní grafiky do HTML dokumentu [BC] Background Colour | show 255 255 255 [BI] Background Image | hide images/jvlLogo.gif [B ] Border | hide [BB] Bounding Box | hide [V~] Camera Direction | show 0 0 1 [DC] Depth Cueing | hide [EA] Edge Aura | hide [PT] Show jvx Points | hide small [ED] Show jvx Edges | hide [FC] Show jvx Faces | show [T ] Title | [WK] Working Path | C:\Program Files\Maple 11\JavaViewLib\ 80 [IP] Installation Path | C:\Program Files\Maple 11\JavaViewLib\ [OS] Operating System | Windows XP [BR] Browser | firefox [JV] JavaView Runtime | bin\javaview.bat [DG] Debugging | false [HTM] HTM Extension | htm [MPLVER] Maple Version | 11.020000 Vypsání hodnoty konkrétního parametru dosáhneme příkazem: > getInfoState("BB"); "hide" Nastavení provedeme pomocí příkazu set: > set(W="600", H="800"); Příkazem > set(reset); nastavíme znovu původní parametry. Příkaz > setWorkingPath("C:\Documents and Settings\plch\Dokumenty"): nastaví cestu k pracovnímu adresáři a vytvoří automaticky podadresáře mpl, jvx, htm a images, jars a models. Toto nastavení zůstává platné jen v aktuálně otevřeném zápisníku. Po zavření a znovunačtení zápisníku je nastavení zrušeno. Nápovědu ke knihovně JVL spustíme jedním z příkazů ?JVL, ?JavaView nebo ?JavaViewLib. Kromě exportu knihovna JVL nabízí i import souboru do Maplu. Grafický objekt formátu MPL nebo JVX můžeme příkazem import načíst do Maplu. Chceme-li importovat soubor jiného formátu než MPL a JVX, musíme nejprve načíst tento soubor do JavaView a uložit ho v jednom z požadovaných formátů. Příkaz runMarkupTree načte informace z mapleovské grafiky nebo souboru JVL (JVX nebo MPL) a vygeneruje odpovídající XML reprezentaci, kterou zobrazí v okně webového prohlížeče. Při použití tohoto příkazu nedochází k exportu (vytváření) souborů. V případě, že máme problémy např. se spuštěním JavaView, můžeme se příkazem set(DEBUG=true) přepnout do režimu ladění. Program JavaView nám pak vypisuje podrobnější informace o běžících procesech. Nastavením hodnoty DEBUG na false toto zobrazování opět vypneme. Podrobný popis všech příkazů knihovny lze najít v nápovědě k JVL přímo v Maplu. 2.5. Prezentace interaktivní grafiky na webu Pro zobrazení 3D objektů na webu je třeba nakopírovat JavaView do adresáře, kde jsou umístěny HTML dokumenty. Při prohlížení HTML stránky se pak 81 automaticky spustí applet JavaView a zobrazí zadaný soubor s 3D objektem. Dále uvádíme příklad volání appletu v HTML dokumentu: %jméno souboru s 3D objektem %zobrazuje osy %spustí rotaci objektu %kontrolní panel je skrytý %barva pozadí Všechny parametry, které je možno použít při volání appletu jsou popsány na adrese http://www.javaview.de/doc/userManual/appletParm.html. Chceme-li využít JavaView pouze pro zobrazení připravených interaktivních geometrií a nepotřebujeme objekt modelovat, je vhodné využít lite verzi JavaView, která je při načítání appletů mnohem rychlejší než plná verze. Výše popsaným způsobem je možno vytvářet galerie interaktivních 3D objektů k podpoře různých partií matematiky. Hotové galerie k diferenciálnímu a integrálnímu počtu funkcí více proměnných jsou volně přístupné na adresách http: //www.math.muni.cz/~plch/diplomky/musil/ a http://www.math.muni.cz/ ~plch/diplomky/galerie/. V těchto galeriích jsou prezentovány nejen interaktivní 3D grafy funkcí, ale i 3D animace. Zařazení animací je provedeno stejným způsobem jako zařazení ostatních objektů. 3. Interaktivní grafika v PDF dokumentu I když se možnosti publikování matematiky na webu s rozvojem podpory jazyka MathML výrazně zlepšují, PDF zůstává pro matematiky stále nejvhodnějším formátem. V předchozích odstavcích jsme si ukázali možnosti vkládání interaktivní grafiky do dokumentu na webu, vyvstává tedy přirozená otázka, zda je něco podobného možné i v rámci PDF dokumentu. Tato možnost úzce souvisí s vytvořením a rozvojem formátu U3D. Specifikace tohoto formátu byla zveřejněna v září roku 2005 organizací Ecma2 . Formát byl navržen jako standard pro data 3D objektů. Cílem bylo vytvořit jednotný datový formát pro jednoduchou výměnu dat a komunikaci mezi aplikacemi zaměřenými na práci s grafickými objekty. Tento formát začala podporovat i firma Adobe a to od specifikace PDF-1.6 (Adobe Acrobat 7.0 a Adobe Reader 7.0). 2Mezinárodní standardizační instituce. 82 3.1. Vytvoření 3D objektu ve formátu U3D K vytváření „matematických“ 3D objektů je možno využívat celou řadu specializovaných či obecných matematických programů. V dalším se ale omezíme pouze na popis převodu matematické 3D grafiky z programu Maple do formátu U3D. Aktuální verze Maplu (11) nenabízí3 možnost exportu 3D grafiky do formátu U3D. Otestovali jsme několik cest pro převod mapleovské grafiky do formátu U3D – přímé uložení grafiky v Maplu ve formátech DXF a VRML, zobrazení mapleovské grafiky pomocí JavaView a následné uložení ve formátech OBJ nebo VRML. Nejlepší výsledky dává export z Maplu do VRML a následný převod do U3D formátu pomocí komerčního programu Deep Exploration (http://www. righthemisphere.com/products/dexp/)4 . Popišme si nyní nejjednodušší způsob, jak lze z mapleovské grafiky získat soubor U3D. Postup si ilustrujme na konkrétním příkladě (výsledek je na obrázku 4). Obrázek 4: Grafický objekt ve formátu U3D 1. Vytvoříme obrázek v Maplu (obrázek převzat z [8]): 3Prozatím není export do U3D formátu implementován ani v jiných matematických progra- mech. 4V době vzniku tohoto příspěvku jsme objevili volně šiřitelný program pro konverze do formátu U3D Meshlab (http://meshlab.sourceforge.net/). Nemáme s ním ale prozatím praktické zkušenosti. 83 > pict:=plot3d(1+sin(10*x)^8*sin(10*y)^8/2,x=0..2*Pi, > y=0..Pi,coords=spherical,grid=[100,100], > style=patchnogrid, scaling=constrained, > projection=.5,color=[.8,.6,.2]): Přímý export z Maplu do VRML provedeme pomocí příkazu vrml z balíčku plottools. Příkazem > plottools[vrml](pict,"ob1.wrl"); vytvoříme soubor ob1.wrl v požadovaném formátu. Ne všechny parametry mapleovské grafiky se však při exportu zachovají – více o tom pojednáme v kapitole 3.2. 2. Soubor ob1.wrl načteme programem Deep Exploration. Při jeho otevírání je třeba v menu „Settings“ nastavit „Flip coordinate system“ na hodnotu „No“, jinak bude program Deep Exploration používat jiný souřadný systém, než program Maple. V programu Deep Exploration můžeme před konečným exportem do formátu U3D grafiku upravovat. Lze použít různé transformace jako je posunutí, rotace, zmenšení nebo zvětšení ve směru souřadných os. To vše můžeme provádět přímo myší na scéně nebo hodnoty transformací vyplnit do předložené tabulky. Před uložením grafického objektu je dále nutné v menu „Tools“ – „3DTools“ nastavit „Convert To Double Sided“, jinak se může stát, že při pohledu ze zadní strany bude objekt neviditelný. 3. Provedeme uložení grafiky do formátu U3D. 4. Soubor U3D zařadíme do PDF dokumentu (více viz. kapitola 3.3). Na obrázku 4 vidíme začleněnou grafiku i s nástroji 3D Toolbaru, který je součástí Adobe Readeru. Toolbar se zobrazí umístěním kurzoru myši na obrázek. Základní možnosti Toolbaru jsou dynamický zoom, posunutí, natočení, změna osvětlení, změna barvy pozadí či skrytí, zobrazení nebo izolování pouze určitých prvků modelu. Možné je rovněž využití různých zobrazovacích módů (Solid, Transparent, Shaded Illustration atd.). 3.2. Úskalí exportu z Maplu do VRML Jak jsme již naznačili v předcházející části, vzhled grafiky ve VRML souboru se může lišit od podoby, kterou nastavíme parametry příkazu plot3d v Maplu. Tato část je proto věnována jednomu úskalí exportu grafiky z Maplu do VRML. Příkazy > vrml(plot3d(3*sin(x)*cos(y),x=-Pi..Pi, > y=-Pi..Pi,tickmarks=[3,3,3],axes=frame),‘soubor.wrl‘, > tickback_color=brown,tickfore_color=yellow); exportujeme funkci společně s osami. Značky na osách budou ale znázorněny jako krychle, na jejichž stranách je uveden popis. Výsledek (obr. 5) není pro matematické publikace dobře použitelný. 84 Obrázek 5: Ukázka exportu os z Maplu do VRML Vzhledem k tomu, že zobrazení souřadných os je v „matematické“ grafice často nezbytné, připravili jsme v Maplu proceduru pro kreslení os tak, aby zůstávaly při exportu do VRML (a následně do U3D) zachovány. Procedura PlotAxes je ke stažení na adrese http://www.math.muni.cz/~plch/u3d/, její použití ilustruje následující příklad: > fce:=plot3d([1.2*u*cos(v),1*u*sin(v),u],u=-3..3,v=0..2*Pi, > style=patch): > osy:=plotAxes(4,4,5,.015): > ob1:=display([fce,osy], color=yellow): > vrml(ob2,"ob2.wrl"); Osy jsou vykresleny procedurou plotAxes, jejíž parametry jsou délky os (po řadě x, y, z) a jejich tloušťka. Funkce a osy zobrazíme společně pomocí příkazu display a následně uložíme do souboru ob2.wrl, výsledek po exportu je znázorněn na obrázku 6. 3.3. Vložení grafického objektu ve formátu U3D do PDF dokumentu Získaný grafický objekt ve formátu U3D vložíme do PDF dokumentu buď pomocí komerčního produktu Adobe Acrobat3D (http://www.adobe.com/products/ acrobat3d/) nebo použijeme sázecí systém TEX a balíček movie15 ([5]). V dalším se věnujeme pouze „nekomerční“ cestě, tj. využití TEXu a balíčku movie15. 85 Obrázek 6: Funkce a osy vytvořené procedurou Plotaxes Pro přímý výstup do PDF dokumentu použijeme pdfLATEX (požadována verze nejméně 1.20). Je-li PDF dokument generován cestou LATEX → dvips → ps2pdf, je nutno po balíčku movie15 načíst ještě balíčky graphics a hyperref. Pro korektní zobrazení výsledného dokumentu musíme použít Adobe Reader verze 8.1. (a vyšší). Balíček načteme ve zdrojovém souboru příkazem \usepackage[3D]{movie15} a vlastní začlenění interaktivní grafiky provedeme příkazem \includemovie, jehož syntaxe je: \includemovie[volby]{šířka}{výška}{soubor.u3d}. Podrobný popis všech voleb pro začleňování 3D grafických objektů najdeme v manuálu k balíčku movie15 ([5]). Zmíníme jen některé z nich. Volbou 3Dlights= nastavíme osvětlení objektu, například 3Dlights=Day nastaví denní barvy. Implicitně se používá osvětlení specifikované v 3D modelu. Volbou 3Dbg= nastavíme barvu pozadí. Hodnoty je možné zadávat jako čísla v pohyblivé desetinné čárce v rozsahu od 0 do 1. Volbou 3Drender= určíme zobrazovací mód, např. zobrazení drátěného modelu nastavíme pomocí 3Drender=Wireframe. Za nejdůležitější volby považujeme ty, kterými ovlivňujeme umístění objektu na scéně, případně různé pohledy na objekt. Budeme se jim proto věnovat podrobněji. 86 3.4. Optimální umístění objektu na scéně Umístění objektu na scéně (obr. 7) je specifikováno pomocí vektoru −−−→ COO směřujícího z počátku soustavy souřadnic do středu objektu (volba 3Dcoo), pomocí vektoru −−→ C2C směřujícího ze středu objektu do virtuální kamery (volba 3Dc2c) a pomocí vzdálenosti ROO virtuální kamery od objektu (volba 3Droo). Kromě toho lze volbou 3Daac nastavit průzorový úhel (aperture angel) kamery a volbou 3Droll otočení kamery o daný úhel kolem optické osy. −−→ C2C Y X Z −−−→ COO (0, 0, 0) AAC ROO Obrázek 7: Umístění objektu na scéně, převzato z [5] Pokud nejsou tyto parametry nastaveny, je virtuální kamera umístěna na pozici (0, 0, 0) a dále 3Droo=0, 3Dcoo=0 0 0, 3Dc2c=0 -1 0, 3Daac=30, 3Droll=0. Vzhledem k tomu, že výpočet optimálního nastavení těchto parametrů je poměrně obtížný, je výhodné použití příkazu \movieref s parametry 3Dcalculate nebo 3Dgetview, které nám pomohou určit hodnoty výše zmíněných parametrů. K určení vzdálenosti virtuální kamery tak, aby byl vidět celý objekt (nebo skupina objektů) slouží následující konstrukce: \includemovie[toolbar,label=navesti_1] 87 {\linewidth}{\linewidth}{soubor.u3d}\\ \movieref[3Dcalculate]{navesti_1}{Výpočet optimální vzdálenosti} Nyní opakovaně překládáme zdrojový dokument (dokud se nezbavíme varovných hlášení). Ve výsledném PDF dokumentu se vytvoří stránka s odkazem „Výpočet optimální vzdálenosti“. Kliknutím na tento odkaz se nám objeví okénko, kde jsou uvedeny optimální hodnoty parametrů 3Droo a případně 3Dcoo. Tyto hodnoty zkopírujeme do zdrojového textu a odstraníme příkaz na vytvoření odkazu. Ponecháme tedy jen příkaz \includemovie doplněný o číselné parametry: \includemovie[toolbar,label=navesti_1,3Droo=23.33, 3Dcoo=0 0.55 15]{\linewidth}{\linewidth}{soubor.u3d} Pokud chceme ovlivnit i natočení objektu na scéně, je výhodné použít příkaz \movieref s parametrem 3Dgetview. \includemovie[toolbar, label=navesti_2, 3Droo=23.33] {\linewidth}{\linewidth}{soubor.u3d}\\ \movieref[3Dgetview]{navesti_2}{Výpočet optimálního pohledu} Ve výsledném PDF dokumentu pak vidíme objekt, který pomocí prostředků Toolbaru Adobe Readeru nastavíme do námi požadované polohy. V případě, že použijeme volbu toolbar, zobrazí se tento umístěním kurzoru myši na obrázek. V opačném případě můžeme Toolbar vyvolat pravým tlačítkem myši (Show Toolbar / Hide Toolbar). Kliknutím na odkaz se pak otevře okno s hodnotami parametrů 3Dcoo, 3Dc2c, 3Droo, 3Droll a 3Daac, které odpovídají aktuálnímu pohledu v Readeru. Výpis hodnot je formátován v následující syntaxi { }{ } {}{}{} Jednotlivé hodnoty pak překopírujeme do odpovídajících parametrů příkazu \includemovie. Při použití této konstrukce je vhodné do příkazu \includemovie uvést již odečtený parametr 3Droo. 3.5. Vytvoření externího souboru s různými pohledy na scénu S využitím příkazu \movieref[3Dgetview] je také možno vytvořit pojmenované pohledy na scénu. V Adobe Readeru si nastavíme objekt do námi požadované polohy, odečteme parametry a tyto uložíme do externího souboru . Tento soubor obsahuje pro každý přednastavený pohled řádek s následující syntaxí: []{ }{ } {}{}{} Parametr je volitelný a určuje jméno daného pohledu. Pro parametry , , , , , , , a platí stejná pravidla jako pro odpovídající parametry ‘3Dcoo’, ‘3Dc2c’, 88 ‘3Droo’, ‘3Droll’ a ‘3Daac’. Je možné ponechat některé parametry prázdné použitím {}, v takovém případě se použije implicitní hodnota pro daný parametr. 3.6. Zobrazení různých pohledů na scénu Chceme-li ve výsledném dokumentu pracovat s různými pohledy na 3D objekt, máme několik možností. 1. Pomocí volby 3Dviews= příkazu \includemovie specifikujeme externí soubor s přednastavenými pohledy. Ve výsledném PDF dokumentu se tyto pojmenované pohledy zobrazí v Toolbaru a je možno z nich vybírat. 2. Pomocí příkazu \movieref vytvoříme hypertextový odkaz na 3D objekt. Přitom nastavíme jiný pohled na scénu. Syntaxe je \movieref[]{