summaryrefslogtreecommitdiff
path: root/graphics/pgf/contrib/tikz-mirror-lens/tex/tikz-mirror-lens.sty
diff options
context:
space:
mode:
Diffstat (limited to 'graphics/pgf/contrib/tikz-mirror-lens/tex/tikz-mirror-lens.sty')
-rw-r--r--graphics/pgf/contrib/tikz-mirror-lens/tex/tikz-mirror-lens.sty59
1 files changed, 29 insertions, 30 deletions
diff --git a/graphics/pgf/contrib/tikz-mirror-lens/tex/tikz-mirror-lens.sty b/graphics/pgf/contrib/tikz-mirror-lens/tex/tikz-mirror-lens.sty
index cac1f21c2d..00301f6f8f 100644
--- a/graphics/pgf/contrib/tikz-mirror-lens/tex/tikz-mirror-lens.sty
+++ b/graphics/pgf/contrib/tikz-mirror-lens/tex/tikz-mirror-lens.sty
@@ -5,6 +5,7 @@
\NeedsTeXFormat{LaTeX2e}[1994/06/01]
\ProvidesPackage{tikz-mirror-lens}[2022-12-25 Custom Package for drawing spherical mirrors and lens -- FHZ -- Version 1.0.0]
+\RequirePackage{amsmath}
\RequirePackage{tikz}
\usetikzlibrary{calc}
\usetikzlibrary{math}
@@ -144,7 +145,7 @@
% Summary of commands
% \mirrorBase{f}{ymirror}{minEixoX}{maxEixoX}
% \mirrorPts{v}{f}{c}
-% \mirrorRays{p}{pp}{o}{i}
+% \mirrorRays[arrow]{p}{pp}{o}{i}
% =======================================================
\newcommand{\mirrorBase}[4]{
\begin{scope}
@@ -166,19 +167,19 @@
\fill (#3,0) coordinate(C) circle(0.05) node[below]{$c$};
\end{scope}
}
-\newcommand{\mirrorRays}[4]{
+\newcommand{\mirrorRays}[5][60]{
\begin{scope}[thick,extended line=25pt]
\tikzmath{
- if (#2 != 0) then {
+ if (#3 != 0) then {
{
- \draw[arrDec={#1},cyan] (#1,#3) -- (0,#3) -- (F) -- (#2,#4);
- \draw[arrDec={#1-10},magenta] (O) -- (F) -- (0,#4) -- (#2,#4);
- \draw[arrDec={#1-10},violet,dotted] (O) -- (V) -- (#2,#4);
+ \draw[arrDec={#1},cyan] (#2,#4) -- (0,#4) -- (F) -- (#3,#5);
+ \draw[arrDec={#1-10},magenta] (O) -- (F) -- (0,#5) -- (#3,#5);
+ \draw[arrDec={#1-10},violet,dotted] (O) -- (V) -- (#3,#5);
};
} else {
{
- \draw[arrDec={#1},cyan] (#1,#3) -- (0,#3) -- (F);
- \draw[arrDec={#1-10},violet,dotted] (O) -- (V) -- (#1,-#3);
+ \draw[arrDec={#1},cyan] (#2,#4) -- (0,#4) -- (F);
+ \draw[arrDec={#1-10},violet,dotted] (O) -- (V) -- (#2,-#4);
};
};
};
@@ -192,7 +193,7 @@
% Summary of commands
% \lensBase{f}{ymirror}{minEixoX}{maxEixoX}
% \lensPts{v}{f}{a}
-% \lensRays{p}{pp}{o}{i}
+% \lensRays[arrows]{p}{pp}{o}{i}
% =======================================================
\newcommand{\lensBase}[4]{
\begin{scope}
@@ -214,19 +215,19 @@
\fill (-#3,0) coordinate(Ci) circle(0.05) node[below]{$A_i$};
\end{scope}
}
-\newcommand{\lensRays}[4]{
+\newcommand{\lensRays}[5][60]{
\begin{scope}[thick,extended line=25pt]
\tikzmath{
- if (\pp != 0) then {
+ if (#3 != 0) then {
{
- \draw[arrDec={#1},cyan] (\p,\o) -- (0,\o) -- (Fi) -- (\pp,\i);
- \draw[arrDec={#1-10},magenta] (O) -- (F) -- (0,\i) -- (\pp,\i);
- \draw[arrDec={#1-10},violet,dotted] (O) -- (V) -- (\pp,\i);
+ \draw[arrDec={#1},cyan] (#2,#4) -- (0,#4) -- (Fi) -- (#3,#5);
+ \draw[arrDec={#1-10},magenta] (O) -- (F) -- (0,#5) -- (#3,#5);
+ \draw[arrDec={#1-10},violet,dotted] (O) -- (V) -- (#3,#5);
};
} else {
{
- \draw[arrDec={#1},cyan] (\p,\o) -- (0,\o) -- (Fi);
- \draw[arrDec={#1-10},violet,dotted] (O) -- (V) -- (-\p,-\o);
+ \draw[arrDec={#1},cyan] (#2,#4) -- (0,#4) -- (Fi);
+ \draw[arrDec={#1-10},violet,dotted] (O) -- (V) -- (-#2,-#4);
};
};
};
@@ -256,7 +257,7 @@
\mirrorBase{\f}{\ymirror}{{min(\v,\pp,\c)}}{{max(\c+0.5,\p,\pp)}}
\mirrorPts{\v}{\f}{\c}
\mirrorLensObjIma{\p}{\pp}{\o}{\i}
- \mirrorRays{\p}{\pp}{\o}{\i}
+ \mirrorRays[#1]{\p}{\pp}{\o}{\i}
\end{tikzpicture}
}
\newcommand{\mirrorSphGaussCoord}[5][60]{
@@ -278,7 +279,7 @@
\mirrorBase{\f}{\ymirror}{{min(\v,\pp,\c)}}{{max(\c+0.5,\p,\pp)}}
\mirrorPts{\v}{\f}{\c}
\mirrorLensObjIma{\p}{\pp}{\o}{\i}
- \mirrorRays{\p}{\pp}{\o}{\i}
+ \mirrorRays[#1]{\p}{\pp}{\o}{\i}
\mirrorLensCoord{\p}{\pp}{\o}{\i}{\f}{({max(\c+0.5,\p,\pp)+1},-1)}
\end{tikzpicture}
}
@@ -301,7 +302,7 @@
\mirrorBase{\f}{\ymirror}{#7}{#8}
\mirrorPts{\v}{\f}{\c}
\mirrorLensObjIma{\p}{\pp}{\o}{\i}
- \mirrorRays{\p}{\pp}{\o}{\i}
+ \mirrorRays[#1]{\p}{\pp}{\o}{\i}
\end{tikzpicture}
}
\newcommand{\mirrorSphGaussFixedCoord}[9][60]{
@@ -323,7 +324,7 @@
\mirrorBase{\f}{\ymirror}{#7}{#8}
\mirrorPts{\v}{\f}{\c}
\mirrorLensObjIma{\p}{\pp}{\o}{\i}
- \mirrorRays{\p}{\pp}{\o}{\i}
+ \mirrorRays[#1]{\p}{\pp}{\o}{\i}
\mirrorLensCoord{\p}{\pp}{\o}{\i}{\f}{#9}
\end{tikzpicture}
}
@@ -351,8 +352,7 @@
\lensBase{\f}{\ymirror}{{min(\v,\pp,\a)}}{{max(\a+0.5,\p,\pp)}}
\lensPts{\v}{\f}{\a}
\mirrorLensObjIma{\p}{\pp}{\o}{\i}
- \lensRays{\p}{\pp}{\o}{\i}
- %\mirrorLensCoord{\p}{\pp}{\o}{\i}{\f}{{max(\a+0.5,\p,\pp)}+1}
+ \lensRays[#1]{\p}{\pp}{\o}{\i}
\end{tikzpicture}
}
\newcommand{\lensSphGaussCoord}[5][60]{
@@ -374,7 +374,7 @@
\lensBase{\f}{\ymirror}{{min(\v,\pp,\a)}}{{max(\a+0.5,\p,\pp)}}
\lensPts{\v}{\f}{\a}
\mirrorLensObjIma{\p}{\pp}{\o}{\i}
- \lensRays{\p}{\pp}{\o}{\i}
+ \lensRays[#1]{\p}{\pp}{\o}{\i}
\mirrorLensCoord{\p}{\pp}{\o}{\i}{\f}{({max(\a+0.5,\p,\pp)+1},-1)}
\end{tikzpicture}
}
@@ -397,7 +397,7 @@
\lensBase{\f}{\ymirror}{#7}{#8}
\lensPts{\v}{\f}{\a}
\mirrorLensObjIma{\p}{\pp}{\o}{\i}
- \lensRays{\p}{\pp}{\o}{\i}
+ \lensRays[#1]{\p}{\pp}{\o}{\i}
\end{tikzpicture}
}
\newcommand{\lensSphGaussFixedCoord}[9][60]{
@@ -419,7 +419,7 @@
\lensBase{\f}{\ymirror}{#7}{#8}
\lensPts{\v}{\f}{\a}
\mirrorLensObjIma{\p}{\pp}{\o}{\i}
- \lensRays{\p}{\pp}{\o}{\i}
+ \lensRays[#1]{\p}{\pp}{\o}{\i}
\mirrorLensCoord{\p}{\pp}{\o}{\i}{\f}{#9}
\end{tikzpicture}
}
@@ -447,8 +447,7 @@
\lensBase{\f}{\ymirror}{{min(\v,\p,\pp,\a,-\a)}}{{max(\v,\p,\pp,\a,-\a)}}
\lensPts{\v}{-\f}{-\a}
\mirrorLensObjIma{\p}{\pp}{\o}{\i}
- \lensRays{\p}{\pp}{\o}{\i}
- %\mirrorLensCoord{\p}{\pp}{\o}{\i}{\f}{{max(\a+0.5,\p,\pp)}+1}
+ \lensRays[#1]{\p}{\pp}{\o}{\i}
\end{tikzpicture}
}
\newcommand{\lensSphGaussLCoord}[5][60]{
@@ -470,7 +469,7 @@
\lensBase{\f}{\ymirror}{{min(\v,\p,\pp,\a,-\a)}}{{max(\v,\p,\pp,\a,-\a)}}
\lensPts{\v}{-\f}{-\a}
\mirrorLensObjIma{\p}{\pp}{\o}{\i}
- \lensRays{\p}{\pp}{\o}{\i}
+ \lensRays[#1]{\p}{\pp}{\o}{\i}
\mirrorLensCoord{\p}{\pp}{\o}{\i}{\f}{({max(\v,\p,\pp,\a,-\a)},-1)}
\end{tikzpicture}
}
@@ -493,7 +492,7 @@
\lensBase{\f}{\ymirror}{#7}{#8}
\lensPts{\v}{-\f}{-\a}
\mirrorLensObjIma{\p}{\pp}{\o}{\i}
- \lensRays{\p}{\pp}{\o}{\i}
+ \lensRays[#1]{\p}{\pp}{\o}{\i}
\end{tikzpicture}
}
\newcommand{\lensSphGaussLFixedCoord}[9][60]{
@@ -515,7 +514,7 @@
\lensBase{\f}{\ymirror}{#7}{#8}
\lensPts{\v}{-\f}{-\a}
\mirrorLensObjIma{\p}{\pp}{\o}{\i}
- \lensRays{\p}{\pp}{\o}{\i}
+ \lensRays[#1]{\p}{\pp}{\o}{\i}
\mirrorLensCoord{\p}{\pp}{\o}{\i}{\f}{#9}
\end{tikzpicture}
}