From 51e3a37989b9f2ace36eb360c42fee6dcff11458 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Fri, 21 Jul 2006 23:46:03 +0000 Subject: pst-optic 0.95 git-svn-id: svn://tug.org/texlive/trunk@1890 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/generic/pst-optic/Changes | 18 +- Master/texmf-dist/doc/generic/pst-optic/README | 3 +- Master/texmf-dist/doc/generic/pst-optic/optic.bib | 2 +- .../doc/generic/pst-optic/pst-optic-doc.pdf | Bin 312467 -> 282581 bytes .../doc/generic/pst-optic/pst-optic-doc.tex | 555 +++++++++++---------- .../doc/generic/pst-optic/pst-optic-examples.pdf | Bin 351255 -> 372127 bytes .../doc/generic/pst-optic/pst-optic-examples.tex | 308 ++++++------ 7 files changed, 465 insertions(+), 421 deletions(-) (limited to 'Master/texmf-dist/doc') diff --git a/Master/texmf-dist/doc/generic/pst-optic/Changes b/Master/texmf-dist/doc/generic/pst-optic/Changes index 651d1e9e01a..f65e8fa6d76 100644 --- a/Master/texmf-dist/doc/generic/pst-optic/Changes +++ b/Master/texmf-dist/doc/generic/pst-optic/Changes @@ -1,7 +1,23 @@ ---- pst-optic.tex +0.95 2006-07-20 - fix spurious blanks + - use \def instead of \edef + for the keyval definitions + - some improvements to the code +0.94 2005-10-28 using \psscalebox to prevent clashes with graphicx + needs pstricks.tex > 1.10 +0.93 2004-11-25 \ignorespaces for all macros 0.92 2004-11-08 spurious blank 0.91 2004-10-23 use pst-xkey instead of pst-key ---- pst-optic.sty 2004-11-09 new version to get a TeX output - of the used version \ No newline at end of file + of the used version + +---- pst-optic-doc.tex + 2005-10-24 the parallel line image was wrong + 2005-05-18 small update to some examples + +---- pst-optic-examples.tex + 2005-05-18 small update to some examples + + \ No newline at end of file diff --git a/Master/texmf-dist/doc/generic/pst-optic/README b/Master/texmf-dist/doc/generic/pst-optic/README index 7fba0811a5d..70b9df5af52 100644 --- a/Master/texmf-dist/doc/generic/pst-optic/README +++ b/Master/texmf-dist/doc/generic/pst-optic/README @@ -23,8 +23,7 @@ to get a PostScript file. But pay attention, that the pst-optic files are saved in the above mentioned way, before you run latex on the documentation file. -It is nearly the same for the example file -pst-optic-examples.tex +It is nearly the same for the example file pst-optic-examples.tex The intermediate DVI file works only with viewers which can diff --git a/Master/texmf-dist/doc/generic/pst-optic/optic.bib b/Master/texmf-dist/doc/generic/pst-optic/optic.bib index a684c82d02a..6f777d67d99 100644 --- a/Master/texmf-dist/doc/generic/pst-optic/optic.bib +++ b/Master/texmf-dist/doc/generic/pst-optic/optic.bib @@ -21,7 +21,7 @@ Title = {PSTricks Support for pdf}, Author = {Herbert Voss}, Organization = {}, - Address = {\url{http://www.educat.hu-berlin.de/~voss/lyx/pdf/pdftricks.phtml}}, + Address = {\url{http://PSTricks.tug.org}}, Note = {}, year = 2002, } diff --git a/Master/texmf-dist/doc/generic/pst-optic/pst-optic-doc.pdf b/Master/texmf-dist/doc/generic/pst-optic/pst-optic-doc.pdf index e762e4c88ab..04635753653 100644 Binary files a/Master/texmf-dist/doc/generic/pst-optic/pst-optic-doc.pdf and b/Master/texmf-dist/doc/generic/pst-optic/pst-optic-doc.pdf differ diff --git a/Master/texmf-dist/doc/generic/pst-optic/pst-optic-doc.tex b/Master/texmf-dist/doc/generic/pst-optic/pst-optic-doc.tex index 67b82d1e258..e25b54a1c94 100644 --- a/Master/texmf-dist/doc/generic/pst-optic/pst-optic-doc.tex +++ b/Master/texmf-dist/doc/generic/pst-optic/pst-optic-doc.tex @@ -1,25 +1,27 @@ \documentclass[12pt]{article} \usepackage[T1]{fontenc} \usepackage[latin1]{inputenc} -\usepackage[vtex]{geometry} -\usepackage{graphicx} -\usepackage{subfigure} -\usepackage{pstcol} -\usepackage{pst-optic} +\usepackage{geometry} +\usepackage{graphicx,lmodern} +\usepackage{subfig} +\usepackage{pstricks} \usepackage{pst-text} +\usepackage{pst-optic} +\let\SaveFV\fileversion \usepackage{url} \usepackage{amsmath} \usepackage{tabularx} \usepackage{lscape} \usepackage{fancyhdr} +\usepackage[scaled=0.9]{luximono} \pagestyle{fancy} \lfoot{\small\ttfamily\jobname.tex} \cfoot{} -\rfoot{} +\rfoot{\thepage} \renewcommand{\headrulewidth}{0pt} \renewcommand{\footrulewidth}{0pt} \usepackage{listings} -\lstset{language=TEX,basicstyle=\ttfamily\footnotesize,% +\lstset{language=PSTricks,basicstyle=\ttfamily\footnotesize,% extendedchars=true,numbers=left,numberstyle=\tiny} \usepackage{multicol} \let\myPart\part @@ -29,30 +31,48 @@ \newcommand{\PS}{PostScript} \newcommand\CMD[1]{\texttt{\textbackslash#1}} \psset{subgriddiv=0,gridlabels=7pt,griddots=5} -\usepackage[vtex]{hyperref} +\usepackage[colorlinks,linktocpage]{hyperref} +\usepackage{breakurl} \begin{document} \author{Manuel Luque\thanks{Mluque5130@aol.com} \and Herbert Voß\thanks{voss@perce.de}} -\date{2003/02/15} -\title{Lenses and Mirrors: PST-optic v0.9} +\date{\today} +\title{Lenses and Mirrors: PST-optic v\SaveFV} \maketitle +\begin{abstract} +This version uses the extended keyval package \verb+xkeyval+, so be sure that you have installed +this package together with the special one \verb+pst-xkey+ for PSTricks. The \verb+xkeyval+ +package bundle is available at \url{ftp://ftp.dante.de/pub/tex/macros/latex/contrib/xkeyval/}. +It is also important that after \verb+pst-optic+ no package is loaded, which uses the old keyval interface. +\vspace*{2cm} +\end{abstract}% + +\clearpage \tableofcontents \section*{Introduction} -\verb|pstricks| writes pure PostScript\cite{PostScript} code, so it is not possible to run \TeX{} files with pdf\LaTeX{} when there are pstricks macros in the document. If you still need a PDF output use the package \verb|pdftricks.sty|\cite{pdftricks} or the for Linux free available program \verb|vlatex| (\url{http://www.micropress-inc.com/linux/}) or build the PDF with \verb|ps2pdf| (\verb|dvi|$\rightarrow$\verb|ps|$\rightarrow$\verb|pdf|). +\verb|pstricks| writes pure PostScript\cite{PostScript} code, so it is not possible to run +\TeX{} files with pdf\LaTeX{} when there are pstricks macros in the document. If you still +need a PDF output use the package \verb|pdftricks.sty|\cite{pdftricks} or the for Linux +free available program \verb|vlatex| (\url{http://www.micropress-inc.com/linux/}) or +build the PDF with \verb|ps2pdf| (\verb|dvi|$\rightarrow$\verb|ps|$\rightarrow$\verb|pdf|). \par -If you need package \verb|graphicx.sty| load it before any \verb|pstricks| package. You do not need to load \verb|pstricks.sty|, it will be done by \verb|pst-optic| by default. +If you need package \verb|graphicx.sty| load it before any \verb|pstricks| package. +You do not need to load \verb|pstricks.sty|, it will be done by \verb|pst-optic.sty| by default. -\vspace{\fill} -This PDF file was created with the \textbf{vlatex} program from the free available \textit{VTeX/Lnx v7.530 - the VTeX distribution for Linux (x86)}. +%\vspace{\fill} +%This PDF file was created with the \textbf{vlatex} program from the free available +%\textit{VTeX/Lnx v7.530 - the VTeX distribution for Linux (x86)}. \part{General Options} -All options are by default documentwide valid but not supported by all macros. Table \ref{tab:generalOptions} shows the general ones. Others are shown in table \ref{tab:defaultLens} and \ref{tab:defaultSpiegel}. +All options are by default documentwide valid but not supported by all macros. +Table \ref{tab:generalOptions} shows the general ones. Others are shown in +table \ref{tab:defaultLens} and \ref{tab:defaultSpiegel}. \begin{table}[!htb] \centering @@ -83,7 +103,8 @@ All options are by default documentwide valid but not supported by all macros. T \caption{General options and the defaults}\label{tab:generalOptions} \end{table} -\verb|pst-optic| puts the lens and mirror macros in an own \verb|pspicture| environment. The star version enables the clipping option of \verb|pstricks|: +\verb|pst-optic| puts the lens and mirror macros in an own \verb|pspicture| environment. +The star version enables the clipping option of \verb|pstricks|: \begin{lstlisting} \begin{pspicture}*(xLeft,yBottom)(xRight,yTop) @@ -93,26 +114,32 @@ All options are by default documentwide valid but not supported by all macros. T \end{pspicture} \end{lstlisting} -If you need other values for the \verb|pspicture| environment, then use the \verb|\rput| command to place the macro at any position. +If you need other values for the \verb|pspicture| environment, then use the \verb|\rput| +command to place the macro at any position. \begin{lstlisting} \begin{pspicture}(-5,-1.5)(7,4) \rput(1.5,1.5){% - \lens[lensType=DVG,lensGlass=true,% - lensWidth=0.5,rayColor=red]} + \lens[lensType=DVG,lensGlass=true,lensWidth=0.5,rayColor=red,% + focus=-2,AB=2,spotAi=270,spotBi=90]} \end{pspicture} \end{lstlisting} \par \begin{center} +\bgroup \begin{pspicture}(-5,-1.5)(7,4) \psgrid[subgriddiv=0,gridlabels=5pt,griddots=5] - \rput(1.5,1.5){\scalebox{0.75}{\lens[lensType=DVG,% - lensGlass=true,lensWidth=0.5,rayColor=red]}} + \rput(1.5,1.5){% + \lens[lensType=DVG,lensGlass=true,lensWidth=0.5,rayColor=red,% + focus=-2,AB=2,spotAi=270,spotBi=90]} \end{pspicture} +\egroup \end{center} -\par +\vspace{1cm} +\section{\CMD{resetOpticOptions}} +This macro resets all \verb+pst-optic+ options to the default value. \part{Lenses} @@ -129,28 +156,29 @@ Figure \ref{fig:nodes} shows the coordinates of the predefined nodes (see table \begin{lstlisting} \begin{pspicture}*(-8,-3.25)(8,3.25) - \rput(0,0){% - \lens[drawing=false] - \psline[linewidth=1pt](xLeft)(xRight) - \qdisk(A){1.5pt} - \qdisk(B){1.5pt} - \qdisk(A'){1.5pt}\qdisk(B'){1.5pt} - \qdisk(F){1.5pt}\qdisk(F'){1.5pt} - \qdisk(O){1.5pt}\qdisk(I){1.5pt} - \qdisk(I'){1.5pt}\qdisk(I1){1.5pt} - \qdisk(I2){1.5pt} - \uput[270](A){A}\uput[90](B){B} - \uput[270](F){F}\uput[0](I){I} - \uput[0](I'){$\mathrm{I'}$}\uput[270](F'){$\mathrm{F'}$} - \uput[270](B'){$\mathrm{B'}$}\uput[90](A'){$\mathrm{A'}$} - \uput[180](I1){I1}\uput[0](I2){I2}% - } + \rput(0,0){% + \lens[drawing=false] + \psline[linewidth=1pt](xLeft)(xRight) + \qdisk(A){1.5pt} + \qdisk(B){1.5pt} + \qdisk(A'){1.5pt}\qdisk(B'){1.5pt} + \qdisk(F){1.5pt}\qdisk(F'){1.5pt} + \qdisk(O){1.5pt}\qdisk(I){1.5pt} + \qdisk(I'){1.5pt}\qdisk(I1){1.5pt} + \qdisk(I2){1.5pt} + \uput[270](A){A}\uput[90](B){B} + \uput[270](F){F}\uput[0](I){I} + \uput[0](I'){$\mathrm{I'}$}\uput[270](F'){$\mathrm{F'}$} + \uput[270](B'){$\mathrm{B'}$}\uput[90](A'){$\mathrm{A'}$} + \uput[180](I1){I1}\uput[0](I2){I2}% + } \end{pspicture} \end{lstlisting} \begin{figure}[!htb] \resizebox{\textwidth}{!}{% +\bgroup \begin{pspicture}*(-8,-3.25)(8,3.25) \rput(0,0){% \lens[drawing=false] @@ -169,6 +197,7 @@ Figure \ref{fig:nodes} shows the coordinates of the predefined nodes (see table } \psgrid[subgriddiv=0,griddots=4,gridlabels=7pt] \end{pspicture}% +\egroup } \caption{Coodinates of the predefined Nodes}\label{fig:nodes} \end{figure} @@ -177,12 +206,14 @@ Figure \ref{fig:nodes} shows the coordinates of the predefined nodes (see table \begin{figure}[htb] \centering - \scalebox{0.75}{\lens[lensType=CVG]}\vspace{-0.5cm} +\bgroup + \psscalebox{0.75}{\lens[lensType=CVG]}\vspace{-0.5cm} \caption{\texttt{\textbackslash lens[lensType=CVG]} (Collecting lens)}% \label{fig:defaultCVG} - \scalebox{0.75}{\lens[lensType=DVG]}\vspace{-0.5cm} - \caption{\texttt{\textbackslash lens[lensType=DVG]} (Scatter lens)}% + \psscalebox{0.75}{\lens[lensType=DVG,focus=-2,spotAi=270,spotBi=90]}\vspace{-0.5cm} +\egroup + \caption{\texttt{\textbackslash lens[lensType=DVG,focus=-2,spotAi=270,spotBi=90]} (Scatter lens)}% \label{fig:defaultDVG} \end{figure} @@ -219,7 +250,7 @@ The origin of the coordinate system is by default vertically and horinzontally s \begin{lstlisting} \begin{pspicture}*(-7.5,-3)(7.5,3) - \rput(0,0){\lens[...]} + \rput(0,0){\lens[...]} \begin{pspicture} \end{lstlisting} @@ -245,8 +276,9 @@ The \verb|Transform|-macro renames all existing nodes in names with an additiona \begin{figure}[htb] -\subfigure[Definition of two unchained lenses]{% +\subfloat[Definition of two unchained lenses]{% \resizebox{0.49\textwidth}{!}{% +\bgroup \begin{pspicture}*(-7.5,-3)(7.5,3) \rput(0,0){% \lens[lensScale=0.6,XO=-4,% @@ -259,9 +291,11 @@ The \verb|Transform|-macro renames all existing nodes in names with an additiona lensGlass=true,lensWidth=0.5]% } \end{pspicture} +\egroup }}\hfill% -\subfigure[Definition of two chained lenses with \texttt{\textbackslash lens[...] \textbackslash Transform \textbackslash lens[...]} and \texttt{lensTwo-Option}]{% +\subfloat[Definition of two chained lenses with \texttt{\textbackslash lens[...] \textbackslash Transform \textbackslash lens[...]} and \texttt{lensTwo-Option}]{% \resizebox{0.49\textwidth}{!}{% +\bgroup \begin{pspicture}*(-7.5,-3)(7.5,3) \rput(0,0){% \lens[lensScale=0.6,XO=-4,% @@ -274,10 +308,12 @@ The \verb|Transform|-macro renames all existing nodes in names with an additiona lensGlass=true,lensWidth=0.5]% } \end{pspicture} +\egroup }} -\subfigure[Definition of two chained lenses and an additional modification of the node labels. \label{fig:lensTwoC}]{% +\subfloat[Definition of two chained lenses and an additional modification of the node labels. \label{fig:lensTwoC}]{% \resizebox{\textwidth}{!}{% +\bgroup \begin{pspicture}*(-7.5,-3)(7.5,3) \rput(0,0){% \lens[lensScale=0.6,XO=-4,% @@ -297,28 +333,30 @@ The \verb|Transform|-macro renames all existing nodes in names with an additiona } \pspolygon[style=rayuresJaunes,linestyle=none](B)(I)(B')(I')(B) \end{pspicture} +\egroup }} -\caption{The meaning of the \texttt{\textbackslash Transform}-Macro with the default labels}\label{fig:lensTwo} +\caption{The meaning of the \texttt{\textbackslash Transform}-Macro with the default +labels}\label{fig:lensTwo} \end{figure} \begin{lstlisting} \begin{pspicture}*(-7.5,-3)(7.5,3) \rput(0,0){% - \lens[lensScale=0.6,XO=-4,% - nameF=F_1,nameA=A_1,nameB=B_1,% - nameFi=F'_1,nameAi={ },nameBi={},nameO=O_1, - focus=1,OA=-2,lensGlass=true, lensWidth=0.5]% + \lens[lensScale=0.6,XO=-4,% + nameF=F_1,nameA=A_1,nameB=B_1,% + nameFi=F'_1,nameAi={ },nameBi={},nameO=O_1, + focus=1,OA=-2,lensGlass=true, lensWidth=0.5]% } \pspolygon[style=rayuresJaunes,linestyle=none](B)(I)(B')(I')(B) \Transform \rput(0,0){% - \lens[lensScale=1.2,XO=2,focus=2,% - nameA=A'_1,spotA=90,nameB=B'_1,spotB=270,% - nameO=O_2,nameAi=A'_2,spotAi=270,% - nameBi=B'_2,spotBi=90,nameF=F_2,nameFi=F'_2,% - lensTwo=true,% - lensGlass=true,lensWidth=0.5]% + \lens[lensScale=1.2,XO=2,focus=2,% + nameA=A'_1,spotA=90,nameB=B'_1,spotB=270,% + nameO=O_2,nameAi=A'_2,spotAi=270,% + nameBi=B'_2,spotBi=90,nameF=F_2,nameFi=F'_2,% + lensTwo=true,% + lensGlass=true,lensWidth=0.5]% } \pspolygon[style=rayuresJaunes,linestyle=none](B)(I)(B')(I')(B) \end{pspicture} @@ -326,7 +364,10 @@ The \verb|Transform|-macro renames all existing nodes in names with an additiona \section{\CMD{rayInterLens}} -This macro is only useful for a two-lens-system. Figure \ref{fig:RayInter} shows such a system. The nodes \verb|B1, I11, F'1, B'1| are predefined by the \verb|lens|-macro. To draw the two rays from the left lense via the node \verb|B'1| to the second lens, we need the coordinates of these points. \verb|\rayInterLense| defines such nodes. The Syntax: +This macro is only useful for a two-lens-system. Figure \ref{fig:RayInter} shows such a system. +The nodes \verb|B1, I11, F'1, B'1| are predefined by the \verb|lens|-macro. To draw the two rays +from the left lense via the node \verb|B'1| to the second lens, we need the coordinates of these +points. \verb|\rayInterLense| defines such nodes. The Syntax: {\small\begin{verbatim} \rayInterLense(StartNode)(IntermediatNode)(LensDistance){LensNode} \end{verbatim}} @@ -344,6 +385,7 @@ The two parallel lines are drawn with the \verb|\Parallel|-Macro. \begin{figure}[!htb] \resizebox{\textwidth}{!}{% +\bgroup \begin{pspicture}*(-7.5,-4)(7.5,4) \rput(0,0){% \lens[focus=1.5,OA=-2,AB=0.6,XO=-5,lensGlass=true,% @@ -377,6 +419,7 @@ The two parallel lines are drawn with the \verb|\Parallel|-Macro. \psgrid[subgriddiv=0,griddots=5, gridlabels=7pt] \psline[linestyle=dotted, linewidth=2pt,linecolor=black]{->}(0,-4)(0,+4) \end{pspicture}% +\egroup } \caption{Demonstration of \texttt{\textbackslash rayInterLens}\label{fig:RayInter}} \end{figure} @@ -385,18 +428,19 @@ The two parallel lines are drawn with the \verb|\Parallel|-Macro. \section{\CMD{telescope}} -Figure {\ref{fig:defaultTele} shows the configuration of a telescope and table \ref{tab:defaultSpiegel} the special options for the \verb|\telescop|-Macro. +Figure~\ref{fig:defaultTele} shows the configuration of a telescope and table~\ref{tab:defaultSpiegel} +the special options for the \verb|\telescop|-Macro. \begin{figure}[!htb] - \resizebox{\textwidth}{!}{\telescope}\vspace{-0.5cm} - \caption{\texttt{\textbackslash telescope}-Macro}% - \label{fig:defaultTele} + \abovecaptionskip=-0.5cm + \resizebox{\linewidth}{!}{\telescope} + \bigskip + \caption{\CMD{telescope}-Macro}\label{fig:defaultTele} \end{figure} - \part{Mirrors} \section{options} @@ -429,7 +473,8 @@ Figure \ref{fig:Spiegel} shows the available mirrors and table \ref{tab:defaultS \begin{figure}[!htb] \centering -\subfigure[]{% +\subfloat[]{% +\bgroup \begin{pspicture}*(-1,-3)(3,3) \psgrid[subgriddiv=0,griddots=5] \rput(0,0){\mirrorCVG[mirrorColor=gray,drawing=false]} @@ -440,8 +485,10 @@ Figure \ref{fig:Spiegel} shows the available mirrors and table \ref{tab:defaultS \pcline[arrows=|-|](1,-2.75)(0.75,-2.75)\rput[l](1.1,-2.75){mirrorWidth} \rput[l](1,-1){mirrorColor}\psline{<-}(0.2,-1)(0.8,-1) \end{pspicture}% +\egroup }\hfill% -\subfigure[]{% +\subfloat[]{% +\bgroup \begin{pspicture}*(-4,-3)(1,3) \psgrid[subgriddiv=0,griddots=5] \rput(0,0){\mirrorDVG[mirrorColor=gray,drawing=false]} @@ -452,8 +499,10 @@ Figure \ref{fig:Spiegel} shows the available mirrors and table \ref{tab:defaultS \pcline[arrows=|-|](-1.25,-2.75)(-1,-2.75)\rput[r](-1.3,-2.75){mirrorWidth} \rput[r](-2,-2){mirrorColor}\psline{->}(-2,-2)(-0.9,-2) \end{pspicture} +\egroup }\hfill -\subfigure[\label{fig:planMirror}]{% +\subfloat[\label{fig:planMirror}]{% +\bgroup \begin{pspicture}(-2,-2)(2,2) \psgrid[subgriddiv=0, gridlabels=5pt,griddots=4] \pnode(-1.5,-1.5){M1} @@ -469,6 +518,7 @@ Figure \ref{fig:Spiegel} shows the available mirrors and table \ref{tab:defaultS \pscircle*(A'){2pt} \psline[linestyle=dashed](A)(A') \end{pspicture} +\egroup } \caption{The different mirror macros: a) \texttt{\textbackslash mirrorCVG} @@ -477,33 +527,34 @@ c) \texttt{\textbackslash planMirrorRay}% }\label{fig:Spiegel} \end{figure} - \section{\CMD{mirrorCVG}} Figure \ref{fig:mirrorCVG} shows the default for the \verb|mirrorCVG|-macro with the predefined nodes anf three default rays. - \begin{figure}[!htb] \begin{minipage}{0.48\textwidth} \resizebox{\textwidth}{!}{% +\bgroup \begin{pspicture}*(-1,-3)(6,3) - \psgrid[subgriddiv=0,gridlabels=5pt,griddots=5] - \rput(0,0){\mirrorCVG[rayColor=red]} + \psgrid[subgriddiv=0,gridlabels=5pt,griddots=5] + \rput(0,0){\mirrorCVG[rayColor=red]} \end{pspicture}% +\egroup } \caption{Parabolic Mirror \texttt{\textbackslash mirrorCVG}}\label{fig:mirrorCVG} \end{minipage}\hfill \begin{minipage}{0.48\textwidth} \resizebox{0.9\textwidth}{!}{% +\bgroup \begin{pspicture}*(-0.5,-4)(8,4) - \rput(0,0){\mirrorCVG[mirrorHeight=8,mirrorDepth=4,drawing=false]} - \multido{\rY=-4.00+0.25}{33}{% - \mirrorCVGRay[% - linewidth=0.5pt,% - mirrorHeight=8,% - mirrorDepth=4](10,\rY)(1,\rY){Dummy}% - } -\end{pspicture}% + \rput(0,0){\mirrorCVG[mirrorHeight=8,mirrorDepth=4,drawing=false]} + \multido{\rY=-4.00+0.25}{33}{% + \mirrorCVGRay[linewidth=0.5pt,% + mirrorHeight=8,% + mirrorDepth=4](10,\rY)(1,\rY){Dummy}% + } +\end{pspicture} +\egroup } \caption{Example}\label{fig:CVGAnwendung} \end{minipage} @@ -615,16 +666,16 @@ The two nodes define the mirror axis and the graphics object is in most cases a \begin{lstlisting} \newcommand{\dtk}{% - \pstextpath(0,0){% - \psplot[linestyle=none]{0}{8}{x sqrt sqrt 2 mul}}% - {\Large Die \TeX{}nische Komödie von DANTE}% + \pstextpath(0,0){% + \psplot[linestyle=none]{0}{8}{x sqrt sqrt 2 mul}}% + {\Large Die \TeX{}nische Komödie von DANTE}% } \begin{pspicture}(-4.5,-2)(2.5,5) - \pnode(-4,-2){M1} \uput[-90](M1){M1} - \pnode(4,4){M2}\uput[90](M2){M2} - \psline[linewidth=5\pslinewidth,linecolor=lightgray](M1)(M2) - \rput(-3.5,-1.75){\dtk}% Original schreiben - \symPlan(M1)(M2){\rput(-3.5,-1.75){\dtk}}% Spiegelbild schreiben + \pnode(-4,-2){M1} \uput[-90](M1){M1} + \pnode(4,4){M2}\uput[90](M2){M2} + \psline[linewidth=5\pslinewidth,linecolor=lightgray](M1)(M2) + \rput(-3.5,-1.75){\dtk}% Original schreiben + \symPlan(M1)(M2){\rput(-3.5,-1.75){\dtk}}% Spiegelbild schreiben \end{pspicture} \end{lstlisting} @@ -660,7 +711,7 @@ This macro is useful for the demonstration of high and low beam light. The synta The predefined options especially for the \verb|pspicture|-coordinates are \begin{lstlisting} -\setkeys{psset}{xLeft=-5,xRight=5,yBottom=-5,yTop=5,drawing=false}% the default +\psset[pst-optic]{xLeft=-5,xRight=5,yBottom=-5,yTop=5,drawing=false}% the default \end{lstlisting} You can place this macro with the \verb|\rput|-command at any place in your own \verb|pspicture|-environment. @@ -689,11 +740,10 @@ You can place this macro with the \verb|\rput|-command at any place in your own \begin{lstlisting} \begin{pspicture}(-1,-5.5)(5,5.5) - \rput(0,0){% - \beamLight[mirrorDepth=4.75,% - mirrorWidth=0.1,% - mirrorHeight=10,% - linecolor=lightgray]} + \rput(0,0){% + \beamLight[mirrorDepth=4.75,% + mirrorWidth=0.1,mirrorHeight=10,% + linecolor=lightgray]} \end{pspicture}% \end{lstlisting} \caption{\CMD{beamLight} with Options} @@ -756,7 +806,10 @@ A total reflection instead of a refraction is possible, when the ray starts in a \end{pspicture} -The macro needs the values for the four nodes, the two refractionnumbers and the name for the end node. As you can see in the figure the end node of the ray is the intermediate point between the linear ray and the linear medium. The end node of the refracted ray has the same name with an additional single quotation mark. In the figure the macro was called as +The macro needs the values for the four nodes, the two refractionnumbers and the name for +the end node. As you can see in the figure the end node of the ray is the intermediate +point between the linear ray and the linear medium. The end node of the refracted ray has +the same name with an additional single quotation mark. In the figure the macro was called as \medskip \verb|\refractionRay(A)(B)(C)(D){1}{4}{E}| @@ -886,7 +939,6 @@ The refractionnumbers have the internal names \verb|refractA| and \verb|refractB \section{\CMD{mirrorCVG}} - The syntax is \bigskip @@ -894,13 +946,11 @@ The syntax is \bigskip -Without the option \verb|mirrorType=SPH| you'll get a parabolic mirror, which is the default. +\resetOpticOptions \mirrorCVG[mirrorType=SPH] - - - +Without the option \verb|mirrorType=SPH| you'll get a parabolic mirror, which is the default. \section{\CMD{mirrorDVG}} @@ -912,11 +962,11 @@ The syntax is -Without the option \verb|mirrorType=SPH| you'll get a parabolic mirror (option PARA). -\par \mirrorDVG[mirrorType=SPH] +Without the option \verb|mirrorType=SPH| you'll get a parabolic mirror (option PARA). + \section{\CMD{ABinterSPHLens}} The syntax is @@ -948,7 +998,8 @@ The syntax is \psgrid \end{pspicture} -The macro needs two nodes for the rays, the coordinates/nodes of the center/middle of the sperical lens and a name of the intermediate node.In the figure the macro was called as +The macro needs two nodes for the rays, the coordinates/nodes of the center/middle of the +sperical lens and a name of the intermediate node.In the figure the macro was called as \bigskip @@ -1073,29 +1124,27 @@ This macro calculates the coordinates of the given ray $\overline{\mathrm{AB}}$ \begin{lstlisting} \begin{pspicture*}(-1,-3)(6,3) - \rput(0,0){% - \mirrorCVG[% - mirrorType=SPH,% - mirrorHeight=5,% - mirrorWidth=0.2,% - yBottom=-3,yTop=3,% - drawing=false,% - mirrorDepth=3]% - \qdisk(Center){2pt}\qdisk(Focus){2pt} - \uput[-90](Center){Center}\uput[-90](Focus){F} - \psline(O)(xRight) - } - \ABinterSPHLens(5,1)(3,1)(Center){C} - \reflectionRay[mirrorType=CVG-SPH](5,1)(C){D} - \qdisk(5,1){2pt}\uput[-90](5,1){A} - \qdisk(3,1){2pt}\uput[-90](3,1){B} - \qdisk(C){2pt}\uput[180](C){C} - \qdisk(D){2pt}\uput[45](D){D} - \psset{linewidth=1.5pt,linecolor=red,arrows=->} - \psline(5,1)(3,1) - \psline(3,1)(C) - \psline(C)(D) - \psgrid + \rput(0,0){% + \mirrorCVG[% + mirrorType=SPH,% + mirrorHeight=5, mirrorWidth=0.2,% + yBottom=-3,yTop=3,drawing=false,% + mirrorDepth=3]% + \qdisk(Center){2pt}\qdisk(Focus){2pt} + \uput[-90](Center){Center}\uput[-90](Focus){F} + \psline(O)(xRight) + } + \ABinterSPHLens(5,1)(3,1)(Center){C} + \reflectionRay[mirrorType=CVG-SPH](5,1)(C){D} + \qdisk(5,1){2pt}\uput[-90](5,1){A} + \qdisk(3,1){2pt}\uput[-90](3,1){B} + \qdisk(C){2pt}\uput[180](C){C} + \qdisk(D){2pt}\uput[45](D){D} + \psset{linewidth=1.5pt,linecolor=red,arrows=->} + \psline(5,1)(3,1) + \psline(3,1)(C) + \psline(C)(D) + \psgrid \end{pspicture*} \end{lstlisting} @@ -1133,31 +1182,29 @@ This macro calculates the coordinates of the given ray $\overline{\mathrm{AB}}$ \begin{lstlisting} \begin{pspicture}*(-10,-4)(3,4) - \psgrid[subgriddiv=0,griddots=5,gridlabels=7pt] - \rput(0,0){\lensSPH[% - lensType=CVG,% - lensHeight=12,% - lensWidth=10,% - yBottom=-4,yTop=4,xLeft=-5,xRight=5,% - drawing=false]} - \psset{linecolor=red,linewidth=1.5pt,dotstyle=|} - \pnode(-9,0){P}\psdots(P)\uput[-90](P){P} - \psline(P)(xRight) - \lensSPHRay(P)(-5,2){1}{9}{Q}% - \psline(P)(Q)(Q') - \psdots(Q)\uput[90](Q){B} - \ABinterCD(Q)(Q')(0,0)(5,0){P'} - \psdots(Q')\uput[-90](P'){P'} - \psline[linewidth=0.5pt,linecolor=black](Center')(Q) - \psline[linewidth=0.5pt,linecolor=black](Q)(Q|0,0) - \psdots(Center')\uput[-90](Center'){C} +\psgrid[subgriddiv=0,griddots=5,gridlabels=7pt] +\rput(0,0){\lensSPH[% + lensType=CVG,% + lensHeight=12,lensWidth=10,% + yBottom=-4,yTop=4,xLeft=-5,xRight=5,drawing=false]} +\psset{linecolor=red,linewidth=1.5pt,dotstyle=|} +\pnode(-9,0){P}\psdots(P)\uput[-90](P){P} +\psline(P)(xRight) +\lensSPHRay(P)(-5,2){1}{9}{Q}% +\psline(P)(Q)(Q') +\psdots(Q)\uput[90](Q){B} +\ABinterCD(Q)(Q')(0,0)(5,0){P'} +\psdots(Q')\uput[-90](P'){P'} +\psline[linewidth=0.5pt,linecolor=black](Center')(Q) +\psline[linewidth=0.5pt,linecolor=black](Q)(Q|0,0) +\psdots(Center')\uput[-90](Center'){C} \end{pspicture} \end{lstlisting} \subsection[Height of an Image]{Construction for determining the height of an image formed by refraction at a sperical surface} -\begin{pspicture}*(-13,-3)(3,5) +\begin{pspicture*}[showgrid=true](-13,-3)(3,5) \psgrid[subgriddiv=0,griddots=5,gridlabels=7pt] \rput(0,0){\lensSPH[% lensType=CVG,% @@ -1180,34 +1227,31 @@ This macro calculates the coordinates of the given ray $\overline{\mathrm{AB}}$ \uput[90](P'){P'} \uput[-90](Q'){Q'} \psdots(Center')\uput[90](Center'){C} -\end{pspicture} +\end{pspicture*} \bigskip \begin{lstlisting} -\begin{pspicture}*(-13,-3)(3,5) - \psgrid[subgriddiv=0,griddots=5,gridlabels=7pt] - \rput(0,0){\lensSPH[% - lensType=CVG,% - lensHeight=12,% - lensWidth=10,% - yBottom=-4,yTop=4,xLeft=-5,xRight=5,% - drawing=false]} - \psset{linecolor=red,linewidth=1.5pt,dotstyle=|} - \pnode(-12,0){P}\psdots(P)\uput[-90](P){P} - \pnode(-12,4){Q}\psdots(Q)\uput[90](Q){Q} - \psline[linecolor=blue,linewidth=3pt,arrows=->](P)(Q) - \psline(P)(xRight) - \lensSPHRay(Q)(Center'){1}{9}{S1}% - \lensSPHRay(Q)(-5,0){1}{9}{S2}% - \psline(Q)(S1') - \psline(Q)(S2)(S2') - \ABinterCD(Q)(S1')(S2)(S2'){Q'} - \pnode(Q'|0,0){P'} - \psline[linecolor=blue,linewidth=3pt,arrows=->](P')(Q') - \uput[90](P'){P'} - \uput[-90](Q'){Q'} - \psdots(Center')\uput[90](Center'){C} -\end{pspicture} +\begin{pspicture*}[showgrid=true](-13,-3)(3,5) +\rput(0,0){\lensSPH[% + lensType=CVG,% + lensHeight=12,lensWidth=10,% + yBottom=-4,yTop=4,xLeft=-5,xRight=5,drawing=false]} +\psset{linecolor=red,linewidth=1.5pt,dotstyle=|} +\pnode(-12,0){P}\psdots(P)\uput[-90](P){P} +\pnode(-12,4){Q}\psdots(Q)\uput[90](Q){Q} +\psline[linecolor=blue,linewidth=3pt,arrows=->](P)(Q) +\psline(P)(xRight) +\lensSPHRay(Q)(Center'){1}{9}{S1}% +\lensSPHRay(Q)(-5,0){1}{9}{S2}% +\psline(Q)(S1') +\psline(Q)(S2)(S2') +\ABinterCD(Q)(S1')(S2)(S2'){Q'} +\pnode(Q'|0,0){P'} +\psline[linecolor=blue,linewidth=3pt,arrows=->](P')(Q') +\uput[90](P'){P'} +\uput[-90](Q'){Q'} +\psdots(Center')\uput[90](Center'){C} +\end{pspicture*} \end{lstlisting} @@ -1236,7 +1280,7 @@ Use the \verb|\rput|-macro to put the eye elsewhere: \begin{lstlisting} \begin{pspicture}(-1,-0.75)(1,0.75) - \rput(1,0){\eye} + \rput(1,0){\eye} \end{pspicture} \end{lstlisting} @@ -1359,57 +1403,57 @@ The only special option for \verb|Parallel| is \verb|length=|. The nodes \verb|nodeA| and \verb|nodeB| are known nodes of a given line and \verb|Start node| is the given node of a parallel line. \verb|End node| is the name of the calculated line end. The use of \verb|Parallel| is shown for an example (figure \ref{fig:Parallel}). \begin{lstlisting} -\begin{pspicture}*(-5,-3.5)(5,3.5) - \psgrid[subgriddiv=0,griddots=5] - \pnode(2,-2){FF}\qdisk(FF){1.5pt} - \pnode(-5,5){A} - \pnode(0,0){O} - \multido{\nCountA=-2.4+0.4}{9}{% - \Parallel[linecolor=red,length=9](O)(A)(0,\nCountA){P1} - \psline[linecolor=red](0,\nCountA)(FF) - \psOutLine[linecolor=red,length=9](0,\nCountA)(FF){P2} - } - \psline[linecolor=blue](A)(FF) - \psOutLine[linecolor=blue,length=5](A)(FF){END1} - \rput(0,0){% - \lens[yBottom=-3.5,yTop=3.5,lensGlass=true,% - lensHeight=6.5,% - drawing=false,spotFi=315,lensWidth=0.5]% - \psline[linewidth=1pt](xLeft)(xRight) - \psline[length=2,linewidth=2pt,arrows=->](F')(FF) - } -\end{pspicture} +\begin{pspicture*}[showgrid=true](-5,-3.5)(5,3.5) +\pnode(2,-2){FF}\qdisk(FF){1.5pt} +\pnode(-5,5){A} +\pnode(0,0){O} +\multido{\nCountA=-2.4+0.4}{9}{% + \Parallel[linecolor=red,length=9](O)(A)(0,\nCountA){P1} + \psline[linecolor=red](0,\nCountA)(FF) + \psOutLine[linecolor=red,length=9](0,\nCountA)(FF){P2} +} +\psline[linecolor=blue](A)(FF) +\psOutLine[linecolor=blue,length=5](A)(FF){END1} +\rput(0,0){% + \lens[yBottom=-3.5,yTop=3.5,lensGlass=true,% + lensHeight=6.5,drawing=false,spotFi=315,lensWidth=0.5]% + \psline[linewidth=1pt](xLeft)(xRight) + \psline[length=2,linewidth=2pt,arrows=->](F')(FF) +} +\end{pspicture*} \end{lstlisting} \begin{figure}[htb] \centering -\begin{pspicture}*(-5,-3.5)(5,3.5) - \psgrid[subgriddiv=0,griddots=5] - \pnode(2,-2){FF}\qdisk(FF){1.5pt} - \pnode(-5,5){A} - \pnode(0,0){O} - \multido{\nCountA=-2.4+0.4}{9}{% - \Parallel[linecolor=red,length=9](O)(A)(0,\nCountA){P1} - \psline[linecolor=red](0,\nCountA)(FF) - \psOutLine[linecolor=red,length=9](0,\nCountA)(FF){P2} - } - \psline[linecolor=blue](A)(FF) - \psOutLine[linecolor=blue,length=5](A)(FF){END1} - \rput(0,0){% - \lens[yBottom=-3.5,yTop=3.5,lensGlass=true,lensHeight=6.25,% - drawing=false,spotFi=315,lensWidth=0.5]% - \psline[linewidth=1pt](xLeft)(xRight) - \psline[length=2,linewidth=2pt,arrows=->](F')(FF) - } -\end{pspicture} +\begin{pspicture*}[showgrid=true](-5,-3.5)(5,3.5) +\pnode(2,-2){FF}\qdisk(FF){1.5pt} +\pnode(-5,5){A} +\pnode(0,0){O} +\multido{\nCountA=-2.4+0.4}{9}{% + \Parallel[linecolor=red,length=9](O)(A)(0,\nCountA){P1} + \psline[linecolor=red](0,\nCountA)(FF) + \psOutLine[linecolor=red,length=9](0,\nCountA)(FF){P2} +} +\psline[linecolor=blue](A)(FF) +\psOutLine[linecolor=blue,length=5](A)(FF){END1} +\rput(0,0){% + \lens[yBottom=-3.5,yTop=3.5,lensGlass=true,% + lensHeight=6.5,drawing=false,spotFi=315,lensWidth=0.5]% + \psline[linewidth=1pt](xLeft)(xRight) + \psline[length=2,linewidth=2pt,arrows=->](F')(FF) +} +\end{pspicture*} \caption{The \texttt{\textbackslash Parallel}-Macro}\label{fig:Parallel} \end{figure} \section{\texttt{\textbackslash ABinterCD}} -This macro is used by the \verb|\telescop| macro. It determines the intersection point of two lines, in this case a ray and the mirror axis. -Figure \ref{fig:ABinterCD} shows a part of figure \ref{fig:defaultTele}. Given are the points A, B (focus), C/D (mirror axis). We need the point E to draw the other rays for the ocular, which can be done with the \verb|\ABinterCD| macro. The syntax is: +This macro is used by the \verb|\telescop| macro. It determines the intersection +point of two lines, in this case a ray and the mirror axis. +Figure \ref{fig:ABinterCD} shows a part of figure \ref{fig:defaultTele}. Given are +the points A, B (focus), C/D (mirror axis). We need the point E to draw the other +rays for the ocular, which can be done with the \verb|\ABinterCD| macro. The syntax is: \par \bigskip @@ -1485,10 +1529,10 @@ The coordinates of the node \verb|A| are changed to the new ones. Negative value \begin{lstlisting} \begin{pspicture}(4,4) - \pnode(3,1){A} - \qdisk(A){2pt}\uput[20](A){A} - \rotateNode(A){45} - \qdisk(A){2pt}\uput[20](A){A} +\pnode(3,1){A} +\qdisk(A){2pt}\uput[20](A){A} +\rotateNode(A){45} +\qdisk(A){2pt}\uput[20](A){A} \end{pspicture} \end{lstlisting} @@ -1530,18 +1574,18 @@ The coordinates of the nodes \verb|A,B,C| are changed to the new ones. Negative \columnbreak \begin{lstlisting} \begin{pspicture}(-1,0)(4,4) - \pnode(1,1){A} - \pnode(3,1){B} - \pnode(2,3){C} - \qdisk(A){2pt}\uput[180](A){A} - \qdisk(B){2pt}\uput[0](B){B} - \qdisk(C){2pt}\uput[90](C){C} - \psline(A)(B)(C)(A) - \rotateTriangle(A)(B)(C){45} - \qdisk(A){2pt}\uput[180](A){A} - \qdisk(B){2pt}\uput[0](B){B} - \qdisk(C){2pt}\uput[90](C){C} - \psline[linecolor=red](A)(B)(C)(A) +\pnode(1,1){A} +\pnode(3,1){B} +\pnode(2,3){C} +\qdisk(A){2pt}\uput[180](A){A} +\qdisk(B){2pt}\uput[0](B){B} +\qdisk(C){2pt}\uput[90](C){C} +\psline(A)(B)(C)(A) +\rotateTriangle(A)(B)(C){45} +\qdisk(A){2pt}\uput[180](A){A} +\qdisk(B){2pt}\uput[0](B){B} +\qdisk(C){2pt}\uput[90](C){C} +\psline[linecolor=red](A)(B)(C)(A) \end{pspicture} \end{lstlisting} @@ -1589,21 +1633,21 @@ The coordinates of the nodes \verb|A,B,C,D| are changed to the new ones. Negativ \columnbreak \begin{lstlisting} \begin{pspicture}(-2,0)(4,5) - \pnode(1,1){A} - \pnode(3,1){B} - \pnode(3,3){C} - \pnode(1,3){D} - \qdisk(A){2pt}\uput[180](A){A} - \qdisk(B){2pt}\uput[0](B){B} - \qdisk(C){2pt}\uput[90](C){C} - \qdisk(D){2pt}\uput[180](D){D} - \psline(A)(B)(C)(D)(A) - \rotateFrame(A)(B)(C)(D){45} - \qdisk(A){2pt}\uput[180](A){A} - \qdisk(B){2pt}\uput[0](B){B} - \qdisk(C){2pt}\uput[90](C){C} - \qdisk(D){2pt}\uput[180](D){D} - \psline[linecolor=red](A)(B)(C)(D)(A) +\pnode(1,1){A} +\pnode(3,1){B} +\pnode(3,3){C} +\pnode(1,3){D} +\qdisk(A){2pt}\uput[180](A){A} +\qdisk(B){2pt}\uput[0](B){B} +\qdisk(C){2pt}\uput[90](C){C} +\qdisk(D){2pt}\uput[180](D){D} +\psline(A)(B)(C)(D)(A) +\rotateFrame(A)(B)(C)(D){45} +\qdisk(A){2pt}\uput[180](A){A} +\qdisk(B){2pt}\uput[0](B){B} +\qdisk(C){2pt}\uput[90](C){C} +\qdisk(D){2pt}\uput[180](D){D} +\psline[linecolor=red](A)(B)(C)(D)(A) \end{pspicture} \end{lstlisting} @@ -1631,13 +1675,11 @@ Draws a line from \verb|Start| to \verb|End| with \verb|ArrowNumber| arrows insi \columnbreak \begin{lstlisting} \begin{pspicture}(4,4) - \arrowLine[linecolor=red](0,0)(4,3){3} - \arrowLine[linecolor=green,% - arrowsize=6pt,% - arrows=-|](0,0)(3,1){2} - \arrowLine[linecolor=blue,% - arrowOffset=0.75,% - arrowsize=6pt](4,0)(0,3){3} + \arrowLine[linecolor=red](0,0)(4,3){3} + \arrowLine[linecolor=green,% + arrowsize=6pt,arrows=-|](0,0)(3,1){2} + \arrowLine[linecolor=blue,% + arrowOffset=0.75,arrowsize=6pt](4,0)(0,3){3} \end{pspicture} \end{lstlisting} @@ -1667,24 +1709,19 @@ A special option is \verb|arrowOffset|, which makes it possible to draw lines wi \columnbreak \begin{lstlisting} \begin{pspicture}(4,2) - \arrowLine[arrowsize=6pt,% - linecolor=red](0,0.5)(4,0.5){3} - \arrowLine[arrowsize=6pt,% - linecolor=red,% - arrows=<-](0,1)(4,1){3} - \arrowLine[arrowsize=6pt,% - linecolor=red](0,1.5)(4,1.5){3} - \arrowLine[arrowsize=6pt,% - linecolor=blue,% - arrows=<-,% - arrowOffset=0.2](0,1.5)(4,1.5){3} +\arrowLine[arrowsize=6pt,linecolor=red](0,0.5)(4,0.5){3} +\arrowLine[arrowsize=6pt,linecolor=red, arrows=<-](0,1)(4,1){3} +\arrowLine[arrowsize=6pt,linecolor=red](0,1.5)(4,1.5){3} +\arrowLine[arrowsize=6pt,linecolor=blue,% + arrows=<-,arrowOffset=0.2](0,1.5)(4,1.5){3} \end{pspicture} \end{lstlisting} \end{multicols} - +\section{Credits} +Aranud Schmittbuhl | diff --git a/Master/texmf-dist/doc/generic/pst-optic/pst-optic-examples.pdf b/Master/texmf-dist/doc/generic/pst-optic/pst-optic-examples.pdf index c90211279e2..5c61b3c5116 100644 Binary files a/Master/texmf-dist/doc/generic/pst-optic/pst-optic-examples.pdf and b/Master/texmf-dist/doc/generic/pst-optic/pst-optic-examples.pdf differ diff --git a/Master/texmf-dist/doc/generic/pst-optic/pst-optic-examples.tex b/Master/texmf-dist/doc/generic/pst-optic/pst-optic-examples.tex index 3e3b4cf539b..50cafec9a3c 100644 --- a/Master/texmf-dist/doc/generic/pst-optic/pst-optic-examples.tex +++ b/Master/texmf-dist/doc/generic/pst-optic/pst-optic-examples.tex @@ -1,10 +1,10 @@ \documentclass[12pt]{article} \usepackage[T1]{fontenc} \usepackage[latin1]{inputenc} -\usepackage[vtex]{geometry} +\usepackage{geometry} \usepackage{graphicx} \usepackage{subfigure} -\usepackage{pstcol} +\usepackage{pstricks} \usepackage{pst-optic} \usepackage{pst-text} \usepackage{url} @@ -29,7 +29,7 @@ \newcommand{\PS}{PostScript} \newcommand\CMD[1]{\texttt{\textbackslash#1}} \psset{subgriddiv=0,gridlabels=7pt,griddots=5} -\usepackage[vtex]{hyperref} +\usepackage{hyperref} \begin{document} \author{Manuel Luque\thanks{Mluque5130@aol.com} \and Herbert Voß\thanks{voss@perce.de}} @@ -114,78 +114,82 @@ This PDF file was created with the \textbf{vlatex} program from the free availab \resizebox{\textwidth}{!}{% \begin{pspicture}(-8,-5)(8,3) - \rput(0,0){% - \lens[% - lensGlass=true,lensWidth=0.4,% - focus=4,AB=0.5,OA=-2.8,XO=2,drawing=false]% - \psline[linewidth=0.5pt](xLeft)(xRight) - } - \pnode(!XO 2.5){L1}% extrémité supérieure de la lentille - \pnode(!XO -2.5){L2}% extrémité inférieure de la lentille - \psOutLine[length=5.5,linestyle=none](B')(L1){END1} - \psBeforeLine[length=6,linestyle=none](L2)(B'){START} - \pspolygon[style=rayuresJaunes,linestyle=none](B)(L1)(END1)(START)(L2) - \psline[linewidth=1.5\pslinewidth,arrowinset=0]{->}(A)(B) - \uput[270](A){A} - \uput[90](B){B} - \psline[linewidth=1.5\pslinewidth,% - arrowinset=0,linestyle=dashed]{->}(A')(B') - \uput[270](A'){$\mathrm{A'}$} - \uput[90](B'){$\mathrm{B'}$} - \psset{linecolor=red,arrowsize=0.2} - \pcline[nodesepB=-4](B')(O) - \psline(B)(I)(F') - \psOutLine(I)(F'){END2} - \Arrows(I)(F') - \Arrows(B)(I) - \psOutLine[length=1,linestyle=dashed](I')(B'){END3} - \psline[linestyle=dashed](B)(F) - \psline(B)(I') - \Arrows[arrows=->>](B)(I') - \psline[linestyle=dashed](B')(I') - \psline[linestyle=dashed](B')(I) - \psOutLine[length=2,arrows=->>](B')(I'){END4} - \psOutLine[length=4](B')(I'){END5} - \rput(8,0){\psset{linecolor=black}\eye} -\end{pspicture}% +\rput(0,0){% + \lens[% + lensGlass=true,lensWidth=0.4,% + focus=4,AB=0.5,OA=-2.8,XO=2,drawing=false]% + \psline[linewidth=0.5pt](xLeft)(xRight)} +\pnode(!XO 2.5){L1}% extrmitsuprieuredelalentille +\pnode(!XO -2.5){L2}% extrmitinfrieuredelalentille +\psOutLine[length=5.5,linestyle=none](B')(L1){END1} +\psBeforeLine[length=6,linestyle=none](L2)(B'){START} +\pspolygon[style=rayuresJaunes,linestyle=none](B)(L1)(END1)(START)(L2) +\psline[linewidth=1.5\pslinewidth,arrowinset=0]{->}(A)(B) +\uput[270](A){A} +\uput[90](B){B} +\psline[linewidth=1.5\pslinewidth,arrowinset=0,% + linestyle=dashed]{->}(A')(B') +\uput[270](A'){$\mathrm{A'}$} +\uput[90](B'){$\mathrm{B'}$} +\psset{linecolor=red,arrowsize=0.2} +\pcline[nodesepB=-4](B)(O)% Mittelpunktstrahl +\psline[linecolor=red,linestyle=dashed](B)(B')% ruckwaertige Verlaengerung +\Arrows(B)(O)% Mittelpunktstrahl +\psOutLine[length=2,arrows=->](B)(O){END6}% Mittelpunktstrahl +\psline(B)(I)(F') +\psOutLine(I)(F'){END2} +\Arrows(I)(F') +\Arrows(B)(I) +\psOutLine[length=1,linestyle=dashed](I')(B'){END3} +\psline[linestyle=dashed](B)(F) +\psline(B)(I') +\Arrows[arrows=->>](B)(I') +\psline[linestyle=dashed](B')(I') +\psline[linestyle=dashed](B')(I) +\psOutLine[length=2,arrows=->>](B')(I'){END4} +\psOutLine[length=4](B')(I'){END5} +\rput(8,0){\psset{linecolor=black}\eye} +\end{pspicture} } \begin{lstlisting} \begin{pspicture}(-8,-5)(8,3) - \rput(0,0){% - \lens[% - lensGlass=true,lensWidth=0.4,% - focus=4,AB=0.5,OA=-2.8,XO=2,drawing=false]% - \psline[linewidth=0.5pt](xLeft)(xRight) - } - \pnode(!XO 2.5){L1}% extrémité supérieure de la lentille - \pnode(!XO -2.5){L2}% extrémité inférieure de la lentille - \psOutLine[length=5.5,linestyle=none](B')(L1){END1} - \psBeforeLine[length=6,linestyle=none](L2)(B'){START} - \pspolygon[style=rayuresJaunes,linestyle=none](B)(L1)(END1)(START)(L2) - \psline[linewidth=1.5\pslinewidth,arrowinset=0]{->}(A)(B) - \uput[270](A){A} - \uput[90](B){B} - \psline[linewidth=1.5\pslinewidth,% - arrowinset=0,linestyle=dashed]{->}(A')(B') - \uput[270](A'){$\mathrm{A'}$} - \uput[90](B'){$\mathrm{B'}$} - \psset{linecolor=red,arrowsize=0.2} - \pcline[nodesepB=-4](B')(O) - \psline(B)(I)(F') - \psOutLine(I)(F'){END2} - \Arrows(I)(F') - \Arrows(B)(I) - \psOutLine[length=1,linestyle=dashed](I')(B'){END3} - \psline[linestyle=dashed](B)(F) - \psline(B)(I') - \Arrows[arrows=->>](B)(I') - \psline[linestyle=dashed](B')(I') - \psline[linestyle=dashed](B')(I) - \psOutLine[length=2,arrows=->>](B')(I'){END4} - \psOutLine[length=4](B')(I'){END5} - \rput(8,0){\psset{linecolor=black}\eye} -\end{pspicture}% +\rput(0,0){% + \lens[% + lensGlass=true,lensWidth=0.4,% + focus=4,AB=0.5,OA=-2.8,XO=2,drawing=false]% + \psline[linewidth=0.5pt](xLeft)(xRight)} +\pnode(!XO 2.5){L1}% extrmitsuprieuredelalentille +\pnode(!XO -2.5){L2}% extrmitinfrieuredelalentille +\psOutLine[length=5.5,linestyle=none](B')(L1){END1} +\psBeforeLine[length=6,linestyle=none](L2)(B'){START} +\pspolygon[style=rayuresJaunes,linestyle=none](B)(L1)(END1)(START)(L2) +\psline[linewidth=1.5\pslinewidth,arrowinset=0]{->}(A)(B) +\uput[270](A){A} +\uput[90](B){B} +\psline[linewidth=1.5\pslinewidth,arrowinset=0,% + linestyle=dashed]{->}(A')(B') +\uput[270](A'){$\mathrm{A'}$} +\uput[90](B'){$\mathrm{B'}$} +\psset{linecolor=red,arrowsize=0.2} +\pcline[nodesepB=-4](B)(O)% Mittelpunktstrahl +\psline[linecolor=red,linestyle=dashed](B)(B')% ruckwaertige Verlaengerung +\Arrows(B)(O)% Mittelpunktstrahl +\psOutLine[length=2,arrows=->](B)(O){END6}% Mittelpunktstrahl +\psline(B)(I)(F') +\psOutLine(I)(F'){END2} +\Arrows(I)(F') +\Arrows(B)(I) +\psOutLine[length=1,linestyle=dashed](I')(B'){END3} +\psline[linestyle=dashed](B)(F) +\psline(B)(I') +\Arrows[arrows=->>](B)(I') +\psline[linestyle=dashed](B')(I') +\psline[linestyle=dashed](B')(I) +\psOutLine[length=2,arrows=->>](B')(I'){END4} +\psOutLine[length=4](B')(I'){END5} +\rput(8,0){\psset{linecolor=black}\eye} +\end{pspicture} \end{lstlisting} @@ -329,34 +333,35 @@ This is a simple system with two lenses, where the \verb|\lens| macro is used on \resizebox{\textwidth}{!}{ \begin{pspicture}*(-7.5,-3)(7.5,3) - \rput(0,0){% - \lens[% - lensGlass=true,lensWidth=0.5,lensType=DVG,% - XO=0,AB=2,OA=-4,focus=-6,spotAi=270,spotBi=90]% - \psline[linewidth=1pt](xLeft)(xRight) - } - \psOutLine[length=7](B')(I){END} + \rput(0,0){% + \lens[lensGlass=true,lensWidth=0.5,lensType=DVG,% + XO=0,AB=2,OA=-4,focus=-6,spotAi=270,spotBi=90]% + \psline[linewidth=1pt](xLeft)(xRight) + } + \psline[linecolor=red,linestyle=dashed](I')(F)% Verlaengerung des Brennstrahls + \psOutLine[length=7](B')(I){END} %pour prolonger au-delà de B' permet de définir END - \psBeforeLine[length=7](I')(B'){START}% permet de définir START - \pspolygon[style=rayuresJaunes,linestyle=none](B)(I)(END)(START)(I') - \psline(B)(I)(END) - \psline(B)(I')(START) + \psBeforeLine[length=7](I')(B'){START}% permet de définir START + \pspolygon[style=rayuresJaunes,linestyle=none](B)(I)(END)(START)(I') + \psline(B)(I)(END) + \psline(B)(I')(START) \end{pspicture}% } \begin{lstlisting} \begin{pspicture}*(-7.5,-3)(7.5,3) -\rput(0,0){% - \lens[lensGlass=true,lensType=DVG,lensWidth=0.5,% - XO=0,AB=2,OA=-4,focus=-6,spotAi=270,spotBi=90]% -} -\psOutLine[length=7](B')(I){END} -% pour prolonger au-delà de B' permet de définir END -\psBeforeLine[length=7](I')(B'){START} -% permet de définir START -\pspolygon[style=rayuresJaunes,linestyle=none](B)(I)(END)(START)(I') -\psline(B)(I)(END) -\psline(B)(I')(START) + \rput(0,0){% + \lens[lensGlass=true,lensWidth=0.5,lensType=DVG,% + XO=0,AB=2,OA=-4,focus=-6,spotAi=270,spotBi=90]% + \psline[linewidth=1pt](xLeft)(xRight) + } + \psline[linecolor=red,linestyle=dashed](I')(F)% Verlaengerung des Brennstrahls + \psOutLine[length=7](B')(I){END} +%pour prolonger au-delà de B' permet de définir END + \psBeforeLine[length=7](I')(B'){START}% permet de définir START + \pspolygon[style=rayuresJaunes,linestyle=none](B)(I)(END)(START)(I') + \psline(B)(I)(END) + \psline(B)(I')(START) \end{pspicture} \end{lstlisting} @@ -364,74 +369,61 @@ This is a simple system with two lenses, where the \verb|\lens| macro is used on \section{Virtual Image} \resizebox{\textwidth}{!}{% -\begin{pspicture}*(-7.5,-6.5)(7.5,7.5) - \rput(0,0){% - \lens[lensType=DVG,lensWidth=0.75,lensHeight=8,focus=-2,% - OA=1.5,AB=1,XO=-1,lensGlass=true,% - rayColor=red,yBottom=-5,yTop=5,drawing=false]% - \psline[linewidth=1pt](xLeft)(xRight) - } - \pnode(!XO 2.5){L1}%extrémité de la lentille sup - \pnode(!XO -2.5){L2}%extrémité de la lentille inf - {% - \psset{linecolor=red,linestyle=dashed} - \psline(L1)(B) - \psline(L2)(B)% - }{% - \psset{length=4,linestyle=none} - \psOutLine(B)(L1){A1} - \psOutLine(B)(L2){A4} - \psOutLine(L1)(B'){A2} - \psOutLine(L2)(B'){A3} - \pspolygon[style=rayuresJaunes](A1)(L1)(A2)(A3)(L2)(A4) - } - \psline[linestyle=dashed]{->}(A)(B) - \psline{->}(A')(B') - \uput[90](B){B} - \uput[90](B'){$\mathrm{B'}$} - \uput[270](A){A} - \uput[270](A'){$\mathrm{A'}$} - {% - \psset{linecolor=red} - \psline(A1)(L1)(A2) - \psline(A4)(L2)(A3)} -\end{pspicture} +\begin{pspicture*}(-7.5,-6.5)(7.5,7.5) +\rput(0,0){% + \lens[lensType=DVG,lensWidth=0.75, + lensHeight=7,focus=-2,OA=-6,AB=4,XO=-1,lensGlass=true,% + rayColor=red,yBottom=-5,yTop=5,drawing=false]% + \psline[linewidth=1pt](xLeft)(xRight)} +\pnode(!XO 2.9){L1}% extrmitdelalentillesup +\pnode(!XO -2.5){L2}% extrmitdelalentilleinf +{% + \psset{length=4,linestyle=none} + \psOutLine(B')(L1){A1} + \psOutLine(B')(L2){A2} + \pspolygon[style=rayuresJaunes,linestyle=none](B)(L1)(A1)(A2)(L2) + \psset{linecolor=red,linestyle=solid} + \psline(B)(L1)(A1) + \psline(B)(L2)(A2)% + \psline[linestyle=dashed](B')(L1) + \psline[linestyle=dashed](B')(L2)% +} +\psline[linestyle=dashed]{->}(A)(B) +\psline{->}(A')(B') +\uput[90](B){B} +\uput[90](B'){$\mathrm{B'}$} +\uput[270](A){A} +\uput[270](A'){$\mathrm{A'}$} +\end{pspicture*} } \begin{lstlisting} -\begin{pspicture}*(-7.5,-6.5)(7.5,7.5) - \rput(0,0){% - \lens[lensType=DVG,lensWidth=0.75,lensHeight=8,% - focus=-2,OA=1.5,AB=1,XO=-1,lensGlass=true,% - rayColor=red,yBottom=-5,yTop=5,drawing=false]% - \psline[linewidth=1pt](xLeft)(xRight) - } - \pnode(!XO 2.5){L1}%extrémité de la lentille sup - \pnode(!XO -2.5){L2}%extrémité de la lentille inf - {% - \psset{linecolor=red,linestyle=dashed} - \psline(L1)(B) - \psline(L2)(B)% - }{% - \psset{length=4,linestyle=none} - \psOutLine(B)(L1){A1} - \psOutLine(B)(L2){A4} - \psOutLine(L1)(B'){A2} - \psOutLine(L2)(B'){A3} - \pspolygon[style=rayuresJaunes]% - (A1)(L1)(A2)(A3)(L2)(A4) - } - \psline[linestyle=dashed]{->}(A)(B) - \psline{->}(A')(B') - \uput[90](B){B} - \uput[90](B'){$\mathrm{B'}$} - \uput[270](A){A} - \uput[270](A'){$\mathrm{A'}$} - {% - \psset{linecolor=red} - \psline(A1)(L1)(A2) - \psline(A4)(L2)(A3)} -\end{pspicture} +\begin{pspicture*}(-7.5,-6.5)(7.5,7.5) +\rput(0,0){% + \lens[lensType=DVG,lensWidth=0.75, + lensHeight=7,focus=-2,OA=-6,AB=4,XO=-1,lensGlass=true,% + rayColor=red,yBottom=-5,yTop=5,drawing=false]% + \psline[linewidth=1pt](xLeft)(xRight)} +\pnode(!XO 2.9){L1}% extrmitdelalentillesup +\pnode(!XO -2.5){L2}% extrmitdelalentilleinf +{% + \psset{length=4,linestyle=none} + \psOutLine(B')(L1){A1} + \psOutLine(B')(L2){A2} + \pspolygon[style=rayuresJaunes,linestyle=none](B)(L1)(A1)(A2)(L2) + \psset{linecolor=red,linestyle=solid} + \psline(B)(L1)(A1) + \psline(B)(L2)(A2)% + \psline[linestyle=dashed](B')(L1) + \psline[linestyle=dashed](B')(L2)% +} +\psline[linestyle=dashed]{->}(A)(B) +\psline{->}(A')(B') +\uput[90](B){B} +\uput[90](B'){$\mathrm{B'}$} +\uput[270](A){A} +\uput[270](A'){$\mathrm{A'}$} +\end{pspicture*} \end{lstlisting} \section{A Microscope} -- cgit v1.2.3