diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex')
13 files changed, 480 insertions, 256 deletions
diff --git a/Master/texmf-dist/tex/latex/bussproofs/bussproofs.sty b/Master/texmf-dist/tex/latex/bussproofs/bussproofs.sty index b5d7cc83bd5..8d2d4481a10 100644 --- a/Master/texmf-dist/tex/latex/bussproofs/bussproofs.sty +++ b/Master/texmf-dist/tex/latex/bussproofs/bussproofs.sty @@ -2,10 +2,31 @@ \def\BPmessage{Proof Tree (bussproofs) style macros. Version 1.0.} % bussproofs.sty. Version 1.0 % (c) 1994,1995,1996,2004,2005,2006. Copyright retained by Samuel R. Buss. +% +% ==== Legal statement: ==== +% This work may be distributed and/or modified under the +% conditions of the LaTeX Project Public License, either version 1.3 +% of this license or (at your option) any later version. +% The latest version of this license is in +% http://www.latex-project.org/lppl.txt. +% and version 1.3 or later is part of all distributions of LaTeX +% version 2005/12/1 or later. +% +% This work has the LPPL maintenance status 'maintained'. +% +% The Current Maintainer of the work is Sam Buss. +% +% This work consists of bussproofs.sty. +% ===== +% Informal summary of legal situation: % This software may be used and distributed freely, except that % if you make changes, you must change the file name to be different % than bussproofs.sty to avoid compatibility problems. +% The terms of the LaTeX Public License are the legally controlling terms +% and override any contradictory terms of the "informal situation". +% % Please report comments and bugs to sbuss@ucsd.edu. +% % Thanks to Felix Joachimski for making changes to let these macros % work in plain TeX in addition to LaTeX. Nothing has been done % to see if they work in AMSTeX. The comments below mostly @@ -261,7 +282,7 @@ % Parameters which control the style of the proof trees. % The user may wish to override these parameters locally or globally. -% BUT DONT CHANGE THE PARAMETERS BY CHANGING THIS FILE (to avoid +% BUT DON'T CHANGE THE PARAMETERS BY CHANGING THIS FILE (to avoid % future incompatibilities). Instead, you should change them in your % TeX document right after including this style file in the % header material of your LaTeX document. @@ -284,7 +305,7 @@ \def\proofSkipAmount{\vskip.8ex plus.8ex minus.4ex} % Space above and below a prooftree display. -\def\defaultRootPosition{\buildRootBottom} +\def\defaultRootPosition{\buildRootBottom} % Default: Proofs root at bottom %\def\defaultRootPosition{\buildRootTop} % Makes all proofs upside down \ifx\fCenter\undefined diff --git a/Master/texmf-dist/tex/latex/computational-complexity/cc.cls b/Master/texmf-dist/tex/latex/computational-complexity/cc.cls index 9bb0e2a613c..3e7439e4b41 100644 --- a/Master/texmf-dist/tex/latex/computational-complexity/cc.cls +++ b/Master/texmf-dist/tex/latex/computational-complexity/cc.cls @@ -268,7 +268,7 @@ {-2.9ex\@plus-.5ex\@minus-.2ex}% {1.5ex\@plus.5ex\@minus.2ex}% {\normalfont\large\bfseries\centering}} -\def\opt@fullstop#1{#1{\tracingall\has@fullstop#1.\@@@ +\def\opt@fullstop#1{#1{\has@fullstop#1.\@@@ \if@tempswa\else \has@exlamationmark#1!\@@@ \if@tempswa\else diff --git a/Master/texmf-dist/tex/latex/dvdcoll/dvdcoll.cls b/Master/texmf-dist/tex/latex/dvdcoll/dvdcoll.cls index 507ea447d5c..81e46fcb1e7 100644 --- a/Master/texmf-dist/tex/latex/dvdcoll/dvdcoll.cls +++ b/Master/texmf-dist/tex/latex/dvdcoll/dvdcoll.cls @@ -22,7 +22,7 @@ % \NeedsTeXFormat{LaTeX2e}% % -\ProvidesClass{dvdcoll}[2006/10/06 dvdcoll.cls v0.6 - Josef Kleber (C) 2006]% +\ProvidesClass{dvdcoll}[2006/10/06 dvdcoll.cls v0.6a - Josef Kleber (C) 2006]% % \RequirePackage{xkeyval}% \RequirePackage{ifthen}% @@ -334,6 +334,7 @@ \renewcommand*\dc@option@titlenumbering{normal}% % \setkeys{DvdSeries}{#1}% + \SetSeason{1}% \chapter{#2}% \def\dc@series{#2}% \setcounter{season}{-1}% @@ -504,6 +505,7 @@ \newenvironment{Dvd}[2]% {% % + \endlinechar=-1% %Hack von Markus Kohm zur Behebung des \bottomrule-Problems bei \endtabularx in Environments (-> Google-Groups) \expandafter\let\expandafter\SavedEndTab\csname endtabular*\endcsname% \expandafter\renewcommand\expandafter*\csname endtabular*\endcsname{% @@ -518,7 +520,7 @@ \phantomsection% korrigiert fehlerhafte (falsch positionierte) Links auf dvd-Tabellen \noindent% % verhindert overfull \hbox Errors wegen \tabularx{\linewidth}... - \tabularx{\linewidth}{>{\dc@size@table@cells\hfill}r>{\dc@size@table@cells}X>{\dc@size@table@cells}r}% + \tabularx{\linewidth}{>{\dc@size@table@cells}l>{\dc@size@table@cells}X>{\dc@size@table@cells}r}% \multicolumn{3}{l}{\dc@size@table@title\dc@title\dc@option@dvdlabel\dc@print@dvdlabel{#2}}\\% \midrule% }% diff --git a/Master/texmf-dist/tex/latex/gnuplottex/gnuplottex.sty b/Master/texmf-dist/tex/latex/gnuplottex/gnuplottex.sty index e4427eee8dc..4fe162fc373 100644 --- a/Master/texmf-dist/tex/latex/gnuplottex/gnuplottex.sty +++ b/Master/texmf-dist/tex/latex/gnuplottex/gnuplottex.sty @@ -41,16 +41,14 @@ %% \NeedsTeXFormat{LaTeX2e}[1999/12/01] \ProvidesPackage{gnuplottex} - [2006/04/02 v0.1 gnuplot graphs in LaTeX] -\RequirePackage{graphicx,moreverb,keyval} + [2006/10/28 v0.2 gnuplot graphs in LaTeX] +\RequirePackage{latexsym,graphicx,moreverb,keyval} \newif\ifShellEscape \newif\ifmiktex \miktexfalse -\newif\ifpdf \pdffalse \DeclareOption{shell}{\ShellEscapetrue} \DeclareOption{noshell}{\ShellEscapefalse} \DeclareOption{miktex}{\global\miktextrue} -\DeclareOption{pdf}{\pdftrue} \ExecuteOptions{shell} \ProcessOptions\relax @@ -82,9 +80,9 @@ \def\gnuplotverbatimwrite#1{% \def\BeforeStream - {\message{Opening gnuplot stream=\figname.gnuplot}% - \immediate\write\verbatim@out{\string set terminal postscript eps enhanced} -\immediate\write\verbatim@out{\string set output '\figname.eps'} + {\message{Opening gnuplot stream #1}% + \immediate\write\verbatim@out{\string set terminal latex} +\immediate\write\verbatim@out{\string set output '\figname.tex'} } \@bsphack \immediate\openout \verbatim@out #1 @@ -97,74 +95,41 @@ \verbatim@start} \def\endgnuplotverbatimwrite{% \immediate\closeout\verbatim@out - \@esphack} -\define@key{pic}{width}{\def\gnuplotwidth{#1}} -\define@key{pic}{height}{\def\gnuplotheight{#1}} + \@esphack +\catcode`\\0 +\catcode`\{1 +\catcode`\}2 +\catcode`\$3 +\catcode`\&4 +\catcode`\^^M5 +\catcode`\#6 +\catcode`\^7 +\catcode`\_8 +\catcode`\ 10 +\catcode`\%14} +\define@key{pic}{scale}{\def\gnuplotscale{#1}} \newenvironment{gnuplot}[1][]{\stepcounter{fignum}% -\let\gnuplotwidth\undefined -\let\gnuplotheight\undefined +\def\gnuplotscale{1} \setkeys{pic}{#1} \xdef\gnuplotCutFile{\figname.gnuplot} \gnuplotverbatimwrite{\gnuplotCutFile}} {\endgnuplotverbatimwrite% \gnuplotgraphicsinclude} \long\gdef\gnuplotgraphicsprocess{% - \ifShellEscape +\ifShellEscape \IfFileExists{\figname.gnuplot}{% \immediate\write18{gnuplot \figname.gnuplot} -\IfFileExists{\figname.eps}{% -\ifpdf -\immediate\write18{epstopdf \figname.eps} -\IfFileExists{\figname.pdf}{% +\IfFileExists{\figname.tex}{% \PackageInfo{gnuplottex} {\figname.gnuplot converted}} {\PackageWarningNoLine{gnuplottex} -{Conversion of \figname.gnuplot failed.}} -\else -\PackageInfo{gnuplottex} -{\figname.gnuplot converted} -\fi} -{\PackageWarningNoLine{gnuplottex} {Conversion of \figname.gnuplot failed.}}}{} \fi} \long\gdef\gnuplotgraphicsinclude{\gnuplotgraphicsprocess% -\ifpdf -\IfFileExists{\figname.pdf}{% -\ifx\gnuplotwidth\undefined -\ifx\gnuplotheight\undefined -\includegraphics{\figname} -\else -\includegraphics[height=\gnuplotheight]{\figname} -\fi -\else -\ifx\gnuplotheight\undefined -\includegraphics[width=\gnuplotwidth]{\figname} -\else -\includegraphics[width=\gnuplotwidth,height=\gnuplotheight]{\figname} -\fi -\fi -} +\IfFileExists{\figname.tex}{% +\scalebox{\gnuplotscale}{\input{\figname}}} {\PackageWarningNoLine{gnuplottex} {Please convert \figname.gnuplot manually}} -\else -\IfFileExists{\figname.eps}{% -\ifx\gnuplotwidth\undefined -\ifx\gnuplotheight\undefined -\includegraphics{\figname} -\else -\includegraphics[height=\gnuplotheight]{\figname} -\fi -\else -\ifx\gnuplotheight\undefined -\includegraphics[width=\gnuplotwidth]{\figname} -\else -\includegraphics[width=\gnuplotwidth,height=\gnuplotheight]{\figname} -\fi -\fi -} -{\PackageWarningNoLine{gnuplottex} -{Please convert \figname.gnuplot manually}} -\fi } \endinput %% diff --git a/Master/texmf-dist/tex/latex/movie15/movie15.sty b/Master/texmf-dist/tex/latex/movie15/movie15.sty index 44702431632..e71a6b6414f 100644 --- a/Master/texmf-dist/tex/latex/movie15/movie15.sty +++ b/Master/texmf-dist/tex/latex/movie15/movie15.sty @@ -1,4 +1,4 @@ -% Copyright 2004 Alexander Grahn +% Copyright 2004--2006 Alexander Grahn % % This material is subject to the LaTeX Project Public License. See % http://www.ctan.org/tex-archive/help/Catalogue/licenses.lppl.html @@ -9,21 +9,40 @@ % \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{movie15}[2006/08/15] +\ProvidesPackage{movie15}[2006/10/12] \RequirePackage{keyval} \RequirePackage{ifthen} \RequirePackage{ifpdf} +\RequirePackage{ifdraft} -\newboolean{@MXV@iiiDfeat}% enable 3D features from PDF-1.6 spec? +\newboolean{@MXV@iiiDfeat} % enable 3D features from PDF-1.6 spec? \setboolean{@MXV@iiiDfeat}{false}% -\newboolean{@MXV@iiid}%set to true if a 3D file is being embedded +\newboolean{@MXV@iiid} %set to true if a 3D file is being embedded +\newboolean{@MXV@draft} %according to global setting +\newboolean{@MXV@@draft} %per inclusion setting + +\ifdraft{%globally set by document class + \setboolean{@MXV@draft}{true}% +}{% + \setboolean{@MXV@draft}{false}% +}% + +%override global setting +\DeclareOption{draft}{% + \setboolean{@MXV@draft}{true}% +} +\DeclareOption{final}{% + \setboolean{@MXV@draft}{false}% +} \DeclareOption{3D}{% \setboolean{@MXV@iiiDfeat}{true}% } -\DeclareOption*{\PackageWarning{movie15}{Unknown Option \CurrentOption}} -\ProcessOptions\relax +\DeclareOption*{% + \PackageWarning{movie15}{Unknown Option \CurrentOption} +} +\ProcessOptions*\relax %correct pdfTeX version? \ifpdf% @@ -175,6 +194,12 @@ \setboolean{@MXV@linkstop}{false}% \setboolean{@MXV@linkclose}{false}% \setboolean{@MXV@linkreset}{false}% + \ifthenelse{\boolean{@MXV@draft}}{% + \setboolean{@MXV@@draft}{true}% + }{% + \setboolean{@MXV@@draft}{false}% + }% + % \gdef\@MXV@label{}% for movieref \gdef\@MXV@@label{}% for movieref \gdef\@MXV@mime{@MXV@auto}% @@ -318,6 +343,18 @@ }}}}}}}}}}}}}}}}% } +%draft box +\def\@MXV@draftbox#1#2#3#4{%width height depth filename + \edef\@MXV@oldfboxsep{\the\fboxsep}% + \setlength{\fboxsep}{-\fboxrule}% + \framebox[#1][l]{% + \vrule width 0pt height #2 depth #3% + \edef\@tempa{#4}% + \raisebox{\depth}[0pt][0pt]{ \ttfamily\expandafter\strip@prefix\meaning\@tempa}% + }% + \setlength{\fboxsep}{\@MXV@oldfboxsep}% +} + \ifthenelse{\boolean{@MXV@iiiDfeat}}{% 3D related definitions and macros \RequirePackage{fp}% needed for fixed point calculus \newcount\@MXV@viewscount%counter for number of 3D views per inclusion @@ -1660,7 +1697,9 @@ }{}% }{}% \@MXV@labeltoaux{@MXV@\@MXV@@label.annotid}{\the\@MXV@includes}% - \@MXV@newlabel{@MXV@\@MXV@@label.annotid}{\the\@MXV@includes}% + \if@MXV@presentation\else% + \@MXV@newlabel{@MXV@\@MXV@@label.annotid}{\the\@MXV@includes}% + \fi% \fi% % \ifthenelse{\boolean{@MXV@externalviewer}}{% @@ -1979,22 +2018,26 @@ }% }{}% % - %insert textbox, obscured by poster - \ifthenelse{\boolean{@MXV@boxopt}\AND\NOT\boolean{@MXV@textoverposter}}{% - \makebox[0pt][l]{\usebox{\@MXV@textbox}}% - }{}% - % - %insert annotation - \ifthenelse{\boolean{@MXV@iiid}}{% - \@MXV@includeiiid{\@MXV@width}{\@MXV@height}{\@MXV@depth}{#4}% + \ifthenelse{\boolean{@MXV@@draft}}{% + \@MXV@draftbox{\@MXV@width}{\@MXV@height}{\@MXV@depth}{#4}% }{% - \@MXV@includemovie{\@MXV@width}{\@MXV@height}{\@MXV@depth}{#4}% + %insert textbox, obscured by poster + \ifthenelse{\boolean{@MXV@boxopt}\AND\NOT\boolean{@MXV@textoverposter}}{% + \makebox[0pt][l]{\usebox{\@MXV@textbox}}% + }{}% + % + %insert annotation + \ifthenelse{\boolean{@MXV@iiid}}{% + \@MXV@includeiiid{\@MXV@width}{\@MXV@height}{\@MXV@depth}{#4}% + }{% + \@MXV@includemovie{\@MXV@width}{\@MXV@height}{\@MXV@depth}{#4}% + }% + % + %insert textbox, overprinting the poster + \ifthenelse{\boolean{@MXV@boxopt}\AND\boolean{@MXV@textoverposter}}{% + \makebox[0pt][r]{\usebox{\@MXV@textbox}}% + }{}% }% - % - %insert textbox, overprinting the poster - \ifthenelse{\boolean{@MXV@boxopt}\AND\boolean{@MXV@textoverposter}}{% - \makebox[0pt][r]{\usebox{\@MXV@textbox}}% - }{}% }% } @@ -2166,12 +2209,195 @@ /Next <<% /S/JavaScript% /JS (try{% + %constructor for doubly linked list + function List() { + this.first_node = null; + this.last_node = new Node(undefined); + } + List.prototype.push_back = function (x) { + var new_node = new Node(x); + if (this.first_node == null) { + this.first_node = new_node; + new_node.prev = null; + } else { + new_node.prev = this.last_node.prev; + new_node.prev.next = new_node; + } + new_node.next = this.last_node; + this.last_node.prev = new_node; + }; + List.prototype.move_to_front = function (it) { + var node = it.get(); + if (node.next != null && node.prev != null) { + node.next.prev = node.prev; + node.prev.next = node.next; + node.prev = null; + node.next = this.first_node; + this.first_node.prev = node; + this.first_node = node; + } + }; + List.prototype.begin = function () { + var i = new Iterator(); + i.target = this.first_node; + return i; + }; + List.prototype.end = function () { + var i = new Iterator(); + i.target = this.last_node; + return i; + }; + function Iterator (it) { + if ( it != undefined ) { + this.target = it.target; + } else { + this.target = null; + } + } + Iterator.prototype.set = function (it) {this.target = it.target;}; + Iterator.prototype.get = function () {return this.target;}; + Iterator.prototype.deref = function () {return this.target.data;}; + Iterator.prototype.incr = function () { + if (this.target.next != null) {this.target = this.target.next;} + }; + %constructor for node objects that populate the linked list + function Node (x) { + this.prev=null; + this.next=null; + this.data=x; + } + function sqr (r) {return r*r;} %helper function + %The following code borrows heavily from Bernd Gaertners `Miniball' software, + %originally written in C++, for computing the smallest enclosing ball of a + %set of points; see: http://www.inf.ethz.ch/personal/gaertner/miniball.html + function Basis () { + this.m=0; + this.q0 = new Array(3); + this.z = new Array(4); + this.f = new Array(4); + this.v = new Array(new Array(3), new Array(3), new Array(3), new Array(3)); + this.a = new Array(new Array(3), new Array(3), new Array(3), new Array(3)); + this.c = new Array(new Array(3), new Array(3), new Array(3), new Array(3)); + this.sqr_r = new Array(4); + this.current_c = this.c[0]; + this.current_sqr_r=0; + this.reset(); + } + Basis.prototype.center = function () {return this.current_c;}; + Basis.prototype.size = function () {return this.m;}; + Basis.prototype.pop = function () {--this.m;}; + Basis.prototype.excess = function (p) { + var e = -this.current_sqr_r; + for (var k=0; k<3; ++k) { + e += sqr(p[k]-this.current_c[k]); + } + return e; + }; + Basis.prototype.reset = function () { + this.m = 0; + for (var j=0; j<3; ++j) { + this.c[0][j]=0; + } + this.current_c = this.c[0]; + this.current_sqr_r = -1; + }; + Basis.prototype.push = function (p) { + var i, j; + var eps=1e-32; + if (this.m==0) { + for (i=0; i<3; ++i) { + this.q0[i]=p[i]; + } + for (i=0; i<3; ++i) { + this.c[0][i]=this.q0[i]; + } + this.sqr_r[0]=0; + } else { + for (i=0; i<3; ++i) { + this.v[this.m][i] = p[i]-this.q0[i]; + } + for (i=1; i<this.m; ++i) { + this.a[this.m][i] = 0; + for (j=0; j<3; ++j) { + this.a[this.m][i] += this.v[i][j]*this.v[this.m][j]; + } + this.a[this.m][i]*=(2/this.z[i]); + } + for (i=1; i<this.m; ++i) { + for (j=0; j<3; ++j) { + this.v[this.m][j] -= this.a[this.m][i]*this.v[i][j]; + } + } + this.z[this.m]=0; + for (j=0; j<3; ++j) { + this.z[this.m] += sqr(this.v[this.m][j]); + } + this.z[this.m]*=2; + if (this.z[this.m]<eps*this.current_sqr_r) { + return false; + } + var e = -this.sqr_r[this.m-1]; + for (i=0; i<3; ++i) { + e += sqr(p[i]-this.c[this.m-1][i]); + } + this.f[this.m]=e/this.z[this.m]; + for (i=0; i<3; ++i) { + this.c[this.m][i] = this.c[this.m-1][i]+this.f[this.m]*this.v[this.m][i]; + } + this.sqr_r[this.m] = this.sqr_r[this.m-1]+e*this.f[this.m]/2; + } + this.current_c = this.c[this.m]; + this.current_sqr_r = this.sqr_r[this.m]; + ++this.m; + return true; + }; + function Miniball () { + this.L = new List(); + this.B = new Basis(); + this.support_end=new Iterator(); + } + Miniball.prototype.mtf_mb = function (it) { + var i = new Iterator(it); + this.support_end.set(this.L.begin()); + if ((this.B.size())==4) {return;} + for (var k = new Iterator(this.L.begin()); k.get()!=i.get();) { + var j=new Iterator(k); + k.incr(); + if (this.B.excess(j.deref()) > 0) { + if (this.B.push(j.deref())) { + this.mtf_mb(j); + this.B.pop(); + if (this.support_end.get() == j.get()) { + this.support_end.incr(); + } + this.L.move_to_front(j); + } + } + } + }; + Miniball.prototype.check_in = function (b) { + this.L.push_back(b); + }; + Miniball.prototype.build = function () { + this.B.reset(); + this.support_end.set(this.L.begin()); + this.mtf_mb(this.L.end()); + }; + Miniball.prototype.center = function () { + return this.B.center(); + }; + Miniball.prototype.radius = function () { + return Math.sqrt(this.B.current_sqr_r); + }; + % + %create Miniball object + var mb = new Miniball(); + % %aperture angle of the virtual camera var aac = \@MXV@calc; % - %list of nodes - var nodes = annot3D["\@MXV@label"].context3D.scene.nodes; - var cnt = nodes.count; + %list of mesh nodes + var meshes = annot3D["\@MXV@label"].context3D.scene.meshes; % %auxiliary vectors var dir = new annot3D["\@MXV@label"].context3D.Vector3(); @@ -2181,110 +2407,96 @@ %auxiliary 4x4 matrix var bbox4x4 = new annot3D["\@MXV@label"].context3D.Matrix4x4(); % - %centre of global bounding box --> centre of orbit - var coo = % - annot3D["\@MXV@label"].context3D.scene.computeBoundingBox().center; - % - %radius of bounding sphere - var rBSphere = 0; - % - %iterate over all nodes in the scene - for(i=0; i<cnt; i++){% - var node = nodes.getByIndex(i); + %iterate over all mesh nodes in the scene + for(i=0; i<meshes.count; i++){% + var mesh = meshes.getByIndex(i); + % + %get the bbox of the mesh (local coordinates) + var bbox = mesh.computeBoundingBox(); + % + %local to parent transformation matrix + var trans = mesh.transform.transpose; % - %but inspect mesh nodes only - if(node.constructor.name == 'Mesh'){% - %get the bbox of the node (local coordinates) - var bbox = node.computeBoundingBox(); - % - %local to parent transformation matrix - var trans = node.transform.transpose; - % - %build local to world transformation matrix by recursively - %multiplying the parent's transf. matrix on the left - var parent = node.parent; - while(parent.constructor.name != 'Scene'){% - trans = parent.transform.transpose.multiply(trans); - parent = parent.parent; - }% - % - %transform the local bounding box corner coordinates to - %world coordinates for bounding sphere radius - %determination; - %Matrix4x4 method transformDirection(<Vector3>) seems - %to be bugged, therefore we must resort to the - %multiply(<Matrix4x4>) method using an auxiliary matrix - %which contains the local bounding box corner coordinates - % - %auxiliary matrix from bbox.min coordinates - bbox4x4.setView(bbox.min, dir, up); - % - %transform to world coordinates - bbox4x4 = trans.multiply(bbox4x4.transpose); - % - %extract the transformed coordinates - corner.set(bbox4x4.transpose.translation); - % - %vector from centre of orbit to bbox corner position - corner.subtractInPlace(coo); - % - %update bounding sphere radius - rBSphere = Math.max(rBSphere, corner.length); - % - %the same procedure with bbox.max - bbox4x4.setView(bbox.max, dir, up); - bbox4x4 = trans.multiply(bbox4x4.transpose); - corner.set(bbox4x4.transpose.translation); - corner.subtractInPlace(coo); - rBSphere = Math.max(rBSphere, corner.length); - % - %and with all remaining 6 bbox corners - corner.set(bbox.min.x, bbox.max.y, bbox.max.z); - bbox4x4.setView(corner, dir, up); - bbox4x4 = trans.multiply(bbox4x4.transpose); - corner.set(bbox4x4.transpose.translation); - corner.subtractInPlace(coo); - rBSphere = Math.max(rBSphere, corner.length); - % - corner.set(bbox.min.x, bbox.min.y, bbox.max.z); - bbox4x4.setView(corner, dir, up); - bbox4x4 = trans.multiply(bbox4x4.transpose); - corner.set(bbox4x4.transpose.translation); - corner.subtractInPlace(coo); - rBSphere = Math.max(rBSphere, corner.length); - % - corner.set(bbox.min.x, bbox.max.y, bbox.min.z); - bbox4x4.setView(corner, dir, up); - bbox4x4 = trans.multiply(bbox4x4.transpose); - corner.set(bbox4x4.transpose.translation); - corner.subtractInPlace(coo); - rBSphere = Math.max(rBSphere, corner.length); - % - corner.set(bbox.max.x, bbox.min.y, bbox.min.z); - bbox4x4.setView(corner, dir, up); - bbox4x4 = trans.multiply(bbox4x4.transpose); - corner.set(bbox4x4.transpose.translation); - corner.subtractInPlace(coo); - rBSphere = Math.max(rBSphere, corner.length); - % - corner.set(bbox.max.x, bbox.min.y, bbox.max.z); - bbox4x4.setView(corner, dir, up); - bbox4x4 = trans.multiply(bbox4x4.transpose); - corner.set(bbox4x4.transpose.translation); - corner.subtractInPlace(coo); - rBSphere = Math.max(rBSphere, corner.length); - % - corner.set(bbox.max.x, bbox.max.y, bbox.min.z); - bbox4x4.setView(corner, dir, up); - bbox4x4 = trans.multiply(bbox4x4.transpose); - corner.set(bbox4x4.transpose.translation); - corner.subtractInPlace(coo); - rBSphere = Math.max(rBSphere, corner.length); + %build local to world transformation matrix by recursively + %multiplying the parent's transf. matrix on the left + var parent = mesh.parent; + while(parent.constructor.name != 'Scene'){% + trans = parent.transform.transpose.multiply(trans); + parent = parent.parent; }% + % + %transform the local bounding box corner coordinates to + %world coordinates for bounding sphere determination; + %Matrix4x4 method transformDirection(<Vector3>) seems + %to be bugged, therefore we must resort to the + %multiply(<Matrix4x4>) method using an auxiliary matrix + %which contains the local bounding box corner coordinates + % + %auxiliary matrix from bbox.min coordinates + bbox4x4.setView(bbox.min, dir, up); + % + %transform to world coordinates + bbox4x4 = trans.multiply(bbox4x4.transpose); + % + %extract the transformed coordinates + corner.set(bbox4x4.transpose.translation); + % + %check-in corner position into Miniball + mb.check_in(new Array(corner.x, corner.y, corner.z)); + % + %the same procedure with bbox.max + bbox4x4.setView(bbox.max, dir, up); + bbox4x4 = trans.multiply(bbox4x4.transpose); + corner.set(bbox4x4.transpose.translation); + mb.check_in(new Array(corner.x, corner.y, corner.z)); + % + %and with all remaining 6 bbox corners + corner.set(bbox.min.x, bbox.max.y, bbox.max.z); + bbox4x4.setView(corner, dir, up); + bbox4x4 = trans.multiply(bbox4x4.transpose); + corner.set(bbox4x4.transpose.translation); + mb.check_in(new Array(corner.x, corner.y, corner.z)); + % + corner.set(bbox.min.x, bbox.min.y, bbox.max.z); + bbox4x4.setView(corner, dir, up); + bbox4x4 = trans.multiply(bbox4x4.transpose); + corner.set(bbox4x4.transpose.translation); + mb.check_in(new Array(corner.x, corner.y, corner.z)); + % + corner.set(bbox.min.x, bbox.max.y, bbox.min.z); + bbox4x4.setView(corner, dir, up); + bbox4x4 = trans.multiply(bbox4x4.transpose); + corner.set(bbox4x4.transpose.translation); + mb.check_in(new Array(corner.x, corner.y, corner.z)); + % + corner.set(bbox.max.x, bbox.min.y, bbox.min.z); + bbox4x4.setView(corner, dir, up); + bbox4x4 = trans.multiply(bbox4x4.transpose); + corner.set(bbox4x4.transpose.translation); + mb.check_in(new Array(corner.x, corner.y, corner.z)); + % + corner.set(bbox.max.x, bbox.min.y, bbox.max.z); + bbox4x4.setView(corner, dir, up); + bbox4x4 = trans.multiply(bbox4x4.transpose); + corner.set(bbox4x4.transpose.translation); + mb.check_in(new Array(corner.x, corner.y, corner.z)); + % + corner.set(bbox.max.x, bbox.max.y, bbox.min.z); + bbox4x4.setView(corner, dir, up); + bbox4x4 = trans.multiply(bbox4x4.transpose); + corner.set(bbox4x4.transpose.translation); + mb.check_in(new Array(corner.x, corner.y, corner.z)); }% % + %compute the smallest enclosing bounding sphere + mb.build(); + % + %bounding sphere centre + var coo = new annot3D["\@MXV@label"].context3D.Vector3(); + coo.set((mb.center())[0], (mb.center())[1], (mb.center())[2]); + % %radius of orbit - var roo = rBSphere / Math.sin(aac * Math.PI / 360.); + var roo = mb.radius()/ Math.sin(aac * Math.PI / 360.); % %assemble result string var res = ''; @@ -2661,6 +2873,16 @@ } %key definitions for options to \includemovie +\define@key{movie15}{draft}[true]{% + \setboolean{@MXV@@draft}{#1}% +} +\define@key{movie15}{final}[true]{% + \ifthenelse{\equal{#1}{true}}{% + \setboolean{@MXV@@draft}{false}% + }{% + \setboolean{@MXV@@draft}{true}% + }% +} \define@key{movie15}{label}{%for use with movieref \gdef\@MXV@label{#1}% } diff --git a/Master/texmf-dist/tex/latex/pgf/frontendlayer/pgfpict2e.sty b/Master/texmf-dist/tex/latex/pgf/frontendlayer/pgfpict2e.sty index 04a298eac4e..830fa0c6428 100644 --- a/Master/texmf-dist/tex/latex/pgf/frontendlayer/pgfpict2e.sty +++ b/Master/texmf-dist/tex/latex/pgf/frontendlayer/pgfpict2e.sty @@ -50,8 +50,8 @@ \pgfsys@endpurepicture}} -\def\oval{\pgf@ifnextchar[{\pgfpictIIe@oval}{\pgfpictIIe@oval[20pt]}} -\def\pgfpictIIe@oval[#1](#2,#3){\pgf@ifnextchar[{\pgfpictIIe@@oval[#1](#2,#3)}{\pgfpictIIe@@oval[#1](#2,#3)[]}} +\def\oval{\pgfutil@ifnextchar[{\pgfpictIIe@oval}{\pgfpictIIe@oval[20pt]}} +\def\pgfpictIIe@oval[#1](#2,#3){\pgfutil@ifnextchar[{\pgfpictIIe@@oval[#1](#2,#3)}{\pgfpictIIe@@oval[#1](#2,#3)[]}} \def\pgfpictIIe@@oval[#1](#2,#3)[#4]{{% \pgfsys@beginpurepicture% \@tfor\reserved@a:=#4\do{\csname pgfpictIIe@clip\reserved@a\endcsname}% diff --git a/Master/texmf-dist/tex/latex/pgf/utilities/pgfpages.sty b/Master/texmf-dist/tex/latex/pgf/utilities/pgfpages.sty index ed5356f2bbb..639fb071a3f 100644 --- a/Master/texmf-dist/tex/latex/pgf/utilities/pgfpages.sty +++ b/Master/texmf-dist/tex/latex/pgf/utilities/pgfpages.sty @@ -62,11 +62,11 @@ % % \pgfpagesuselayout{resize to}[a4paper] -\def\pgfpagesuselayout#1{\pgf@ifnextchar[{\pgf@pagelayout{#1}}{\pgf@pagelayout{#1}[]}} +\def\pgfpagesuselayout#1{\pgfutil@ifnextchar[{\pgf@pagelayout{#1}}{\pgf@pagelayout{#1}[]}} \def\pgf@pagelayout#1[#2]{ \csname pgfpages@layoutbefore@#1\endcsname \setkeys{pgfpagesuselayoutoption}{#2} - \pgf@ifundefined{pgfpages@layout@#1}{ + \pgfutil@ifundefined{pgfpages@layout@#1}{ \PackageError{pgfpages}{Page layout `#1' undefined.}{} } { @@ -1006,7 +1006,7 @@ \newcommand\pgfsetupphysicalpagesizes{% % The following code was send to me by Rolf Niepraschk - \ifx\Gin@driver\pgf@empty\else% + \ifx\Gin@driver\pgfutil@empty\else% \filename@parse{\Gin@driver}\@tempswafalse% \def\reserved@a{dvips}% \ifx\filename@base\reserved@a\@tempswatrue\fi% diff --git a/Master/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty b/Master/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty index 7c0004d3333..05db9decaea 100644 --- a/Master/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty +++ b/Master/texmf-dist/tex/latex/pgf/utilities/pgfrcs.sty @@ -7,6 +7,9 @@ % % See the file doc/generic/pgf/licenses/LICENSE for more details. +\input pgfutil-common.tex +\input pgfutil-latex.def + \input{pgfrcs.code.tex} \endinput diff --git a/Master/texmf-dist/tex/latex/screenplay/hardmarg.sty b/Master/texmf-dist/tex/latex/screenplay/hardmarg.sty index 8c7e84769d5..7264746835a 100644 --- a/Master/texmf-dist/tex/latex/screenplay/hardmarg.sty +++ b/Master/texmf-dist/tex/latex/screenplay/hardmarg.sty @@ -32,14 +32,14 @@ %% http://dvc.org.uk/gplv2.txt %% %% +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+= -\ProvidesPackage{hardmarg}[2006/10/08 v1.504 +\ProvidesPackage{hardmarg}[2006/10/25 v1.516 For use with class screenplay (C)2006 John Pate released under the GNU General Public License] \setlength{\textwidth}{6.0in} -\renewcommand*{\widthfudge}{0in} -\renewcommand*{\dialwidth}{3.0in} -\renewcommand*{\parenwidth}{1.5in} +\setlength{\widthgutter}{0in} +\setlength{\dialwidth}{3.0in} +\setlength{\parenwidth}{1.5in} %% %% Hail Eris! All Hail Discordia! %% diff --git a/Master/texmf-dist/tex/latex/screenplay/screenplay.cls b/Master/texmf-dist/tex/latex/screenplay/screenplay.cls index 89cd0267c00..ccce7fb2449 100644 --- a/Master/texmf-dist/tex/latex/screenplay/screenplay.cls +++ b/Master/texmf-dist/tex/latex/screenplay/screenplay.cls @@ -33,13 +33,13 @@ %% %% +=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+=+= \NeedsTeXFormat{LaTeX2e}[2003/12/01] -\ProvidesClass{screenplay}[2006/10/08 v1.504 +\ProvidesClass{screenplay}[2006/10/25 v1.516 LaTeX2e Draft Screenplay document class (C)2006 John Pate released under the GNU General Public License] \DeclareOption*{% \PackageError{screenplay}{Unwanted option '\CurrentOption'}% - {There are no options available for class screenplay v1.504}} + {There are no options available for class screenplay v1.516}} \ProcessOptions\relax \RequirePackage{ifthen}[2001/05/26] \LoadClass[12pt,letterpaper,onecolumn,oneside]{article}[2004/02/16] @@ -53,7 +53,7 @@ released under the GNU General Public License] \pagestyle{myheadings} \setlength{\baselineskip}{12pt plus 0pt minus 0pt} \renewcommand*{\baselinestretch}{0.8} -\newcommand*{\dialfix}{\vspace{3pt}} +\newcommand*{\dialfix}{\vspace{2pt}} \setlength{\parskip}{\baselineskip} \setlength{\parindent}{0in} \newcommand*{\slugspace}{\hspace{2.0em plus 0em minus 0em}} @@ -63,14 +63,21 @@ released under the GNU General Public License] \setlength{\headsep}{0.4in} \setlength{\topskip}{0in} \setlength{\textheight}{9.5in} -\setlength{\textwidth}{6.1in} -\newcommand*{\widthfudge}{0.1in} -\newcommand*{\dialwidth}{3.2in} +\setlength{\textwidth}{6.0in} +\newlength{\widthgutter} +\setlength{\widthgutter}{0.1in} +\addtolength{\textwidth}{\widthgutter} +\newlength{\dialwidth} +\setlength{\dialwidth}{3.0in} +\newlength{\dialgutter} +\setlength{\dialgutter}{0.2in} +\addtolength{\dialwidth}{\dialgutter} \newcommand*{\dialtab}{\hspace*{1.5in}} \newcommand*{\dialnametab}{\hspace*{1.2in}} -\newcommand*{\parenwidth}{1.7in} +\newlength{\parenwidth} +\setlength{\parenwidth}{1.5in} +\addtolength{\parenwidth}{\dialgutter} \newcommand*{\parentab}{\hspace{0.7in}} -\newcommand*{\parenkludge}{\dialfix} \renewcommand*{\textfraction}{1} \renewcommand*{\topfraction}{0} \renewcommand*{\bottomfraction}{0} @@ -118,12 +125,14 @@ by\\ \parbox[t]{2.0in}{\raggedright#4} \newpage\setcounter{page}{1} }%titleextra +\newcommand*{\more}{(MORE)} +\newcommand*{\contd}{(CONT'D)} \newcommand{\paren}[2][\\]{% -#1\parentab\parbox[t]{\parenwidth}{\raggedright(#2)\parenkludge}\\ +#1\parentab\parbox[t]{\parenwidth}{\raggedright(#2)\dialfix}\\ }%paren \newenvironment{dialogue}[2][]{ -\dialtab\dialnametab\hbox{\MakeUppercase{#2}}\nopagebreak\\ +\dialtab\dialnametab\hbox{\MakeUppercase{#2}}\\* \dialtab\begin{minipage}[b]{\dialwidth} \dialfix \raggedright @@ -136,14 +145,14 @@ by\\ }%dialogue \newcommand{\dialbreak}[2][]{ -\\\dialnametab\hbox{(MORE)}% +\\\dialnametab\hbox{\more}% \end{dialogue} \pagebreak \ifthenelse{\not\equal{#1}{}} { -\begin{dialogue}[#1]{\MakeUppercase{#2} (CONT'D)} +\begin{dialogue}[#1]{\MakeUppercase{#2} \contd} }{ -\begin{dialogue}{\MakeUppercase{#2} (CONT'D)} +\begin{dialogue}{\MakeUppercase{#2} \contd} } }%dialbreak \newcommand{\intslug}[2][]{ @@ -190,12 +199,11 @@ by\\ \ifthenelse{\not\equal{#1}{}} { -TITLE OVER (#1):\\ +TITLE OVER #1: }{ -TITLE OVER:\\ -} -\vspace{\baselineskip} -\nopagebreak +TITLE OVER: +}% +\\*[\baselineskip] \dialtab\begin{minipage}[b]{\dialwidth} \raggedright }{ @@ -203,17 +211,15 @@ TITLE OVER:\\ }%titleover \newcommand{\titbreak}{ -\\\dialnametab\hbox{(MORE)}% +\\\dialnametab\hbox{\more}% \end{titleover} \pagebreak -\begin{titleover}[CONT'D] +\begin{titleover}[\contd] }%titbreak \newcommand{\centretitle}[1]{ -TITLE OVER: -\nopagebreak - -\hspace*{\fill}{#1}\hspace{\fill}\hspace{\widthfudge} +TITLE OVER:\\*[\baselineskip] +\hspace*{\fill}{#1}\hspace{\fill}\hspace{\widthgutter} }%centretitle \newcommand{\fadein}{ @@ -223,20 +229,19 @@ FADE IN: }%fadein \newcommand{\fadeout}{ -\hspace*{\fill}FADE OUT:\hspace{\widthfudge} +\hspace*{\fill}FADE OUT:\hspace{\widthgutter} }%fadeout \newcommand{\intercut}{ -\hspace*{\fill}INTERCUT WITH:\hspace{\widthfudge} +\hspace*{\fill}INTERCUT WITH:\hspace{\widthgutter} }%intercut -\newcommand*{\pov}{P.O.V. } -\newcommand*{\revert}{REVERSE \pov } -\newcommand*{\nb}{NOTE: } +\newcommand*{\pov}{P.O.V.} +\newcommand*{\revert}{REVERSE \pov} \newcommand{\theend}{ -\hspace*{\fill}THE END\hspace{\fill}\hspace{\widthfudge} +\hspace*{\fill}THE END\hspace{\fill}\hspace{\widthgutter} }%THE END %% diff --git a/Master/texmf-dist/tex/latex/textfit/textfit.sty b/Master/texmf-dist/tex/latex/textfit/textfit.sty index 762e39dceb9..35262bd816c 100644 --- a/Master/texmf-dist/tex/latex/textfit/textfit.sty +++ b/Master/texmf-dist/tex/latex/textfit/textfit.sty @@ -1,15 +1,15 @@ -%% +%% %% This is file `textfit.sty', %% generated with the docstrip utility. -%% +%% %% The original source files were: -%% +%% %% textfit.dtx (with options: `package') -%% Copyright (C) 1993,94 Sebastian Rahtz and Phil Taylor. -%% All rights reserved. Permission is granted to to -%% customize the declarations in this file to serve the needs of your -%% installation. However, no permission is granted to distribute a -%% modified version of this file under its original name. +%% Copyright (C) 1993,94 Sebastian Rahtz and Phil Taylor. +%% All rights reserved. Permission is granted to to +%% customize the declarations in this file to serve the needs of your +%% installation. However, no permission is granted to distribute a +%% modified version of this file under its original name. %% \def\fileversion{5} \def\filedate{1994/04/15} @@ -141,5 +141,5 @@ \def\scaletowidth{\@scaletofit[h]} \def\scaletoheight{\@scaletofit[v]} \endinput -%% +%% %% End of file `textfit.sty'. diff --git a/Master/texmf-dist/tex/latex/thumb/thumb.sty b/Master/texmf-dist/tex/latex/thumb/thumb.sty index 022b8cb3f3b..78cb656ba56 100644 --- a/Master/texmf-dist/tex/latex/thumb/thumb.sty +++ b/Master/texmf-dist/tex/latex/thumb/thumb.sty @@ -148,7 +148,7 @@ \ifhave@minitoc \def\thumbmini{} \else - \PackageWarning{thumb}{style `minitoc^^b4 not avaliable \return + \PackageWarning{thumb}{style `minitoc´ not avaliable \return option `minitoc' will not be used} \fi } @@ -553,7 +553,7 @@ \immediate\write\thumbovr{\ovrout} } \else - \PackageWarning{thumb}{style `fancyhdr^^b4 not avaliable \return + \PackageWarning{thumb}{style `fancyhdr´ not avaliable \return style `thumb' will not be used} \fi \endinput diff --git a/Master/texmf-dist/tex/latex/tocvsec2/tocvsec2.sty b/Master/texmf-dist/tex/latex/tocvsec2/tocvsec2.sty index 884a15514a3..6ea2c35498a 100644 --- a/Master/texmf-dist/tex/latex/tocvsec2/tocvsec2.sty +++ b/Master/texmf-dist/tex/latex/tocvsec2/tocvsec2.sty @@ -6,35 +6,41 @@ %% %% tocvsec2.dtx (with options: `usc') %% -%% Copyright 1998 Peter R. Wilson +%% ----------------------------------------------------------------- +%% Author: Peter Wilson (CUA) now at peter.r.wilson@boeing.com until June 2004 +%% (or at: pandgwilson at earthlink dot net) +%% Copyright 1998 -- 2004 Peter R. Wilson %% -%% This program is provided under the terms of the -%% LaTeX Project Public License distributed from CTAN -%% archives in directory macros/latex/base/lppl.txt. +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any +%% later version. +%% The latest version of the license is in +%% http://www.latex-project.org/lppl.txt +%% and version 1.3 or later is part of all distributions of +%% LaTeX version 2003/06/01 or later. %% -%% Author: Peter Wilson (CUA and NIST) -%% now at: peter.r.wilson@boeing.com +%% This work has the LPPL maintenance status "author-maintained". %% +%% This work consists of the files listed in the README file. +%% ----------------------------------------------------------------- \NeedsTeXFormat{LaTeX2e} -\ProvidesPackage{tocvsec2}[1999/01/24 v1.1 variable ToC section entries] -\RequirePackage{stdclsdv} +\ProvidesPackage{tocvsec2}[2004/05/24 v1.2 variable ToC section entries] \RequirePackage{ifthen} -\ifSCDknownclass - \ifSCDnodivs - \PackageWarning{tocvsec2}{There are no sectional divisions in this class} - \renewcommand{\SCDquit}{\endinput} - \fi -\else - \PackageWarning{tocvsec2}% - {I don't recognize the class but I'll do my best} -\fi -\SCDquit +\newif\ift@cchapter + \t@cchapterfalse +\@ifundefined{chapter}{% + \@ifundefined{section}{% + \PackageWarning{tocvsec2}{% + I don't recognize any divisions but I'll do my best}}{}}% + {\t@cchaptertrue} + \newif\if@knownsect@c \newcommand{\@setseccntt@c}[2]{ \@knownsect@cfalse \ifthenelse{\equal{#1}{none}}{\setcounter{#2}{-10} \@knownsect@ctrue}{} - \ifthenelse{\equal{#1}{part}}{\ifSCDchapter + \ifthenelse{\equal{#1}{part}}{\ift@cchapter \setcounter{#2}{-1} \else \setcounter{#2}{0} @@ -68,7 +74,7 @@ \addtocontents{toc}{\protect\setcounter{tocdepth}{-10}} \@knownsect@ctrue}{} \ifthenelse{\equal{#1}{part}}{% - \ifSCDchapter + \ift@cchapter \addtocontents{toc}{\protect\setcounter{tocdepth}{-1}} \else \addtocontents{toc}{\protect\setcounter{tocdepth}{0}} |