tpmultiinc.sty000060000037240003720000000052600713234631500143010ustar00hwflamelet00000000000000%% tpmultiinc.sty %% %% This package provides the command \tpmultiinc{foo} to include %% incremental graphics using Stephan Lehmke's texpower package. %% %% Call it like: \tpmultiinc[options to includegraphics]{foo} %% %% It requires that you have the graphic files in a certain order. %% foo.0 is the first file to be included. It appears at once. %% The graphic files %% foo.n with n >=1 are included step by step using the step command %% from texpower. %% The files foo.* are eps-Files, as produced by metapost. They must %% all have the same bounding box. %% %% The most convenient way to generate them is to use xfig with the %% patches provided by Klaus Guntermann to generate multiple metapost %% output. See: %% %% http://www-sp.iti.informatik.tu-darmstadt.de/software/xfig/ %% %% The [options to includegraphics] are optional. You can use them to %% scale your graphics to the proper size. %% %% Beware, no error handling is attempted. %% Beware, this is my first attempt to write something other than %% local hacks. %% Beware, this has only been tested via the latex, dvips, ps2pdf %% route. I don't know how it behaves if you use pdflatex. %% %% Author: Holger Wenzel H.Wenzel@itm.rwth-aachen.de %% Version: 0.1b July 7, 2000 %% \RequirePackage{texpower} \RequirePackage{graphicx} \RequirePackage{ifthen} %% %% The width and the height of the included graphics \newlength{\layerwidth} \newlength{\layerheight} %% Boolean value to decide wether we have to include another %% file \newboolean{morelayers} %% %% Counter for the actual layer %% \newcounter{layer} %% %% %% \newcommand*{\tpmultiinc}[2][{}]{% %% %% First (optional) argument are the options passed to %% includegraphics. %% Second (requried) argument is the base-name of the files to be %% included. %% %% Determine the dimensions of the picture \settowidth{\layerwidth}{\includegraphics[#1]{#2.0}} \settoheight{\layerheight}{\includegraphics[#1]{#2.0}} %% initialise \setboolean{morelayers}{true} \setcounter{layer}{1} %% %% use parstepwise instead of stepwise to avoid glitches in %% the output \parstepwise{% %% %% Make room for the picture \parbox[t][\layerheight][b]{\layerwidth}{% %% %% Be sure that the files are nicely overlaid %% by anchoring them at (0,0) in a picture environment \begin{picture}(0,0) %% Include at least one file (this is foo.0) \put(0,0) {\includegraphics[#1]{#2.0}} %% %% This is the loop to include all the foo.n files %% like in the mpmulti.sty of ppower. %% \whiledo{\boolean{morelayers}} {\IfFileExists{#2.\thelayer}% {\setboolean{morelayers}{true}% \step{\put(0,0) {{\includegraphics[#1]{#2.\thelayer}}}} \stepcounter{layer}}% {\setboolean{morelayers}{false}}} \end{picture}}}% \\}% mptest.tex000060000037240003720000000002740713234454400134100ustar00hwflamelet00000000000000\documentclass{article} \usepackage[display]{texpower} \usepackage{graphicx} \usepackage{tpmultiinc} \begin{document} \tpmultiinc[width=\textwidth]{multitest} \end{document} multitest.fig000066400037240003720000000006550713234045600141060ustar00hwflamelet00000000000000#FIG 3.2 Landscape Center Metric A4 100.00 Single -2 1200 2 1 3 0 1 1 1 46 0 20 0.000 1 0.0000 3555 3375 415 415 3555 3375 3970 3375 2 2 0 1 0 7 48 0 -1 0.000 0 0 -1 0 0 5 765 1890 3555 1890 3555 3375 765 3375 765 1890 2 4 0 1 0 1 44 0 -1 0.000 0 0 7 0 0 5 4635 3510 4635 1125 675 1125 675 3510 4635 3510 4 0 0 50 0 0 12 0.0000 2 180 750 1125 2565 begin test\001 4 0 0 42 0 0 12 1.5708 2 135 615 4005 2430 end test\001 multitest.mmp000066400037240003720000000075020713234045700141310ustar00hwflamelet00000000000000% % fig2dev -L (m)mp version 0.03 --- Preamble % % Make arrowheads mitered by default % NOTE: subject to change (edited from plain.mp) def forwarr(text t) expr p = _apth:=p;_finarrf(t) enddef; def backarr(text t) expr p = _apth:=p;_finarrb(t) enddef; def _finarrf(text s) text t = if (s=0):fill arrowhead _apth t withcolor white else: fill arrowhead _apth t fi; linejoin:=0; draw arrowhead _apth t enddef; def _finarrb(text s) text t = if (s=0):fill arrowhead reverse _apth t withcolor white else: fill arrowhead reverse _apth t fi; linejoin:=0; draw arrowhead reverse _apth t enddef; path allbounds; allbounds = (39.78,725.22)--(278.82,725.22)--(278.82,564.12)--(39.78,564.12)--cycle; % Some reasonable defaults ahlength:=7; ahangle:=30; labeloffset:=0; truecorners:=0; bboxmargin:=0; % Now draw objects of depth: 50 beginfig(0) % Begin text object picture p; verbatimtex \font\cmrAA=cmr10 at 10.80pt \font\tenrm=cmr10 at 10.80pt \font\sevenrm=cmr7 at 7.56pt \font\fiverm=cmr5 at 5.40pt \font\teni=cmmi10 at 10.80pt \font\seveni=cmmi7 at 7.56pt \font\fivei=cmmi5 at 5.40pt \font\tensy=cmsy10 at 10.80pt \font\sevensy=cmsy7 at 7.56pt \font\fivesy=cmsy5 at 5.40pt \textfont0\tenrm \scriptfont0\sevenrm \scriptscriptfont0\fiverm \textfont1\teni \scriptfont1\seveni \scriptscriptfont1\fivei \textfont2\tensy \scriptfont2\sevensy \scriptscriptfont2\fivesy etex; p = btex \cmrAA begin test etex rotated 0.00; label.urt(p,(67.50,638.10)) withcolor (0.00,0.00,0.00); % End text object setbounds currentpicture to allbounds; endfig; % Now draw objects of depth: 48 beginfig(1) % Begin polyline object linecap:=0; linejoin:=0; pickup pencircle scaled 0.90; path p; p = (45.90, 678.60) --(213.30, 678.60) --(213.30, 589.50) --(45.90, 589.50) --(45.90, 678.60)--cycle; draw p withcolor (0.00,0.00,0.00); % End polyline object setbounds currentpicture to allbounds; endfig; % Now draw objects of depth: 46 beginfig(2) % Begin ellipse object pickup pencircle scaled 0.90; path c; c = fullcircle scaled 49.80 yscaled 1.00 rotated 0.00 shifted (213.30,589.50); fill c withcolor ((0.00,0.00,1.00) + 0.00white); draw c withcolor (0.00,0.00,1.00); % End ellipse object setbounds currentpicture to allbounds; endfig; % Now draw objects of depth: 44 beginfig(3) % Begin polyline object linecap:=0; linejoin:=1; pickup pencircle scaled 0.90; path p,pb,sw,nw,ne,se; pair ll,ul,ur,lr; p = (278.10,581.40)--(40.50,724.50); ur = urcorner p; ll = llcorner p; ul = ulcorner p; lr = lrcorner p; sw = fullcircle scaled 12.60 shifted (ll+(6.30,6.30)); nw = fullcircle scaled 12.60 shifted (ul+(6.30,-6.30)); ne = fullcircle rotated 180 scaled 12.60 shifted (ur+(-6.30,-6.30)); se = fullcircle rotated 180 scaled 12.60 shifted (lr+(-6.30,6.30)); pb = buildcycle(sw,ll--ul,nw,ul--ur,ne,ur--lr,se,lr--ll); draw pb withcolor (0.00,0.00,0.00); % End polyline object setbounds currentpicture to allbounds; endfig; % Now draw objects of depth: 42 beginfig(4) % Begin text object picture p; verbatimtex \font\cmrAB=cmr10 at 10.80pt \font\tenrm=cmr10 at 10.80pt \font\sevenrm=cmr7 at 7.56pt \font\fiverm=cmr5 at 5.40pt \font\teni=cmmi10 at 10.80pt \font\seveni=cmmi7 at 7.56pt \font\fivei=cmmi5 at 5.40pt \font\tensy=cmsy10 at 10.80pt \font\sevensy=cmsy7 at 7.56pt \font\fivesy=cmsy5 at 5.40pt \textfont0\tenrm \scriptfont0\sevenrm \scriptscriptfont0\fiverm \textfont1\teni \scriptfont1\seveni \scriptscriptfont1\fivei \textfont2\tensy \scriptfont2\sevensy \scriptscriptfont2\fivesy etex; p = btex \cmrAB end test etex rotated 90.00; label.urt(p,(240.30,646.20)) withcolor (0.00,0.00,0.00); % End text object setbounds currentpicture to allbounds; endfig; end readme000060000037240003720000000016650713235263300125350ustar00hwflamelet00000000000000This is the readme file for the LaTeX-macro tpmultiinc.sty. Included are the following files tpmultiinc.sty: The LaTeX style file that includes the macro. All of the "documentation" is in here. mptest.tex: The LaTeX-source that contains a small example. multitest.fig The Graphic that is used by mptest.tex. In the xFig-format. multitest.mmp The Graphic that is used by mptest.tex. In Multiple MetaPost-format. This File is generated from the mulitest.fig file. To make this conversion you need the xfig and transfig programs with the patches to generate multiple MetaPost output. Get these from: http://www-sp.iti.informatik.tu-darmstadt.de/software/xfig/ The commands to generate pdf-output from these files are: mpost multitest.mmp # call to metapost. This generates mutitest.0 ... multitest.4 latex mptest dvips -Pwww -G0 mptest ps2pdf mptest.ps # you'd better have gs >6.0 for this nstead of stepwise to avoid glitches in %% the output \parstepwise{% %% %% Make room for the picture \parbox[t][\layerheight][b]{\layerwidth}{% %% %% Be sure that the files are nicely overlaid %% by anchoring them at (0,0) in a picture environment \begin{picture}(0,0) %% Include at least one file (this is foo.0) \put(0,0) {\includegraphics[#1]{#2.0}} %% %% This is the loop to include all the foo.n files %% like in the mpmulti.sty of ppower. %% \whiledo{\boolean{morelayers}} {\IfFileExists{#2.\thelayer}% {\setboolean{morelayers}{true}% \step{\put(0,0) {{\includegraphics[#1]{#2.\thelayer}}}} \stepcounter{layer}}% {\setboolean{morelayers}{false}}} \end{picture}}}% \\}% mptest.tex000060000037240003720000000002740713234454400134100ustar00hwflamelet00000000000000\documentclass{article} \usepackage[display]{texpower} \usepackage{graphicx} \usepackage{tpmultiinc} \begin{document} \tpmultiinc[width=\textwidth]{multitest} \end{document} multitest.fig000066400037240003720000000006550713234045600141060ustar00hwflamelet00000000000000#FIG 3.2 Landscape Center Metric A4 100.00 Single -2 1200 2 1 3 0 1 1 1 46 0 20 0.000 1 0.0000 3555 3375 415 415 3555 3375 3970 3375 2 2 0 1 0 7 48 0 -1 0.000 0 0 -1 0 0 5 765 1890 3555 1890 3555 3375 765 3375 765 1890 2 4 0 1 0 1 44 0 -1 0.000 0 0 7 0 0 5 4635 3510 4635 1125 675 1125 675 3510 4635 3510 4 0 0 50 0 0 12 0.0000 2 180 750 1125 2565 begin test\001 4 0 0 42 0 0 12 1.5708 2 135 615 4005 2430 end test\001 multitest.mmp000066400037240003720000000075020713234045700141310ustar00hwflamelet00000000000000% % fig2dev -L (m)mp version 0.03 --- Preamble % % Make arrowheads mitered by default % NOTE: subject to change (edited from plain.mp) def forwarr(text t) expr p = _apth:=p;_finarrf(t) enddef; def backarr(text t) expr p = _apth:=p;_finarrb(t) enddef; def _finarrf(text s) text t = if (s=0):fill arrowhead _apth t withcolor white else: fill arrowhead _apth t fi; linejoin:=0; draw arrowhead _apth t enddef; def _finarrb(text s) text t = if (s=0):fill arrowhead reverse _apth t withcolor white else: fill arrowhead reverse _apth t fi; linejoin:=0; draw arrowhead reverse _apth t enddef; path allbounds; allbounds = (39.78,725.22)--(278.82,725.22)--(278.82,564.12)--(39.78,564.12)--cycle; % Some reasonable defaults ahlength:=7; ahangle:=30; labeloffset:=0; truecorners:=0; bboxmargin:=0; % Now draw objects of depth: 50 beginfig(0) % Begin text object picture p; verbatimtex \font\cmrAA=cmr10 at 10.80pt \font\tenrm=cmr10 at 10.80pt \font\sevenrm=cmr7 at 7.56pt \font\fiverm=cmr5 at 5.40pt \font\teni=cmmi10 at 10.80pt \font\seveni=cmmi7 at 7.56pt \font\fivei=cmmi5 at 5.40pt \font\tensy=cmsy10 at 10.80pt \font\sevensy=cmsy7 at 7.56pt \font\fivesy=cmsy5 at 5.40pt \textfont0\tenrm \scriptfont0\sevenrm \scriptscriptfont0\fiverm \textfont1\teni \scriptfont1\seveni \scriptscriptfont1\fivei \textfont2\tensy \scriptfont2\sevensy \scriptscriptfont2\fivesy etex; p = btex \cmrAA begin test etex rotated 0.00; label.urt(p,(67.50,638.10)) withcolor (0.00,0.00,0.00); % End text object setbounds currentpicture to allbounds; endfig; % Now draw objects of depth: 48 beginfig(1) % Begin polyline object linecap:=0; linejoin:=0; pickup pencircle scaled 0.90; path p; p = (45.90, 678.60) --(213.30, 678.60) --(213.30, 589.50) --(45.90, 589.50) --(45.90, 678.60)--cycle; draw p withcolor (0.00,0.00,0.00); % End polyline object setbounds currentpicture to allbounds; endfig; % Now draw objects of depth: 46 beginfig(2) % Begin ellipse object pickup pencircle scaled 0.90; path c; c = fullcircle scaled 49.80 yscaled 1.00 rotated 0.00 shifted (213.30,589.50); fill c withcolor ((0.00,0.00,1.00) + 0.00white); draw c withcolor (0.00,0.00,1.00); % End ellipse object setbounds currentpicture to allbounds; endfig; % Now draw objects of depth: 44 beginfig(3) % Begin polyline object linecap:=0; linejoin:=1; pickup pencircle scaled 0.90; path p,pb,sw,nw,ne,se; pair ll,ul,ur,lr; p = (278.10,581.40)--(40.50,724.50); ur = urcorner p; ll = llcorner p; ul = ulcorner p; lr = lrcorner p; sw = fullcircle scaled 12.60 shifted (ll+(6.30,6.30)); nw = fullcircle scaled 12.60 shifted (ul+(6.30,-6.30)); ne = fullcircle rotated 180 scaled 12.60 shifted (ur+(-6.30,-6.30)); se = fullcircle rotated 180 scaled 12.60 shifted (lr+(-6.30,6.30)); pb = buildcycle(sw,ll--ul,nw,ul--ur,ne,ur--lr,se,lr--ll); draw pb withcolor (0.00,0.00,0.00); % End polyline object setbounds currentpicture to allbounds; endfig; % Now draw objects of depth: 42 beginfig(4) % Begin text object picture p; verbatimtex \font\cmrAB=cmr10 at 10.80pt \font\tenrm=cmr10 at 10.80pt \font\sevenrm=cmr7 at 7.56pt \font\fiverm=cmr5 at 5.40pt \font\teni=cmmi10 at 10.80pt \font\seveni=cmmi7 at 7.56pt \font\fivei=cmmi5 at 5.40pt \font\tensy=cmsy10 at 10.80pt \font\sevensy=cmsy7 at 7.56pt \font\fivesy=cmsy5 at 5.40pt \textfont0\tenrm \scriptfont0\sevenrm \scriptscriptfont0\fiverm \textfont1\teni \scriptfont1\seveni \scriptscriptfont1\fivei \textfont2\tensy \scriptfont2\sevensy \scriptscriptfont2\fivesy etex; p = btex \cmrAB end test etex rotated 90.00; label.urt(p,(240.30,646.20)) withcolor (0.00,0.00,0.00); % End text object setbounds currentpicture to allbounds; endfig; end