diff options
Diffstat (limited to 'graphics/pgf/contrib/tikzlings/tikzlings-owls.sty')
-rw-r--r-- | graphics/pgf/contrib/tikzlings/tikzlings-owls.sty | 24 |
1 files changed, 19 insertions, 5 deletions
diff --git a/graphics/pgf/contrib/tikzlings/tikzlings-owls.sty b/graphics/pgf/contrib/tikzlings/tikzlings-owls.sty index feebc6f2c6..8955aff419 100644 --- a/graphics/pgf/contrib/tikzlings/tikzlings-owls.sty +++ b/graphics/pgf/contrib/tikzlings/tikzlings-owls.sty @@ -12,7 +12,7 @@ % See http://www.latex-project.org/lppl.txt % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ProvidesPackage{tikzlings-owls}[2020/12/04 version v0.4 Draw owls in TikZ] +\ProvidesPackage{tikzlings-owls}[2021/03/17 version v0.5 Draw owls in TikZ] \RequirePackage{tikz} \RequirePackage{tikzlings-addons} @@ -31,6 +31,7 @@ \newif\ifowl@threeD \newif\ifowl@back +\newif\ifowl@contour \tikzset{ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -62,6 +63,10 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% 3D/.code = \owl@threeDtrue, back/.code = \owl@backtrue, + contour/.code = \owl@contourtrue + \def\owl@contour{#1}, + contour/.default = black, + outline/.forward to = /owl/contour, } \def\owl@draw{% @@ -85,14 +90,18 @@ % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % -% switch between 2D and 3D, from +% switch between 2D, 3D and contours, from % https://chat.stackexchange.com/transcript/message/45991801#45991801 % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ifowl@threeD \def\owl@part@draw[##1]{\shade[ball color=##1]} \else - \def\owl@part@draw[##1]{\fill[##1]} + \ifowl@contour + \def\owl@part@draw[##1]{\draw[##1,\owl@contour,fill=white,line width=\scalingfactor*0.4pt]} + \else + \def\owl@part@draw[##1]{\fill[##1]} + \fi \fi % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -139,9 +148,14 @@ % % Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ifowl@back\else - \fill[\owl@eye] (-0.28, 1.6) circle[radius=0.22]; + \ifowl@contour + \owl@part@draw[\owl@eye] (-0.28, 1.6) circle[radius=0.22]; + \owl@part@draw[\owl@eye] (0.28, 1.6) circle[radius=0.22]; + \else + \fill[\owl@eye] (-0.28, 1.6) circle[radius=0.22]; + \fill[\owl@eye] (0.28, 1.6) circle[radius=0.22]; + \fi \owl@part@draw[\owl@pupil] (-0.28, 1.6) circle[radius=0.15]; - \fill[\owl@eye] (0.28, 1.6) circle[radius=0.22]; \owl@part@draw[\owl@pupil] (0.28, 1.6) circle[radius=0.15]; \owl@part@draw[white] (0.25, 1.64) circle[radius=0.03]; \owl@part@draw[white] (-0.31, 1.64) circle[radius=0.03]; |