summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/tikzducks
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-08-15 20:44:52 +0000
committerKarl Berry <karl@freefriends.org>2017-08-15 20:44:52 +0000
commitd02867cc9ea208a26444af0c12e3ca87083ee177 (patch)
tree640da2ec27184a7ea50d0f43eddba7e588676749 /Master/texmf-dist/tex/latex/tikzducks
parentca2b0093893ee418e30136f6ea68a38b6df363a7 (diff)
tikzducks (15aug17)
git-svn-id: svn://tug.org/texlive/trunk@45048 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/tikzducks')
-rw-r--r--Master/texmf-dist/tex/latex/tikzducks/tikzducks.sty297
1 files changed, 196 insertions, 101 deletions
diff --git a/Master/texmf-dist/tex/latex/tikzducks/tikzducks.sty b/Master/texmf-dist/tex/latex/tikzducks/tikzducks.sty
index 5ddf01db5da..d549ac66320 100644
--- a/Master/texmf-dist/tex/latex/tikzducks/tikzducks.sty
+++ b/Master/texmf-dist/tex/latex/tikzducks/tikzducks.sty
@@ -10,8 +10,8 @@
% Released under the LaTeX Project Public License v1.3c or later
% See http://www.latex-project.org/lppl.txt
%
-% Version 0.2
-% Aug 2, 2017
+% Version 0.3
+% Aug 15, 2017
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -20,28 +20,39 @@
\RequirePackage{xcolor}
\RequirePackage{tikz}
\usetikzlibrary{patterns} % for the wizard hat
+%\usetikzlibrary{intersections} % for named paths
-\newcommand*{\duck}[1][]{\tikzset{/duck/.cd,#1}\duck@draw}
+\newcommand*{\duck}[1][]{\tikzset{%
+ /duck/.cd,#1}\duck@draw%
+}
+% Environment %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newif\ifduck@water
+% body parts %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newif\ifduck@grumpy
+% hair styles %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newif\ifduck@shorthair
\newif\ifduck@longhair
\newif\ifduck@crazyhair
\newif\ifduck@recedinghair
\newif\ifduck@eyebrow
+% clothing %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newif\ifduck@tshirt
\newif\ifduck@jacket
\newif\ifduck@tie
+% Accessories %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\newif\ifduck@glasses
\newif\ifduck@sunglasses
\newif\ifduck@alien
\newif\ifduck@hat
+\newif\ifduck@cap
+\newif\ifduck@santa
\newif\ifduck@unicorn
-\newif\ifduck@water
\newif\ifduck@icecream
\newif\ifduck@book
\newif\ifduck@magichat
\newif\ifduck@magicwand
+\newif\ifduck@cricket
\tikzset{
/duck/.cd,
@@ -106,6 +117,8 @@
sunglasses/.code = \duck@sunglassestrue \def\duck@sunglasses{#1},
alien/.code = \duck@alientrue \def\duck@alien{#1},
hat/.code = \duck@hattrue \def\duck@hat{#1},
+ cap/.code = \duck@captrue \def\duck@cap{#1},
+ santa/.code = \duck@santatrue \def\duck@santa{#1},
unicorn/.code = \duck@unicorntrue \def\duck@unicorn{#1},
icecream/.code = \duck@icecreamtrue \def\duck@cone{#1},
flavoura/.code = \def\duck@flavoura{#1},
@@ -116,11 +129,14 @@
magichat/.code = \duck@magichattrue \def\duck@magichat{#1},
magicstars/.code = \def\duck@magicstars{#1},
magicwand/.code = \duck@magicwandtrue,
+ cricket/.code = \duck@crickettrue \def\duck@cricket{#1},
% setting defaults %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
glasses/.default = black,
sunglasses/.default = black,
alien/.default = green,
hat/.default = brown,
+ cap/.default = blue,
+ santa/.default = red!80!black,
unicorn/.default = pink,
icecream/.default = brown!70!black,
flavoura = brown!50!black,
@@ -129,24 +145,34 @@
bookcolour = brown,
magichat/.default = violet,
magicstars = yellow!80!brown,
+ cricket/.default = brown,
}
\def\duck@draw{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
+% defining some coordinates
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\coordinate (wing) at (0.8,0.7);
+\coordinate (head) at (0.9,2);
+\coordinate (bill) at (0.5,1.3);
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
% Environment
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% water %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@water
- \path[draw=\duck@water, line width=5]
+ \draw[\duck@water, line width=5]
(1.00,0.40) ellipse (0.80 and 0.28);
- \path[draw=\duck@water, line width=3]
+ \draw[\duck@water, line width=3]
(1.00,0.40) ellipse (1.00 and 0.45);
- \path[draw=\duck@water, line width=2]
+ \draw[\duck@water, line width=2]
(1.00,0.40) ellipse (1.20 and 0.60);
- \path[draw=\duck@water, line width=1]
+ \draw[\duck@water, line width=1]
(1.00,0.40) ellipse (1.40 and 0.75);
\fi
%
@@ -157,40 +183,30 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% body %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\path[fill=\duck@body]
- (0.513,1.145) .. controls (0.267, 1.102) and (-0.125,0.657) ..
- (0.289,0.261) .. controls (0.704,-0.135) and ( 2.863,0.130) ..
- (1.818,1.419) .. controls (0.938, 0.946) and ( 1.240,1.379) ..
- (0.513,1.145) -- cycle;
+\fill[\duck@body] \duckpathbody;
%
% head %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifdefined\duck@head\else\let\duck@head=\duck@body\fi
-\path[fill=\duck@head]
+\fill[\duck@head]
(0.90,1.50) ellipse (0.50 and 0.625);
%
% bill %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@grumpy
- \path[fill=\duck@bill]
- (0.406,1.472) .. controls (0.643,1.530) and (0.643,1.530) ..
- (0.800,1.300) .. controls (0.083,0.850) and (0.269,1.369) ..
- (0.406,1.472) -- cycle;
+ \fill[\duck@bill] \duckpathgrumpybill;
\else
- \path[fill=\duck@bill]
- (0.406,1.472) .. controls (0.643,1.530) and (0.541,1.303) ..
- (0.910,1.370) .. controls (0.083,0.850) and (0.269,1.369) ..
- (0.406,1.472) -- cycle;
+ \fill[\duck@bill] \duckpathbill;
\fi
%
% right eye %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\path[fill=\duck@eye, rotate=-20]
+\fill[\duck@eye, rotate=-20]
(0.23,1.7675) ellipse (0.0893 and 0.125);
-\path[fill=\duck@pupil, rotate=-20]
+\fill[\duck@pupil, rotate=-20]
(0.26,1.7575) ellipse (0.0357 and 0.0714);
%
% left eye %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\path[fill=\duck@eye, rotate=-20]
+\fill[\duck@eye, rotate=-20]
(-0.06,1.74) ellipse (0.0786 and 0.1143);
-\path[fill=\duck@pupil, rotate=-20]
+\fill[\duck@pupil, rotate=-20]
(-0.03,1.73) ellipse (0.0286 and 0.0643);
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -201,11 +217,7 @@
%
% tshirt %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@tshirt
- \path[fill=\duck@tshirt]
- (0.490,1.145) .. controls (0.267, 1.102) and (-0.125,0.657) ..
- (0.289,0.261) .. controls (0.704,-0.135) and ( 2.863,0.130) ..
- (1.818,1.419) .. controls (0.938, 0.976) and ( 1.240,1.279) ..
- (0.590,1.000) -- cycle;
+ \fill[\duck@tshirt] \duckpathtshirt;
\fi
%
% tie %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -215,11 +227,7 @@
%
% jacket %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@jacket
- \path[fill=\duck@jacket]
- (0.500,1.145) .. controls (0.267, 1.102) and (-0.125,0.657) ..
- (0.289,0.261) .. controls (0.704,-0.135) and ( 2.863,0.130) ..
- (1.818,1.419) .. controls (0.938, 0.946) and ( 1.240,1.378) ..
- (0.513,0.700) -- cycle;
+ \fill[\duck@jacket] \duckpathjacket;
\fi
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -230,65 +238,26 @@
%
% short hair %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@shorthair
- \path[fill=\duck@hair]
- (1.3947,1.4175) .. controls (1.4546,1.4518) and (1.4699,1.6566) ..
- (1.4343,1.7992) .. controls (1.2528,2.5033) and (0.2339,2.2710) ..
- (0.4151,1.5907) .. controls (0.4345,1.8709) and (0.7421,2.0999) ..
- (0.9494,1.9054) .. controls (1.2241,1.6476) and (1.3316,1.3814) ..
- (1.3947,1.4175) -- cycle;
+ \fill[\duck@hair] \duckpathshorthair;
\fi
%
% long hair %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@longhair
- \path[fill=\duck@hair]
- (1.4508,0.7565) .. controls (1.5146,0.7888) and (1.5854,0.8216) ..
- (1.6247,0.8831) .. controls (1.5859,0.8847) and (1.4726,0.9457) ..
- (1.5587,0.9706) .. controls (1.6317,0.9685) and (1.7016,1.0046) ..
- (1.7314,1.0734) .. controls (1.7931,1.1660) and (1.6616,1.1176) ..
- (1.6277,1.1566) .. controls (1.6853,1.1741) and (1.7840,1.1829) ..
- (1.8123,1.2244) .. controls (1.7022,1.2488) and (1.5688,1.2663) ..
- (1.5063,1.3739) .. controls (1.4619,1.5143) and (1.4696,1.6649) ..
- (1.4340,1.8076) .. controls (1.2524,2.5117) and (0.2335,2.2794) ..
- (0.4148,1.5991) .. controls (0.4341,1.8793) and (0.6629,2.1130) ..
- (0.9011,1.9578) .. controls (1.2427,1.7382) and (1.3350,1.4214) ..
- (1.0905,1.0610) .. controls (1.0897,1.0109) and (1.1103,0.9166) ..
- (1.1805,0.8670) .. controls (1.2507,0.8174) and (1.3503,0.7853) ..
- (1.4508,0.7565) -- cycle;
+ \fill[\duck@hair] \duckpathlonghair;
\fi
%
% crazy hair %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@crazyhair
- \path[fill=\duck@hair]
- (0.1977,1.9023) .. controls (0.2633,2.0599) and (0.4819,2.0547) ..
- (0.4713,2.0879) .. controls (0.4647,2.2106) and (0.2516,2.2392) ..
- (0.2516,2.2392) .. controls (0.4352,2.2933) and (0.7427,1.9304) ..
- (0.5743,2.3885) .. controls (0.6017,2.3633) and (0.8307,2.1739) ..
- (0.8082,2.4245) .. controls (0.8271,2.2885) and (0.9195,2.0400) ..
- (0.9933,2.2673) .. controls (1.0814,2.6593) and (0.9688,2.0034) ..
- (1.3350,2.3615) .. controls (1.3657,2.3292) and (1.1627,2.1043) ..
- (1.3424,2.1387) .. controls (1.3102,1.8312) and (1.5049,2.2623) ..
- (1.5049,2.2623) .. controls (1.5049,2.2623) and (1.4675,2.0493) ..
- (1.4287,1.9560) .. controls (1.4287,1.9560) and (1.6830,1.9470) ..
- (1.7178,1.8823) .. controls (1.1926,1.8054) and (2.0160,1.7277) ..
- (1.4923,1.7275) .. controls (1.5366,1.6685) and (1.3013,1.6009) ..
- (1.6500,1.5946) .. controls (0.8836,1.5797) and (1.2764,1.9221) ..
- (0.8957,2.0442) .. controls (0.5516,2.0958) and (0.5228,1.8527) ..
- (0.4695,1.7963) .. controls (0.4825,1.9607) and (0.3601,1.9095) ..
- (0.1977,1.9023) -- cycle;%
+ \fill[\duck@hair] \duckpathcrazyhair;
\fi
%
% receding hair %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@recedinghair
- \path[fill=\duck@hair]
- (1.3385,1.4841) .. controls (1.4243,1.4529) and (1.4877,1.7127) ..
- (1.3964,1.8658) .. controls (1.1071,2.3511) and (0.5189,2.1609) ..
- (0.4381,1.6816) .. controls (0.4575,1.9618) and (0.9007,2.2059) ..
- (1.1308,2.0390) .. controls (1.4703,1.7469) and (1.0343,1.5949) ..
- (1.3385,1.4841) -- cycle;%
+ \fill[\duck@hair] \duckpathrecedinghair;
\fi
%
% eye brow %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\def\duck@test{brown}
+\pgfkeys{/duck/eyebrow/.@def/.get=\duck@test}
\ifx\duck@eyebrow\duck@test
\ifdefined\duck@hair\let\duck@eyebrow=\duck@hair\fi
\fi%
@@ -307,25 +276,25 @@
%
% sunglasses %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@sunglasses
- \path[draw=\duck@sunglasses,line width=1]
+ \draw[\duck@sunglasses,line width=1]
(0.93,1.62) -- (1.30,1.50);
\draw[line width=1,color=\duck@sunglasses]
(0.73,1.67) arc (65:92:0.20);
- \path[fill=\duck@sunglasses, line width=1,rotate=-20]
+ \fill[\duck@sunglasses, line width=1,rotate=-20]
(0.23,1.7675) circle (0.125);
- \path[fill=\duck@sunglasses,line width=1,rotate=-20]
+ \fill[\duck@sunglasses,line width=1,rotate=-20]
(-0.06,1.74) circle (0.1143);
\fi
%
% glasses %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@glasses
- \path[draw=\duck@glasses,line width=1]
+ \draw[\duck@glasses,line width=1]
(0.93,1.62) -- (1.30,1.50);
\draw[line width=1,color=\duck@glasses]
(0.73,1.67) arc (65:92:0.20);
- \path[draw=\duck@glasses, line width=1,rotate=-20]
+ \draw[\duck@glasses, line width=1,rotate=-20]
(0.23,1.7675) circle (0.125);
- \path[draw=\duck@glasses,line width=1,rotate=-20]
+ \draw[\duck@glasses,line width=1,rotate=-20]
(-0.06,1.74) circle (0.1143);
\fi
%
@@ -333,47 +302,69 @@
\ifduck@alien
\draw[line width=2,color=\duck@alien] (1.00,1.83) -- (1.20,2.30);
\draw[line width=2,color=\duck@alien] (0.65,1.92) -- (0.60,2.35);
- \path[fill=\duck@alien] (1.20,2.30) circle (0.07);
- \path[fill=\duck@alien] (0.60,2.35) circle (0.07);
+ \fill[\duck@alien] (1.20,2.30) circle (0.07);
+ \fill[\duck@alien] (0.60,2.35) circle (0.07);
\fi
%
% hat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@hat
- \path[fill=\duck@hat] (0.90,1.95) ellipse (0.46 and 0.0893);%
- \path[fill=\duck@hat] (0.90,2.20) ellipse (0.25 and 0.0714);%
- \path[fill=\duck@hat] (1.15,2.20) rectangle (0.65,1.95);%
+ \fill[\duck@hat] (0.90,1.95) ellipse (0.46 and 0.0893);
+ \fill[\duck@hat] (0.90,2.20) ellipse (0.25 and 0.0714);
+ \fill[\duck@hat] (1.15,2.20) rectangle (0.65,1.95);
+\fi
+%
+% cap %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ifduck@cap
+ \fill[\duck@cap, start angle=0, end angle=150, radius=0.5] (1.4,1.75) arc;
+ \fill[\duck@cap,rotate=-15] (0.3,2.05) ellipse (0.6 and 0.15);
+\fi
+%
+% Santa %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ifduck@santa
+ \fill[\duck@santa]
+ (0.430,1.803) .. controls (0.590,2.174) and (0.837,2.065) ..
+ (1.118,1.954) .. controls (1.679,1.731) and (1.328,1.193) ..
+ (1.647,1.057) .. controls (1.638,1.255) and (1.745,2.104) ..
+ (1.168,2.270) .. controls (0.867,2.356) and (0.536,2.280) ..
+ (0.430,1.803) -- cycle;
+ \fill[white!80!brown]
+ (0.44,1.733) .. controls (0.211,2.299) and (1.082,2.188) ..
+ (1.456,1.759) .. controls (1.534,1.637) and (1.480,1.545) ..
+ (1.400,1.566) .. controls (1.265,1.714) and (0.577,2.267) ..
+ (0.44,1.733) -- cycle;
+ \fill[white!80!brown] (1.6,1.0) circle (0.17);
\fi
%
% unicorn %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@unicorn
- \path[draw=\duck@unicorn,fill=\duck@body,line width=1,rotate=25]
- (1.50,1.4375)--(1.60,1.8375)--(1.70,1.4375);%
+ \draw[\duck@unicorn,fill=\duck@body!100,line width=1,rotate=25]
+ (1.50,1.4375)--(1.60,1.8375)--(1.70,1.4375);
\fi
%
% icecream %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@icecream
- \path[draw=\duck@cone,fill=\duck@cone!50!white,
+ \draw[\duck@cone,fill=\duck@cone!50!white,
line width=0.5,rotate=-20]
(0.35,1.20)--(0.50,0.60)--(0.75,1.20);
- \path[draw=\duck@cone,fill=\duck@cone!50!white,
+ \draw[\duck@cone,fill=\duck@cone!50!white,
rotate=-20,line width=0.5]
(0.55,1.20) ellipse (0.20 and 0.09);
- \path[fill=\duck@flavoura] (0.82,1.03) circle (0.12);
- \path[fill=\duck@flavourb] (1.02,0.95) circle (0.12);
- \path[fill=\duck@flavourc] (0.95,1.06) circle (0.12);
+ \fill[\duck@flavoura] (0.82,1.03) circle (0.12);
+ \fill[\duck@flavourb] (1.02,0.95) circle (0.12);
+ \fill[\duck@flavourc] (0.95,1.06) circle (0.12);
\fi
%
% book %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@book
- \path[fill=\duck@bookcolour,rotate=-20]
+ \fill[\duck@bookcolour,rotate=-20]
(0.40,1.20) rectangle (0.80,0.60);
\node[rotate=-20, color=white] at (0.88,0.70) {\duck@book};%
\fi
%
% magic hat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifduck@magichat
- \path[preaction={fill, \duck@magichat},rotate=-5,
- pattern=fivepointed stars, pattern color=\duck@magicstars]
+ \path[preaction={fill, \duck@magichat!100},rotate=-5,
+ pattern=fivepointed stars, pattern color=\duck@magicstars!100]
(0.36,1.95)--(0.86,2.95)--(1.20,1.85);
\fi
%
@@ -383,9 +374,113 @@
\draw[line width=2.5,color=white] (0.85,0.8167) -- (0.80,0.7333);
\fi
%
+% cricket bat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ifduck@cricket
+ \fill[\duck@cricket, rounded corners=2, rotate=-30] (0.4,1.2) rectangle (0.7,2.2);
+ \fill[\duck@cricket, rounded corners=1, rotate=-30] (0.5,0.8) rectangle (0.6,1.3);
+\fi
+%
}% from `\def\duck@draw{` at the very beginning
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Defining some of the more complicate paths for easy reuse
+%
+% naming scheme is \duckpath<name>
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+% body parts %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand{\duckpathbody}{%
+ (0.513,1.145) .. controls (0.267, 1.102) and (-0.125,0.657) ..
+ (0.289,0.261) .. controls (0.704,-0.135) and ( 2.863,0.130) ..
+ (1.818,1.419) .. controls (0.938, 0.946) and ( 1.240,1.379) ..
+ (0.513,1.145) -- cycle
+}
+
+\newcommand{\duckpathgrumpybill}{%
+ (0.406,1.472) .. controls (0.643,1.530) and (0.643,1.530) ..
+ (0.800,1.300) .. controls (0.083,0.850) and (0.269,1.369) ..
+ (0.406,1.472) -- cycle
+}
+
+\newcommand{\duckpathbill}{%
+ (0.406,1.472) .. controls (0.643,1.530) and (0.541,1.303) ..
+ (0.910,1.370) .. controls (0.083,0.850) and (0.269,1.369) ..
+ (0.406,1.472) -- cycle
+}
+
+% clothing %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand{\duckpathtshirt}{%
+ (0.490,1.145) .. controls (0.267, 1.102) and (-0.125,0.657) ..
+ (0.289,0.261) .. controls (0.704,-0.135) and ( 2.863,0.130) ..
+ (1.818,1.419) .. controls (0.938, 0.976) and ( 1.240,1.279) ..
+ (0.590,1.000) -- cycle
+}
+
+\newcommand{\duckpathjacket}{%
+ (0.500,1.145) .. controls (0.267, 1.102) and (-0.125,0.657) ..
+ (0.289,0.261) .. controls (0.704,-0.135) and ( 2.863,0.130) ..
+ (1.818,1.419) .. controls (0.938, 0.946) and ( 1.240,1.378) ..
+ (0.513,0.700) -- cycle
+}
+
+% hair styles %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\newcommand{\duckpathshorthair}{%
+ (1.3947,1.4175) .. controls (1.4546,1.4518) and (1.4699,1.6566) ..
+ (1.4343,1.7992) .. controls (1.2528,2.5033) and (0.2339,2.2710) ..
+ (0.4151,1.5907) .. controls (0.4345,1.8709) and (0.7421,2.0999) ..
+ (0.9494,1.9054) .. controls (1.2241,1.6476) and (1.3316,1.3814) ..
+ (1.3947,1.4175) -- cycle
+}
+
+\newcommand{\duckpathlonghair}{%
+ (1.4508,0.7565) .. controls (1.5146,0.7888) and (1.5854,0.8216) ..
+ (1.6247,0.8831) .. controls (1.5859,0.8847) and (1.4726,0.9457) ..
+ (1.5587,0.9706) .. controls (1.6317,0.9685) and (1.7016,1.0046) ..
+ (1.7314,1.0734) .. controls (1.7931,1.1660) and (1.6616,1.1176) ..
+ (1.6277,1.1566) .. controls (1.6853,1.1741) and (1.7840,1.1829) ..
+ (1.8123,1.2244) .. controls (1.7022,1.2488) and (1.5688,1.2663) ..
+ (1.5063,1.3739) .. controls (1.4619,1.5143) and (1.4696,1.6649) ..
+ (1.4340,1.8076) .. controls (1.2524,2.5117) and (0.2335,2.2794) ..
+ (0.4148,1.5991) .. controls (0.4341,1.8793) and (0.6629,2.1130) ..
+ (0.9011,1.9578) .. controls (1.2427,1.7382) and (1.3350,1.4214) ..
+ (1.0905,1.0610) .. controls (1.0897,1.0109) and (1.1103,0.9166) ..
+ (1.1805,0.8670) .. controls (1.2507,0.8174) and (1.3503,0.7853) ..
+ (1.4508,0.7565) -- cycle
+}
+
+\newcommand{\duckpathcrazyhair}{%
+ (0.1977,1.9023) .. controls (0.2633,2.0599) and (0.4819,2.0547) ..
+ (0.4713,2.0879) .. controls (0.4647,2.2106) and (0.2516,2.2392) ..
+ (0.2516,2.2392) .. controls (0.4352,2.2933) and (0.7427,1.9304) ..
+ (0.5743,2.3885) .. controls (0.6017,2.3633) and (0.8307,2.1739) ..
+ (0.8082,2.4245) .. controls (0.8271,2.2885) and (0.9195,2.2400) ..
+ (0.9933,2.2673) .. controls (1.0814,2.6593) and (0.9688,2.0034) ..
+ (1.3350,2.3615) .. controls (1.3657,2.3292) and (1.1627,2.1043) ..
+ (1.3424,2.1387) .. controls (1.3102,1.8312) and (1.5049,2.2623) ..
+ (1.5049,2.2623) .. controls (1.5049,2.2623) and (1.4675,2.0493) ..
+ (1.4287,1.9560) .. controls (1.4287,1.9560) and (1.6830,1.9470) ..
+ (1.7178,1.8823) .. controls (1.1926,1.8054) and (2.0160,1.7277) ..
+ (1.4923,1.7275) .. controls (1.5366,1.6685) and (1.3013,1.6009) ..
+ (1.6500,1.5946) .. controls (0.8836,1.5797) and (1.2764,1.9221) ..
+ (0.8957,2.0442) .. controls (0.5516,2.0958) and (0.5228,1.8527) ..
+ (0.4695,1.7963) .. controls (0.4825,1.9607) and (0.3601,1.9095) ..
+ (0.1977,1.9023) -- cycle
+}
+
+\newcommand{\duckpathrecedinghair}{%
+ (1.3385,1.4841) .. controls (1.4243,1.4529) and (1.4877,1.7127) ..
+ (1.3964,1.8658) .. controls (1.1071,2.3511) and (0.5189,2.1609) ..
+ (0.4381,1.6816) .. controls (0.4575,1.9618) and (0.9007,2.2059) ..
+ (1.1308,2.0390) .. controls (1.4703,1.7469) and (1.0343,1.5949) ..
+ (1.3385,1.4841) -- cycle;
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% 32237378723223
% 23737232212232237822
% 3282232232232232232<3723