# Cross-reference to “VIEW” of media9 prc content

I use the media9 package to insert a 3D model in my thesis. I created several views highlighting different parts of the model. Now when I describe the model within the text I would like to set a reference (hyperlink) to one of these views. E.g. when I describe the placement of acceleration sensors within the text I want a hyperlink that when clicked jumps to the picture and sets the view to acceleration sensors. Is this possible?

• Yes, it is possible. See ↗Fig. 10 of the media9 documentation. It is an example with links to views (named, numbered), specified in a views file. – AlexG Jun 25 '18 at 9:12
• @AlexG Thanks for the hint! However this seems to be only working when the created \mediabutton is on the same page as the 3D figure. Any suggestions? – me_ts Jun 25 '18 at 9:57
• Thanks for the reply, I will need some time to test this. – AlexG Jun 25 '18 at 10:01

Pkg media9 provides the command \mediabutton which can be used to insert a link that selects a pre-defined view of an embedded 3D object. If necessary, clicking the link also activates the object (so-called RichMedia annotation) before going to the 3D view.

However, it does not automatically navigate to the page containing the 3D object, if it happens to be different from the page where the link resides.

For this, a little JavaScript can be added to the \mediabutton by means of the jsaction=... option, put before 3Dgotoview=....

(To compile the example, download 3D file dice.u3d from CTAN into the working directory.)

\documentclass{article}
\usepackage{media9}

% write file with 2 views
\usepackage{filecontents}
\begin{filecontents*}{my_views.txt}
VIEW=Front
ROO=27
END
VIEW=Back
ROO=27
C2C=0 1 0
END
\end{filecontents*}

%%%%

\begin{document}
Link that navigates to the 3D object and selects a named view:
\mediabutton[
% navigate to document page with 3D object named dice'
jsaction=dice:{this.pageNum=annotRM['dice'].page;},
% select pre-defined view named Back'
3Dgotoview=dice:(Back)
]{\fbox{Back}}

\newpage

\includemedia[
label=dice, % name for referencing 3D object
width=0.5\linewidth,height=0.5\linewidth,