texlive[74735] Master/texmf-dist: tikzlings (24mar25)
commits+karl at tug.org
commits+karl at tug.org
Mon Mar 24 20:47:25 CET 2025
Revision: 74735
https://tug.org/svn/texlive?view=revision&revision=74735
Author: karl
Date: 2025-03-24 20:47:25 +0100 (Mon, 24 Mar 2025)
Log Message:
-----------
tikzlings (24mar25)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/tikzlings/README.pdf
trunk/Master/texmf-dist/doc/latex/tikzlings/tikzlings-doc-settings.sty
trunk/Master/texmf-dist/doc/latex/tikzlings/tikzlings-doc.pdf
trunk/Master/texmf-dist/doc/latex/tikzlings/tikzlings-doc.tex
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-addons.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-anteaters.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-apes.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bats.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bears.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bees.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bugs.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-cats.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-chickens.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-coatis.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-elephants.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-hippos.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-koalas.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-list.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-marmots.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-meerkats.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-mice.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-moles.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-owls.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-pandas.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-penguins.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-pigs.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-rhinos.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-sheep.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-sloths.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-snowmen.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-squirrels.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-wolves.sty
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings.sty
Added Paths:
-----------
trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-dogs.sty
Modified: trunk/Master/texmf-dist/doc/latex/tikzlings/README.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikzlings/README.pdf 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/doc/latex/tikzlings/README.pdf 2025-03-24 19:47:25 UTC (rev 74735)
@@ -137,34 +137,31 @@
endobj
36 0 obj
<<
-/Length 2162
+/Length 2171
/Filter /FlateDecode
>>
stream
-x\xDA\xD5[ms\xDB6\xFE\x9E_\xA1\xA4s7\xEDLL\xEA\xDDV\xA7\xE9\x8D\xE3K\x9Cvj7\x93\xA8יK:\x88\x84H\x9C \x82\x80Vz\x99\xFE\xF7@\x91I(6}\x95>X\xA6\xB0\xC0.\xB0\x80\xFA\xBD\xA8\xD7\xEF]?\xE9\xBB\xFE{\xFD~OL\xFA=\xF5,ɻ\xEB'/\xE7O\xFCף\xF3\xDE̛M\x87\xD3\xDE|\xD5\x8C\xBD\xC1\xF9\xA87\x98
\xC5\xC3`Л\x87\xBD_\xF5\xCD\xD9d8\xF9z\x8E\xD6\xFF\xC6(\x89\xD87\xBF\xCD\xDC\xD3'>Ά#o\xA6\xEB|P\xA0B[\xFE\xB4#a$\x82\x84 ?\xFD\xF0
-`\xC2`\xA5eQ\xF0\xDB\xC7\xFE\xA4\xAF[D\x95\xF1\xB9\xF8\x8CTK\x89j)\xE6<e\xDF\xFA>\xDAD
\x8B\xC4!\xF3\xF1#\xC4\xE3l\xE9c\xA5\xC5g` \xCA!\xF59Z\xFF/'\x8F\xDDE\xFF&\xF4\xC5g{D\x8FAN\xC6(\xD8n\xB7
~:K\xA9\xFB\xAF\xC7\xE3\xDEě\x9D\x9F\xE7v\x9CL\xDEh\xD6;x\xE7\xA3
e\x91@\xC1*\xE6>\x9B\x8C\xC5L/\xB0\xEF
-\xE7
-I\xFE\xEE\xF98M\xB1\xC7?q\xA9^U\xCEzcov!^XV\x\xA3\xFEP\x90\xCC\xEB=\xD7\x86%\xC8\xC0\xEBO\xF0\xB4\xB6\xE7lN#oz1m\xBC\xD9dz\xAFF\xFCM\xB6T\xA3\x86\x83\xE8\x91{Uhh\xECQ
\x96\xBF2Ja\xC2\xFF6\xEC\xDFA\xCAI\xFE\xDE\xD0\xD3]\xF6\xE2ސQt\xBD\x80l\xEA\xE8\xFAbd\xBE
V\xECq\xBA\xBC\xAD\xAB'\xF7\xEA\xEA\xAB\xF9\xE5\xEDc\xF5o\xC0A\xE2\xDF\xDD\x8E\xCA\xFA\xF94J\xD7ѮcX\xCBa]\xAA\xE1*\x9A\xC7b\xF6\x891\xA2\xBE\x93\x95\xFA\xB4\x98\x99/\xA1.\xE51\xA4\xEAq sט?\xAF(\xD9\xE8\xD1Ý\xF3TO[Bq\xE8U\xC9*U.K\x99V@\xB2V\x8F\xBF\x93Lˈ悱\xA5*\x85$\xC5\xFAy\xF3^ \xA7h\x99q\xA8\xA9o\xC5h4E!|\xAE
Q(\x86\xA0~5\xFD^+\xC3%\xD6U\xAD;e\xA2D\xF0\xA9\xFA\xF6\xABh\x94d\xDC`P
*zþ7\xAB\xC3L\xD73&ɰ\xA6\x95]~B\x8C?\xED\xDE\xE9#x'VXl\x98%\xA5\xC1\xF2\x95\x89\x97w \x83a[\x84\xB4{\xF7;\xA0\xD01\x85\xAB\xCF<~\xD1a\xCC \x87b\xEESO\x84\x95g\xDF'f\x832\xD4\xE3\xC4|xfF\xF1\xCCȵ,\x86(\x8A\x85x:\x8D\xF9\xE0{3\xE8\xCB\xDD\xD0\xCC%\x85Nb3Haʗ\x80\xBB\x94K\x88\xA5\\x88:Q\x81\xB3r\x8C\xAD^Ⱥ\xD1\xDD\xEA\xE1\xBE\xF6n,\x9FEN\xE5b+ϢC\x94O
\xCAw\xB7\xFB\xDD
t\xD3\xEDA\x8C\x825L\x9C4\xCC&\xA1ĝ!\x80#'\x8D
d\x93\x90\xC2.(\x88\x95H*B\x8E\xB37
-\x9CE\xC4Ȼ\xE0\xA34%."
-d\xB1ȅ]PX\x80\x81\x8B\x82YraSc\xE8\x868\xFBC\xA3,Jڅ!6ҵ{\x92\x98\xCDC\x89;!B2\xE6\xF4\x92
-d\x93\x90\xC2n(\x88O7 ڣ \x84]P [\xEC" !\x96z!\xEAbD\xA6b\xEC\x9C
-dȅ]\xBC
-\x93(CN\x97m`6
-%\xEE\x84rFM \xB1 \xA0\xA8
\xE54F\x89\xD3A*\x90E vA\x81\xC5\xA6.
-
-dQȅ\x9DP\xC0b/椐\x83l
-R\xD8Ō` \xD9n\x80s8\x98MC\x89;\xB1\xC53D)t:\x87gS\xD1\xF2.\xB8l ^\xB9x\xE4\x8B\x83\x94\xB5\xE8?hg\xED\xF0ͦ\xED&7\x9E\xEC\xBFYLh\xB1V7\xC1!ܐ\x84q*\xF6\֮XĘj\xFA\xA0\x92ȷ\x88\xDF\xEA\xD78\xA9L\xC8.AR\x91\xEC\xBF\xC6\xC7\xFEph\xFE\xAC\xAD\xEDam\x95\xFB\xED\xE3`4I\x90m`\xC2
\xFB̸tϘ$\xF0\x8F{\xB5^f*\x96\xD0[\xFD\xCFE\xE6
-\x97Z^\xC2%\x9F
-\xF9NȪ&%\xCF<\xA3\xF74\x81m`\xB5 \xEB\xA4)\x98\x84\xE3\xF7P\xABK\xB3y\xE5\x95\xC7r\xFD\xA9\xC2eb\xA6c
2\xC6ѝ\x9EU1^\x9Dp)a
\x89\x92ʌ\x9E\xCEl 1);\x9D\xE2"\x99I\xE8!]\xF4EYP\x93\xCB\xDA\xCBu\xE9\x88a\xEC\xF2\xB4bW\xC9RG:y\x89\xC9RlP\xE2\xFF\xF3\xE7\xAB_n^\xDD\xCE/\xE7?\xFC|\xEB\xA5\xE1\xAA.qz䉶\xF7d+\x9E\xB8!\xC5V\x8D\x84#\xDF\x80A\xFF\xA4b\xF1MT\xF0ݏH\xF5\xB8RT2\xF2\xD6\xC8T\xE2\xD4"
e\x97xEa\xB8!b\xB1۲\xB4\x90\xABŗH\xAAr+\xEE\xE8}O\xD3\xAD{\x93\xFF\xFBa\x93\xCBP?\xC9\xF3\xB6ѢH\xBE\xB5\xD8Ȇ\x96̣\x8A\x8C\x909\xBB\xA6
\xF5I\xE5&.\x8Bµ\xCB(6\xB4dU\xA4ע\xFCԍ\x82[\x94\xB2!mF\xB1\xA0e\xA3\x88"\xF5\xF5F\xA7PNz\xFA\xDCH\xB0by\xC4\xE84L
-\xBCl
R,r
\xCC_8j
b\x98_Q"b\xE7\xC2l\xD1[lb!K\xE6P%z\xEDѺ\xB1\xFF\xF2 \xA1\xB5
6\x9E\xF7\xC1
-,7Mc\xFA\x98&\xFA\xD4i
.\xB6\x90\xF1\x83\xADS\x83\xAF\xC8
DJ\xD0 \xCA5\x86\xDE\xC9sm\xBA`ky\xB9`\xB1KV\xB7ت\xA9J\xC9\
-\xD2hUU\xE1]\xA9\xF0#\xB7\xD8Ρ\xBE¾\xB5Tee\x9A\xA6\x80\xD2\xEEB\x8E\xC6s\xDEfԽ^݁\xCA+i)|@\x82i\xB7&Y\xE8
\xCA;P\x89\xC2[\x8A\x92 \x9A\x9FC:u\xDBoc$o\xF4,^\x93\xC89v\xF6\xB0e\x9E\xAALI$\xE0\xC4]\xD1[\xC0dR\x88r\x929\xFD\xF5
\xB6l\x97Rى/\xCDހ$ZD\x85b\xEB.<Ge.\xC34\xD4(\x99G"\xD4W
-k\xBE\x8B#\xAB\x9F\x92k\xAE\xBC\xFC!\xDB\xC1\xFA
-\xF72\x96\xE3\x9A\xC7Ѹ湘\xC0\x99\xE8(\xA1J\xD6P\xD2\x9C\x89\x94
E\x88\xB9\xBB\xA7 at U\xFADJ;u\xC9z
d)
-N%\xEA\xB1-\xDB\xE5
p|;\x9FC\xD2a/i#}\xFE\xD3b\x892\xACd-\xEE"\x88\xBF\xC2\xD7\xC4E\xA4
+\xD1\xE2/)Sg\xAEI\xECX\x96\xA6\xF0\x80\SZ\xC95\x99M\xC4\xFB\xBC\xFC\xC4#\xF7\xBF\xA7\xD9
\xC9bw\xFF\xA8\xC50u\xF0\x92q\x8Abs
-5\xBF\xBDt\x94\xF3\xC85\x910\xB5\xDEЩZ\xC6(
-:\xF5wWҦ
1N6\x8B% w\xF1ۯ`\xF1\xBCʋ\x94\xE0\xA5(o\xEC\xAF+\xC7e\xB4\xA3\xDC?f\xB9҉\x81\xC5`L\x97\xBDj+-\x96\x91\x97&-\xCB\xF4ܒ\xBA\xAA6e^\xB1\x9Al<\xFE5\xC6M~T
ܑT\xC1\xF6\x82h.\xEEb\x99\xA1\x9B
\xC8d\xF8 *-1\x96\x94\x8C78{i!䏱\xEEa(\x84
ІU\x8F,?\xF1h\xF6>\x8D!E\xC0\x8B\xE6\xFB[
-\xE0|v\xEF
S\x96\xF2\xBF'\x9DV}GB\x98\xF0\xC5B\x9C\xCB\xE4\xB4\xF0{唗,U \xF9+\xED\xD2\xE9\x81\xF4\xEE\xA7
\x95{ \xD8;\xE3o8\xA3\xFEae\xFD\xA0\xA7\xF4#\x8C\xD6\xD6U#\xB2d\x90\xDE\xC1V\xDD\\x98Pg\xC03j\x86c
\x96\x88\xFE\xDC8`~\xBCtg\x92\x91{\xBF\xEA\xF9\xA2\xEB\x95_\xBD\xD4\xE6`\x8D@\x82أ\xDD(\xF8uW\xBCG\x9BbM\xFF_͟\xFC \x871h
+x\xDA\xD5[mo۶\xFE\xDE_\xE1v\xB8\xC34\x92\xDF\xEB\x864\xB7M7,Y\xD1zp\xDBA\xA0%F\xE2L\x8B\xBA$w\xB7\xB8\xFF}\xA4H\xCA-\x99N\xA2\xA0\xF6\x878\xF2\xE1C\x9EG\x87\x87\x87\xE4!\xDD\xEFŽ~\xEF\xF2I\xDF\xF5\xDF\xEB\xF7{\xFAc\xD2\xEFѸgI\xDE]>y9\xE2\xBF
\x9D\xF6f\xDEl:\x9C\xF6\xE67\xBD\xC1\xD8\x9C\x8Ez\x83\xC9h\xEA\xF5\xA7B\xF5>|\xF3շ'\x93\xE1\xE4\x9B9Z\xFE\xA34f\xDF\xFE9\xFFyK\x9F\xF88\x8E\xBC\xD9@\xD5\xF9\xA0@\xA5\xB6\xE2iC\xC2H ~\xFA\xE1\xC1Zˢ\xE0Ϗ\xFDI_\xB74
\x88*\xE3S\xF11\xA9\x96j\xD5R\xC2yƾ\xF3}\xB4\x8A=\x96 \x88#\xE6!\xE2Lj'\xF9\xC2\xC7J\x8B\xCF\xC0*\x94C\xEAs\xB4\xFC_\xF1N
\xBB\x8D
&\xF4\xC5\xE7[D\x8FAA\xC6(X\xAF\xD7
~:ɨ\xFB\xAF\xC7\xE3\xDEě\x9D\x9Ev\x9CL\xDEh\xD6;x\xA7\xA33e\x91P\xC1j\xE6>\x99\x8C\xC5L\xCF\xB0\xEF
+\xA7
+I\xFE\x82!\xF7\x8D}\x9Ce\xD8㟸T\xAF\xAAg\xBD\xB17;/,\xABμQ(H\xF5\x9Ek
+\xC3
+d \xBAq` O{\xCE\xE64\xF2\xA6g\xD1\xF6\xC0\x9BM&\xF7\xEA\xCDK\xC4\xDF\xE4
\xE55
ďܫBCk\x8Fb\xB0\x80\xF8E\x98S
+S\xFE\xAFa\xFFR\x86H\xFAuKOwҋ\xB9\xE52\x8A\xAE\x92U]\x9FB
\x83̗n\xC5
\xA7˻\xEF\xEA\x8B\xF9\xF9\xF5c\xF5o\xC8A\xEA\xDF\xDE\x8C\xCA\xFA\xC50ʖ\xF1\xA6cX+`\x9D+w\xCDc1\xFA\x84\x8F\xA8\xEF\xE4F\xFD)Z\xCC̗H\x97\xF2R\xF5\xB8\x80Eh,\x9Eo(Yi\xEFO\xE0&x\xAA\xA75\xA18\xF2\xEA\xE4
+\x95:\x97\x8AM+ ]\xAAǿI\xAEeDs\xC1\xD8R\x95A\x92a\xFD\xBCN\x88y\xAF\x94S\xB4\xC89\xD4\xD4\xD7\xC2MQ\x9F\xABG ԯ\xA6\xDF\xEB\xC2h\xC2e]\xEBF\x99(1|\xAA\xBE\xFD!%97TL\xBDaߛ
+\x87u7\xD3\xF5\x8CIr\xACi\xA5D׆\x9F\xE3O\xBBz\xA5o\xA6ʼn5-\xB6\x8C\x92\x8A\xB3|\xA5\xA7\xC4\xF3[\x80D\x88\xC1p\xD7
i9\xDA\xF7@\x81
+o^<\xF3|\xF8 \xACD1\xA4
\x8A\xA1O=1\xAB<\xFB\xE1{1\x90Ѱ'\x86\xC33\xE3\xFC\xC53#ײ\xA28\xE2\xE9X4\xE6\x83\x8C\xCF\xBD0uqɠ\x93\x86\x80\xD8
2\xB8\x8F\xF2\x89C\xF9p\x97r \xB1\x94
Q'\xCA!p\xF6@\x81\xB1\xD5
Y7\xFA\xA1[=\xDC\xD6ލ\xE5\xF3ة\@l\xE5y܅\xF2\xD0\xDD\xED\xE1v\xB7\x87\xFBu\xBB\xCB\xE1\xC3\x85K\x98: h\x98MB\x89;\xB1
9i \x9B\x84vA!"N/\x90K\xBDu\xA1\\xAC\x8221\xDD9]\xA1\xC4Y4\x8C\xBC
. \xCA2\xE2"\xA2@\x8BB\xD8\x85%\xB8((\x90E\xA1v14V\x80\xAE\x88\xB3?4\xCA"\xA1\xA4]b!]\xBA#\x84\x81\xD9<\x94\xB8"$g\xCE\xAD at 6 )솂\xF8tS\x90\xA0-
+B\xD8\xB2\xC6.b\xA9\xA2.<2
p\xE7\xA0P \x8B@!\xEC\xE2\xFD3\x98\xC69r\xCEf\xD3P\xE2N\x88 g\xB0\x96\x9B \xEA$X\xD3\xA5\xCE \xA9@\x81B\xD8\x96@\x98\xB9((\x90E\xA1vB\x8B}\xA0\x93B\xB2)Ha#\x82\xA5d\xBDNw40\x9B\x86wb\x8B\xFF\xE6\x88R\xE8
%Φ\xA2\xE5]pY|\xE3\xE2Q`,R\xB6C\xFF^{Hk\xD3g6\x8C\xBF1\xB9\xE9\xDDc\xEF\xCFB˝p\xC1\xB5\xBE\x8F\xE0\x8A\xA4\x8CS\xB1\xE1\xB3v\xE4b\x8E\xA9\xA7.j9\x88b{\xFA\x9D~\x8Dӑ\xCA\xC2l\x9235\xC9\xF6k|\xEC\x87\xE6\xCF\xDAV\xEF\xD7V\xB5\xDF>F㈄\xF9
+\xA6<Ā\xB1ό\xCB\xF0\x8CI
+\xFF\xAF֫LE\xE3\xC2:\xCD\xF0\xB9\xCC\xFE<\xA0\xE1J\xCB
\xA3\xF4\xB3!\xDF Yդ䙡\x90\xE7\xF4\x9E&\xB0
+\xAC`\x9D4\xD3\xE8a\xFC
juI\xE0a6\xAF\xBDR\xAB/7\xE7m\xCES3
\x903\x8En\xF5\xA8\xF1\xFA\x80\xCBc\xA8L
+\x91LfuV-\xA9I\xEA\xF4\xC9M2\xE9\xA2;e`M
m+Ϧg
c/P\xA44\xBBJ\xD4:R\xD9
LbC\x80R\xFF߿^\xFCv\xF5\xEAz~>\xFF\xE9\xD7k/\x8Bn\x9A\x92\xB6\x9E\xE4{OV\xB0\x89\xEF\x94\xDE\x81|
\xFDk\x90\x89\xC57Q\x93\xEF\xF6\x8CԌ\xAB\xCCJF\xBEsf\xAAp\xDA5E\x96\xCA\xCE\xF1
+\x85Q \xA6\x88`\xB3e\xD9A\xAE_!\xA9ʭyG\xEF{\xDA\\xB4\xE9M\xBE\xD4AW\xAB\xA1~\x91g}\xA3\xA0\xCC\xFC\xED\xB0\x91
+\xAD\x98G\x99 \x86m\xF9\xF1\xA30\xCAU1\xB91\x84K\x97Qlh\xC5(\xAAH .E\xF9\xB11T\xB2!\xBB\x8CbA\xABFE\xEA\xEB\x95N\xA1
\xF5\xF0\xB9\x92! y\xBC\xE94L\xBCj
R.rK\xCC\xF4\x9A\x87\xE6\x94\x8A\xB930[\xF4
6\xB1\x90s\xA8\xBD\xF6ع\xB1\xBF\xFB\xA1\xB5\xEE\xE7\xCF\xDB\xE0\x96\xAB6\x9F>\xA4\x81>u\x9AG\xC12\xBE\xB7u\xF05\x99CP :"C\xB9|\xE8\x9D<S\xA7[ʋ
+\xC1&Y\xBD\xC3VmU*\xE6R\x90V˨\xAA
+\xEFJ\x85\xB8\xC5\xF6\xCD\xB6\xAD\xA5*+ӴM(\xBBC\xC8\xC1D\xCE뜺Pu%-\x85H0mV\xC3$\x8F\x9C\xAE\xBCU(\xBC\xA5(
+\xA1\x99\xE2
H\xA7a\xFBm\x82\xE4m\xA2\xE05\x89\x9D\xBE\xB3\x85\xAD\xF2TeJ"G
\x8A\xDE&\x93B\x94\x93\xDC\xAF\xB7\xB0U\xBBTʎ|i\xF6\xA4qc\x89\xAD\xBB\x88
i\x9C\xBB
\xD3R\xA3b
\x89P_5\xAC\xFD
\x90\xAC~L\xA1\xB9\xF6\xF2\xFBl\x9B+\xDC\xCBX\x8E;&\x9A\xE7b` g\xA2\xA3\x82\xAAXCIp&R1|
#\xE6\xEE\x9EU\xEB)\xED4$\xEB
p\x98g(j9\x95h\xC6\xEE\xD8.\x80\xC3\xDB\xF9\xEC\x93{Is\xEB\xF3\x9F
\x96\xA8\xC2*F\xD0\xE2.&\xF1W\xF8\x92\xB8\x88Ta"Z|'O\x99:sMb\x8F\xC0\xF2,\x83{\xE4\x9A\xEA\xD0Z\xAE\xC9l"\xDE\xE5G>s\xFF\x8E8\xCDoH\x83\xCD\xE5\xA7
\x86i\x82W\x8CS\x9B+\xB0\xC5թ\x83
G\xAE\x81\x84\xF9h\xE7
+\x9D\xA0e\x8C\xB2\xA0\xD3xw!m*B\xE3d,H\xF4\xB7\x8B\xDFv\x8B\xE7EQ\xA4/Eyk]8n\xC2
\x9Cs\xFF\x9C\xAF\xE4BH'\x82\xC0\x98\xA4.{5V
+\xB1\x97\xA5;\x96\xE9\x85%uUmʢb=\xD9x\xF8k\x8C\xAB\xE2\xA8\xB8gRۚD
q\xCB
\xDD\xD4pO&\xC3P\xD9k\x89\xB1 at x\xAFd\xBC\xC1\xD9K
!\x8CuC\xDC\xB6\xACzd\xF9\x91\xCFf\xEF\xB3R
\xB4\xDF\xDFj\xA3{c\x98\xB2\xB0\x92\xFF=\xEA\xB4\xEA;\xC1\x94oq.\x93+\xD02\xEEUS^\xB2T $\xE4Kڥ\xD3\xE9\xCD\xCFLj\xF7@\xB8u\xC6\xDFrF\xFDӍ\xF5c\xA2\xCAp0ZZW\x8DȂAz
w\xEA\xE6:\xBB\x98\x9ES\xE3\x8E X \xF8sP\x80\xF9\xE1ԭIFn\xFD\xA2\xE8N\xD7j\xBF\xB8i\xCC\xC1\x83\xB1G\xBB\xFFP2\xF0\x9B\xAE6x\x8F6\xC4\xDA\xFE\xBF\x9A?\xF9\xE2\xDDUM
endstream
endobj
46 0 obj
@@ -614,8 +611,8 @@
<<
/Producer (pdfTeX-1.40.26)
/Creator (TeX)
-/CreationDate (D:20250102235807+01'00')
-/ModDate (D:20250102235807+01'00')
+/CreationDate (D:20250105212218+01'00')
+/ModDate (D:20250105212218+01'00')
/Trapped /False
/PTEX.Fullbanner (This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024) kpathsea version 6.4.0)
>>
@@ -625,22 +622,19 @@
/Type /ObjStm
/N 28
/First 215
-/Length 1297
+/Length 1296
/Filter /FlateDecode
>>
stream
-x\xDA\xEDY[O\xDBH~\xF7\xAF8\x8F\xBBZ\x91\xE3\xB9\xF9"!$PJ\x8B\x92\xB4e7\xE2a\xE2
\x89\x97\xC4Nm\xA7\xA5\xFD\xF5{\xC6&\x908 at I\xA9V\xDBn$\xEC9s9g\xBEo\xE6\x9BK\x8CP\x8Cs\xE9\x8FK\xB0\xA6
\xB0 \xB8+\xE9ŀ\xAB@U \xC69p\x84\xA7B.H
P\xA1\xE9\x8B\xD0d )\xC80\xA0f6\xA1\xA6\x94\x84dsP\xAE\xF56
-AJJ\xA5RQ\xAAlP2\xA0\xF2\x94\xEF
-G1P!\xA3F<\xC6\x90\x8B\xE7Q\x8A\xEF\xF9\x81 \x80ZD>\xF8\xAEG\xFE
|\xEE\x91\x80RŜ\xDD]\xBBc=\x8C\x93\xEC\xEEٷIY\xD4\xFB23[\xE9$ͺ3
\xC0\xF3)\x8EL\xE7\xA8If:\xD5q}\xB7a\x87\x84\xDE.\xE3\xC1\xA5m\x9Efü*_\xAA\x97\xEA\xDA\xF3$*\xE24)\xBBYd\xCA~\xC4\xE3\xED(\xE6\xBA\x88
}Fͬ\xCD\xEE\xED7\x94\xEE\xED\xC1\x8BbYj\xEE
b-\xFC\x8AEf3\x9D'v
IS\xE4\xE6
-~i\x84
U
&Q:4֏\x81
a\xFB\ZO<\xBC)L2\x84\xFE\x95\x9E\xE4\xCAwY\xB1\xB7\xE7\xE0y\x96F]SPL<?håC\x85\xBF\xFE\xFC?5\xCE/\x89\xF5#\xB5T\x8F\xF5\xAB\xCC?\xD4\xB0]\xFF\xFF\xAF\xF5\xFF_\x98\xFF\xED\xFA\xE1\xFC\x8BgͿ\xB2\xEC\O.M\xFF\xA2\xE8\xAE\x96\xAE\x9B\xA8\xE3\x9F\xE7\x88c\xE5
\xF7\x86'Bm*\xB3Z\xA8g\xEF
\xBC\xA1\\x97\xAE\x99
\x89<KE6\xDF
-\xE3kp\xE5ro+\x8C\xAD0V\x85Q\xBA\xD1\xCF\xC1\xAD0~\xB40^r\xCDx"\xD4ϼ\xF9\x88㊇\xDF\xDBVp\xDF'\xB8\x86\x82\xDB\xE7_\x9E\xE0ǧ\x84\x87\xE7zd
\x9A\x82\x84\xFC\x8B
\x84G1;vL\x9Eγ\xC8P\x89\xACJ\xCE\xCC0\xD6\xCD\xF4\xA6\xAAB\xD5\xE0\xBELI\xAF\xE1)qI\xFD\xE8\x8CBد]\xB6}\xD5Ɋ\x84\xAD\xB0=\x85\xC9\x992Kȏ\xBA\x85.L\xA9\xCA8\xD8&0\xD5@
-\xDF~D+\x9B\xB5\xA5\xB4\xD6*\x9B.\xC2[[\x94ެ\xFD Y왛bA\xF9\xFE\x80\xB3\xD1\xD5,
-\xA0\x87\xE7^\xA9v\xE8\x9C>
k\xB0K\xA7/U\xD0 \x82}\xE5\xCB2\xAF\xB8\x82\xED\xF3\xD3<\x97Kj\xB7\xD2:0y\x94ų"\xCD*\xA9\xBD\xD1S\xAA9j\xBD\xBA8\xEE\xFC\xD1:;;QT>ѣ
dՠY\xAA\x9E\x84\xB8C\x9B,0!C\xFA]\xE8\x92\xE2\xF7\xF3\xC8*\xDE
\xA9aKώM<S6\xDANl\xDD\xB3\x95'\x85\x9E\xC4\xD1~2\x9A*\xA1\x82na\xA6\xEF!t
\xBC\xB8\xF5\x92\x82Q\x90\xB1άzC\x9De\xE9\xE7q\x9A^O\xCCU\xF1{\x85\xA3
\x93\xBB\xF4\x96\x96\xD77Y\xED_\\x9C\x9Ew\x89U\xF7χYq;!--&e ~\xC8\xEEY\xC5\xEFc\xA5\xBC\xA7Ye\xB6f\x85R\xB0 \xA5\xD6i\xE7\xB8\xD9))yRڑ\x96R@Eۄx?\x82\x94\xD2ՄN\xAF5J\xCA݄R\xF3\xF4\xE4\xB0\xF7\x96(\xF5z\xCC}\x94\xA9\xD0
\x97(y\x8C\xADP\xB2\xD9;J\x9C\xF3UJ>Jh\x9B\xD8\xC2<\xC46
\xE11\x9E\xE0+|\x8Dg\xF8\xDF\xE29v\xB0\x8B=|\x87\xEF\xF1\xFE\x85\xF5tf\xB2\'C
\xE0 at G\xD7\xF9D\xE7c
d\xB4\xDF[\xE5VV9<\xA5ym\x8A\xBBb\xB2\xAB\x8A#:$zO\xA7\x87h\xD0|\x9C\xEB \x9A\x9Bh\xA2\xA7x\x85Wt\xE1G\x99\xFEd\xE8m\xE8\xB0\xC8p\x8C\xE3/\xB3\xB1I0ƿ\xF1'81y\x8ESL0\x99O*
%\x98\xE2
g\xF6\*{-\xAD\xAAOBm\xC7Ȧq:ď\xF8qnr{h\x93\x91f8\x98`\x869\xE6\xF1
-V\x94
-,ƙ1X|Nq\x8Et,SQ\x9A\xFC\x84\x9F\xF1\xBF\xE0W\xFCj\xB2tE\xFCa\xD0$\xCCE\x99\xB5\x854\xFAM\x9D\x9B\xF2ԫoC+\x92\xB1\xFF\x88*\x8F\xE2v\x9C兝1\x90\xA4\x92\xD7z)\xF3!
\xE3\xDC\xFE+\xABl\xD9K\xDF%qy_Prs0\xB5ݣ&\xAC\x83b \x8C\xCD,\xC0\xF050js0\xB5u\xBF
-F\xB1:\x980\c3
0r
-\x8C\xB79\x98\xFA\x8A\xAD\xA1u4,XBC7\xF4{8j
-\x8E\xBF\xC7^\xD2r{K\x9BS\xE7\xE44\xB6\xB7BQ\xFA\xD6\xEEs-M\xEB=
9\x95\xCF\xD2m\xEC]\x8B\xB9
+x\xDA\xEDY[O\xDBH~\xF7\xAF8\x8F\xBBZ\x91\xE3\xB9\xF9"!$PJ\x8B\x92\xB4e\xF10q\x86\xC4Kb\xA7\xB6\xD3B\xFD\x9E\xB1 $P\xD5jۍ\x84=g.\xE7\xCC\xF7\xCD|s\x89Q\xE0B \x8Aq`.\xFDq \xD6T\xC2 w%\xBDp(\xA0*\xC18\xEE\x83\xF0T\xC2\xC9*T }:B\x82
$\xD4\xCC&Ԕ\x92\x90lʵ
¦!HI\xA9\xF4A*J\x95\x8D JT
\x82\xF2]\xE1(*d\xD4H\x80Ǹr\xF1<
+B\xF1=? \xF0B\x8B\xC8\xDF\xF5ȟ\x81\xCF]"P\xAA\x98\xB3\xBD\xED`w\xA4q2\x84\xEDm \xFB6)\x8Bz7SC \xB1\x95\x8EӬ;Ց\xDC3_\xE2\xC8t\x9Ad\xA6
'p\xEE6\xEC\x90\xD0\xDBe<\xB8\xB0\xCD\xD3l\x90W\xE5
5\xE0R]{\x96DE\x9C&e7\xF3Lُx<\xE0\xBC
\xC5\\xF5\xE3O q\xE1\x9C\xD1 at 3k\xB3{\xFB
\xA5;;\xF0\xAAX\x96\x9A\xFB\x8AXs\xFF\x87b\x91\xD9Lg\x89
C\xD2\xB9\xB9\x82\x83_\xA1G\x95\xFBI\x94\x8C\xF5c`G\xD8>\xD6\xF7\xAF
\x93
\xE0\xFCR\x8Fs廬\xD8\xD9q\xF04K\xA3\xAE)(&\x9E\xEE\xB5\xE1¡\xC2_\xFE\x9F\xE7\xD7\xC4\xFA\x91Z\xAA\xC7\xFAU\xE6j
+ج\xFF\xFF\xD7\xFA\xFF/\xCC\xFFf\xFD\xBFr\xFEų\xE6_Yv\xAE'\xA6^tW\x8B
+W\x8Du\xD4\xF1\x80\xCFsı\x88\xF2\x95{\xC3\xA1֕Y-Գw\xDEP\xAEK\xD7̹D\x9E\xA5\x8C"\x9Bm\x84\xF1\x8B
\x835\xB8r\xB9\xB7\xC6F\xCB\xC2(\xDD\xE8\xE7\xE0F?Z\xAF\xB9f<\xEAg\xDE|D\x83q\xC5\xC3\xEF\x89m#\xB8\x97 \xAE\xA1\xE0\xF6\xF9\x97'\xF8\xF1\xE9|\xF14\x96\xF0\xF0T\x8DCS\x90\x90\x91\x83\xF0(f\xC7\xC1\x8E\xC9\xD3Y*\x91Uɉĺ\x99^W at U\xA8\xDC\xF7\x80)4<7\xB8\xA0~tF!\xEC\xD7.۾\xEAdI
+\xC2V\xD8
\x8B\xC2d \x8DL\x99%\xE4\xDDB\xA6Te
l\x98j \x85o?\xA2\x95\xCD\xDAR\xDAk\x95M\xE1\xAD-\xCAo\xD6~\x80,\xF6\xCCu1\xA7|\xFF\xC0\xE9\xF0r\x9A
+\xFBp~\x87\xE7^\xA9v\xE8\x9Cs&<\xD6`ι$\x8A\x82R\xE5\xCB2\xAF\xB8\x82\xCD\xF3\xD3<
j\xB7\xD2\xDA3y\x94\xC5\xD3"\xCD*\xA9\xBD\xD3\xAA9h\xBD9;\xEC\xFC\xD1:99RT>\xD6\xC3
dՠY\xAA\x9E\x84\xB8E\x9B,0!C\xFA]\xE8\x92\xE2w\xF3\xC8*\xDE
\xA9aKOM<
Q6\xDANl\xDD\xB3\x95G\x85
\xC7\xD1n2
*\xA1\x82na&!t
<\xBB\xF5\x92\x82Q\x90\x91άzC\x9De\xE9\xD7Q\x9A^\x8D\xCDe\xF1{\x85\xA3
\x93\xBB\xF4\x96\xD7wY힝
\x9Fv\x89U\xF7χYq[!--&e ~\xC8\xEEYŗ\xB1R\xDEӬ2[\xB3D)X\x87R\xEB\xB8s\xD8씔\xBC)mIK)\xA0\x89\xA2m\xC2\xBCA\x89?J\xE9rL\xA7\xD7
+%\xE5\xAEC\xA9y|\xB4\xDF{O\x94z=\xE6>ʉ
\x8AT\xE8\x85
\x94<Ɩ(\xD9\xEC
%\xCE\xF92%wN\xC8
%\xB4\x8BMl\xE1
\xEEc\xF0\x8F\xF0
+\xBE\xC5|\x87\xEF\xF1;\xD8\xC5
~\xC0\x8F\xF8 \xFFB\x8Dz25Y\xAE\x93\xF6\xB1\xAF\xA3\xAB|\xAC\xF3\xF63\xDA\xEF\xADr+\xAB
\x9EҼ2\xC5]1\xD9UE\x84
\xBD'\x8D4h>\xCF\xF4\xCDu4\xD6\xBC\xC4K:\x8Ap\x88\xC3L1\xF46tXd8\xC2\xD1\xCDtd\x8C\xF1o\xBC\xC21\x8EM\x9E\xE3Lf\x93>\x81\x8A\x87 \xA68ũ=\x97\xCA^K\xAB\xEA\x93P\xDB1\xB2i\x9C\xF03~\x9E\x99\xDC
\xDAd\xA4\x85\xF4ǘa\x8Ey|\x8D\xA5\x8BQf
_S\x9C!
\xCB\xD4C\x94f\xBF\xE0W\xBC\xC6\xFC\x86\xDFL\x96.\x89\x80?,\x9A\x84Y\xBF(\xB3\xB6\x90F\xBF\xA9sS\x9Ez\xF5mhI2\xF6Q\xE5Q\xB3\xBC\xB03\x92T\xF2V/d>Ńb\x94\xDBe\x95-{\xE9\x87$.\xEF
J\xAE\xA6\xB6{\xD4\xC0\x84u0B,\x80\xB1\x999\xBEF\xAD\xA6\xB6\xEE\x97\xC1(V\x86
`lfF\xAE\x80\xF1\xD6S_\xB154\xA2\x8E\x86
h\xE8\x86~G\xAD\xC0\xF1W\xE1\xD8KZnoi3꜀
\xC7\xF6V(J\xDF\xDA}\xAE\xA5i\xBD\xA7C\xA7\xF2Y\xB8\x8D\xFDz|\xB9
+
endstream
endobj
60 0 obj
@@ -651,14 +645,15 @@
/W [1 2 1]
/Root 58 0 R
/Info 59 0 R
-/ID [<B0A2C2DD97135CF557E2E24418EBFB89> <B0A2C2DD97135CF557E2E24418EBFB89>]
+/ID [<373E61DB65256290381A9C3B6F2DE199> <373E61DB65256290381A9C3B6F2DE199>]
/Length 176
/Filter /FlateDecode
>>
stream
-x\xDA\xCE)QЪa\xD6YXfXâq
\x82; 9 \x87A\x80\xC0\xE1p$H at a1\\x85'A >\xD5\xE2\xA5*\xFD\xBB\x93\x84\xCECP\x91\xAA\x84D
%xۀxZ'\xB9\xB6\xF4\xE8\xCD-s@\xE4\x80Xi8\xE66\xF7\x81L\xFDe=t
\xFD\xBD\xF5 \xE8;\xE6\x97\xD6
\xC0\xD01\x98Z/#ݏ\xF6\x87\xB2\x94|\xED\xAD#mɤ%]\x89$\x96Dj\x8C϶W\xE7$\xB5lp\xB6\xB5lr\xF1\xB6Ly\xF8\x80\xC7xz\x80\x97\x9D\xCDz\xBC\xAE\xC0{\x8A?j\xB9!c
+x\xDA
\xCE)AЪ\x99aXga\xDF7\x8D\xE3\xDC\xC98\x83\xC0
\x82A\x82p\xE0i\xEA#^\xAA\xF2\xBB;\xBF\x81\xC8y\x8BR\x92\x88H\xA0\xAF\xEB$W\x96
\xBD\xB9\xA5\xC4H$\x95\xAA\xA3?\xB0y 4\xD4_\xD63@\xDB1\xD8Y\x81\x9Ecfi=
é\xF5
0\xD2\xFB\xB1\xC0\xFEP\x90<Ï\x9D\xB5\xA5%
+iJGbI$\x952\x93\x9Bݫp\xF2\xDF]\xE5lkY\xE3\xE2mY\xE7\xE1
\xF0\xF4\xCF{\x9BuyY\x83\xF7>~f \xC6
endstream
endobj
startxref
-50197
+50205
%%EOF
Modified: trunk/Master/texmf-dist/doc/latex/tikzlings/tikzlings-doc-settings.sty
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikzlings/tikzlings-doc-settings.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/doc/latex/tikzlings/tikzlings-doc-settings.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -61,6 +61,7 @@
\RequirePackage{footnotehyper}
\makesavenoteenv{tcolorbox}
\RequirePackage[all]{nowidow}
+ \RequirePackage[hyphens]{url}
\RequirePackage[colorlinks=true,breaklinks=true,allcolors=themecolor,hyperfootnotes=false]{hyperref}
}
\RequirePackage[T1]{fontenc}
@@ -68,7 +69,8 @@
\RequirePackage{inconsolata}% mono font with bold, but italic is missing
% \RequirePackage[scale=0.85]{cascadia-code}
% \AddToHook{cmd/ttfamily/before}{\fontseries{sl}}
-\usepackage{synthslant}% to fake slented comments in inconsolata
+\RequirePackage{synthslant}% to fake slanted comments in inconsolata
+\RequirePackage{metalogox}% should be loaded after the fonts
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -82,7 +84,7 @@
\@namedef{PYG at tok@na}{\def\PYG at tc##1{\textcolor{black}{##1}}}%
% macros
\@namedef{PYG at tok@k}{\def\PYG at tc##1{\textcolor{listingcolor}{\bfseries ##1}}}%
- % curly brakets
+ % curly brackets
\@namedef{PYG at tok@nb}{\def\PYG at tc##1{\textcolor{listingcolor}{\bfseries ##1}}}%
% comments (italics won't work with the inconsolata font)
\@namedef{PYG at tok@c}{\def\PYG at tc##1{\textcolor{gray}{\textsynthslant{##1}}}}%
@@ -156,4 +158,21 @@
\providecommand*{\tikzducks}{Ti\emph{k}Zducks\xspace}
\providecommand*{\tikzlings}{Ti\emph{k}Zlings\xspace}
\providecommand*{\tikzmarmots}{Ti\emph{k}Zmarmots\xspace}
-\providecommand*{\ConTeXt}{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt}
\ No newline at end of file
+\providecommand*{\ConTeXt}{C\kern-.0333emon\-\kern-.0667em\TeX\kern-.0333emt}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% Doc blurb
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\newcommand{\packagename}[1]{\def\@packagename{#1}}
+
+\NewDocumentCommand\blurb{s}{%
+ This package is work in progress, therefore I would be happy to hear your feedback and ideas how to improve the package. The development version of the source code can be found at \url{https://github.com/samcarter/\@packagename}, including an issue tracker.
+ \IfBooleanF#1{%
+ A more stable version of the package can be found on \CTAN (\url{https://ctan.org/pkg/\@packagename}) and is included in both \texlive and \miktex as \texttt{\@packagename}.
+ }%
+ If you seek any other assistance (not bug reports/feature requests), I suggest asking at \url{https://topanswers.xyz/tex}.
+
+ Copyright {\footnotesize\textcopyright} \texttt{samcarter}. Permission is granted to copy, distribute and\slash or modify this software under the terms of the LaTeX project public licence, version 1.3c or later \url{https://www.latex-project.org/lppl.txt}.
+}
\ No newline at end of file
Modified: trunk/Master/texmf-dist/doc/latex/tikzlings/tikzlings-doc.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/tikzlings/tikzlings-doc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/tikzlings/tikzlings-doc.tex 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/doc/latex/tikzlings/tikzlings-doc.tex 2025-03-24 19:47:25 UTC (rev 74735)
@@ -14,6 +14,10 @@
% arara: latexmk
\documentclass{scrartcl}
+\usepackage[
+ themecolor=samviolet
+]{\jobname-settings}
+
% meta %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\title{The \texorpdfstring{\tikzlings}{tikzlings} package}
\subtitle{drawing animals and beings in \TikZ}
@@ -24,14 +28,11 @@
\end{tikzpicture}\\[0.8em]
\texttt{samcarter}\\
\url{https://github.com/samcarter/tikzlings}\\
- \url{https://www.ctan.org/pkg/tikzlings}
+ \url{https://ctan.org/pkg/tikzlings}
}{samcarter}}
-\date{Version v2.2 \textendash{} 2025/01/05}
+\date{Version v2.3 \textendash{} 2025/03/23}
+\packagename{tikzlings}
-\usepackage[
- themecolor=samviolet
-]{\jobname-settings}
-
\selectcolormodel{rgb}
\colorlet{blue}{samlblue}
@@ -150,9 +151,10 @@
height plus=3cm,
}
-\newcommand{\coatihookbackground}{\path (-1.63,0.1) rectangle (1.63,2.26);}
-\newcommand{\mousehookbackground}{\path (-1.6,0.1) rectangle (0.905, 2.17);}
-\newcommand{\cathookbackground}{\path (-1.6,0.1) rectangle (0.905, 2.17);}
+\AddToHook{tikzlings/coat/background}{\path (-1.63,0.1) rectangle (1.63,2.26);}
+\AddToHook{tikzlings/mouse/background}{\path (-1.6,0.1) rectangle (0.905, 2.17);}
+\AddToHook{tikzlings/cat/background}{\path (-1.6,0.1) rectangle (0.905, 2.17);}
+\AddToHook{tikzlings/dog/background}{\path (-1.6,0.1) rectangle (0.905, 2.17);}
\begin{document}
\maketitle
@@ -161,22 +163,12 @@
\section*{Introduction}
\label{intro}
-The \tikzlings are a collection of little animals (and beings) drawn in \TikZ. It is the next evolutionary phase of the \tikzmarmots package extending it with further animals (and beings) and also adding the ability to natively use many of the accessories known from the \tikzducks package.
+The \tikzlings are a collection of little animals (and beings) drawn in \TikZ. It is the next evolutionary phase of the \tikzmarmots package, extending it with further animals (and beings) and also adding the ability to natively use many of the accessories known from the \tikzducks package.
-This package is work in progress, therefore I would be happy to hear your feedback and ideas how to improve the package.
-The head version of the source code can be found on \url{github.com/samcarter/tikzlings}, including a bug tracker -- please make constructive use of it!
-If you seek any other assistance (not bug reports/feature requests), I suggest asking a question at \url{topanswers.xyz/tex}.
-A more stable package version can be found on \CTAN (\url{https://www.ctan.org/pkg/tikzlings}) and is included in both \miktex and \texlive as \tikzlings.
+I'd like to thank the friendly and helpful community of \TeX{} users for their suggestions, feedback and help to create this package and naming it. As a thank you, the \tikzlings all have names which are, in some way or another, connected to their creators, their inspiration or to users of \TeX{}.
-\subsection*{Acknowledgements}
+\blurb
-I'd like to thank the friendly and helpful community of \TeX{} users for their suggestions, feedback and help to create this package and find a suitable name for it. As a thank you all the \tikzlings have a name which is in some way or another connected to the users of \TeX{}.
-
-\subsection*{License}
-
-Copyright \raisebox{0.2em}{\tiny\fontfamily{cmr}\selectfont\textcopyright}
-\texttt{samcarter}. Permission is granted to copy, distribute and\slash or modify this software under the terms of the LaTeX project public licence, version 1.3c or later \url{https://www.latex-project.org/lppl.txt}.
-
\clearpage
\section*{The \tikzlings}
@@ -196,12 +188,12 @@
In addition to the standard options provided by \TikZ each \tikzlings also comes with some additional options which are listed in the following sections. If these additional options consist of multiple words they are available both with and without spaces, for example \saminline|askphil| and \saminline|ask phil| will be treated as the same.
-To make customisation of the \tikzlings easier, some hooks are provided, which can be redefined by the user in order to add commands at specific layers:
+To make customisation of the \tikzlings easier, some hooks are provided, which can be utilised by the user in order to add commands at specific layers:
\begin{itemize}
- \item \saminline|\<name_of_the_tikzling>hookbackground|
- \item \saminline|\<name_of_the_tikzling>hookbelly|
- \item \saminline|\<name_of_the_tikzling>hookbody|
- \item \saminline|\<name_of_the_tikzling>hookforeground|
+ \item \saminline|\NewHook{tikzlings/<name_of_the_tikzling>/background}|
+ \item \saminline|\NewHook{tikzlings/<name_of_the_tikzling>/belly}|
+ \item \saminline|\NewHook{tikzlings/<name_of_the_tikzling>/body}|
+ \item \saminline|\NewHook{tikzlings/<name_of_the_tikzling>/foreground}|
\end{itemize}
With regard to the individual components of the \tikzlings, they are located in the following z order:
@@ -265,16 +257,26 @@
\par
\endgroup
-{\raggedright In addition, the hooks \saminline|\tikzlinghookbackground|, \saminline|\tikzlinghookbelly|,\newline \saminline|\tikzlinghookbody| and \saminline|\tikzlinghookforeground| are available and will effect all\newline \tikzlings.}
+In addition, there are also hooks available which will effect all \tikzlings:
+\begin{itemize}
+ \item \saminline|\NewHook{tikzlings/background}|
+ \item \saminline|\NewHook{tikzlings/belly}|
+ \item \saminline|\NewHook{tikzlings/body}|
+ \item \saminline|\NewHook{tikzlings/foreground}|
+\end{itemize}
A short example how the hooks can be used:
\begin{tcblisting}{title={Hooks}}
-\newcommand{\mousehookbelly}{%
+\AddToHook{tikzlings/mouse/belly}{%
\fill[red!80!black] (0.55, 1.35) --
(0.65, 0.3) -- (-0.65, 0.3) --
(-0.55, 1.35) -- (0.0, 0.9) -- cycle;
}
+
\mouse
+
+% optionally
+\RemoveFromHook{tikzlings/mouse/belly}
\end{tcblisting}
Another way to use the \tikzlings is the \TikZ library of the same name. By loading this library, all macros from the normal package can be used. In addition the \TikZ library also defines the \tikzlings as \saminline|pic|'s:
@@ -331,9 +333,9 @@
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\clearpage
-\section[Ti\emph{k}Zling]{Rani, the Ti\emph{k}Zling}
+\section[Ti\emph{k}Zling]{Buffon, the random Ti\emph{k}Zling}
-\emph{The full name of this Ti\emph{k}Zling is ``Random'', but everybody just calls them ``Rani''}
+\emph{Buffon is named after the French scientist Georges-Louis Leclerc de Buffon. If the name sounds familiar, then maybe from his famous needle problem, which -- amongst other things -- can be used to approximate the value of~$\pi$.}
\subsection{Package name}
@@ -570,7 +572,7 @@
\end{tcblisting}
\begin{tcblisting}{title={Ice cream}}
-\marmot[
+\dog[
icecream=brown!60!gray,
flavoura=brown!50!black,
flavourb=white!70!brown,
@@ -731,13 +733,11 @@
Given the number of available accessories, it can be hard to decide which ones to use.
Luckily, one does not need to decide and pick random accessories instead.
-There are two macros for this purpose, \saminline|\randomhead| and \saminline|\randomaccessories|, which will choose a random headpiece and a random other accessories, respectively.
-Please note, that one needs to initialise these macros with \saminline|\shufflethings| to generate the random accessories.
+There are two options for this purpose, \saminline|randomhead| and \saminline|randomaccessories|, which will choose a random headpiece and a random other accessories, respectively.
\begin{tcblisting}{title={Random accessories}}
-\shufflethings
\coati[
- \randomhead,
- \randomaccessories
+ randomhead,
+ randomaccessories
]
\end{tcblisting}
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-addons.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-addons.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-addons.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
% See https://www.latex-project.org/lppl.txt
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-addons}[2025/01/05 version v2.2 Draw additional items for the tikzlings]
+\ProvidesPackage{tikzlings-addons}[2025/03/23 version v2.3 Draw additional items for the tikzlings]
\RequirePackage{tikz}
\usetikzlibrary{patterns} % for the wizard hat
@@ -25,7 +25,6 @@
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\RequirePackage{tikzlings-list}
-\RequirePackage{expl3}
\ExplSyntaxOn
\seq_clear:N \l_tmpa_seq
@@ -60,19 +59,14 @@
\def\thing at listhead{}
\def\thing at listacces{}
-\def\thing at headtext{head}
-\def\thing at accesstext{acess}
\ExplSyntaxOn
+% based on https://topanswers.xyz/tex?q=8082#a7698
\NewDocumentCommand{\thing at ini}{om}{
\expandafter\newif\csname ifthing@#2\endcsname
- \def\thing at tmp{#1}
- \ifx\thing at headtext\thing at tmp
- \tl_put_right:Nn \thing at listhead { {#2} }
- \fi
- \ifx\thing at accesstext\thing at tmp
- \tl_put_right:Nn \thing at listacces { {#2} }
- \fi
+ \IfValueT{#1}{
+ \tl_put_right:cn { thing at list#1 } { {#2} }
+ }
}
\ExplSyntaxOff
@@ -93,42 +87,42 @@
\thing at ini[head]{sombrero}
\thing at ini[head]{alien}
% Communication %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\thing at ini[acess]{book}
-\thing at ini[acess]{signpost}
-\newif\ifthing at speech
-\newif\ifthing at think
+\thing at ini[acces]{book}
+\thing at ini[acces]{signpost}
+\thing at ini{speech}
+\thing at ini{think}
% Food %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\thing at ini[acess]{pizza}
-\newif\ifthing at davidlikespineapplepizza
-\thing at ini[acess]{cheese}
-\thing at ini[acess]{baguette}
-\thing at ini[acess]{cake}
-\thing at ini[acess]{icecream}
-\thing at ini[acess]{milkshake}
-\thing at ini[acess]{wine}
-\thing at ini[acess]{cocktail}
-\thing at ini[acess]{banana}
+\thing at ini[acces]{pizza}
+\thing at ini{davidlikespineapplepizza}
+\thing at ini[acces]{cheese}
+\thing at ini[acces]{baguette}
+\thing at ini[acces]{cake}
+\thing at ini[acces]{icecream}
+\thing at ini[acces]{milkshake}
+\thing at ini[acces]{wine}
+\thing at ini[acces]{cocktail}
+\thing at ini[acces]{banana}
% Sport %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\thing at ini[acess]{cricket}
-\thing at ini[acess]{hockey}
-\thing at ini[acess]{football}
+\thing at ini[acces]{cricket}
+\thing at ini[acces]{hockey}
+\thing at ini[acces]{football}
% Other %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\thing at ini[acess]{crystalball}
-\thing at ini[acess]{magicwand}
-\thing at ini[acess]{rollingpin}
-\thing at ini[acess]{lightsaber}
-\thing at ini[acess]{torch}
-\thing at ini[acess]{basket}
-\thing at ini[acess]{easter}
-\thing at ini[acess]{crozier}
-\thing at ini[acess]{shovel}
-\thing at ini[acess]{pickaxe}
-\thing at ini[acess]{strawbroom}
-\thing at ini[acess]{broom}
-\thing at ini[acess]{umbrella}
-\thing at ini[acess]{umbrellaclosed}
-\thing at ini[acess]{handbag}
-\thing at ini[acess]{stick}
+\thing at ini[acces]{crystalball}
+\thing at ini[acces]{magicwand}
+\thing at ini[acces]{rollingpin}
+\thing at ini[acces]{lightsaber}
+\thing at ini[acces]{torch}
+\thing at ini[acces]{basket}
+\thing at ini[acces]{easter}
+\thing at ini[acces]{crozier}
+\thing at ini[acces]{shovel}
+\thing at ini[acces]{pickaxe}
+\thing at ini[acces]{strawbroom}
+\thing at ini[acces]{broom}
+\thing at ini[acces]{umbrella}
+\thing at ini[acces]{umbrellaclosed}
+\thing at ini[acces]{handbag}
+\thing at ini[acces]{stick}
\tikzset{%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -136,9 +130,13 @@
% General
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- /thing/.search also/.expanded={/tikz, /pgf, \tikzlings at search@paths at clist},
+ /thing/.search also/.expanded = {/tikz, /pgf, \tikzlings at search@paths at clist},
%/thing/.unknown/.code=\relax, % bad idea, prevents tikz/pgf keys
/thing/.cd,
+ randomhead/.code = \shufflethings,
+ randomhead/.forward to = /thing/\randomhead,
+ randomaccessories/.code = \shufflethings,
+ randomaccessories/.forward to = /thing/\randomaccessories,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% Hats
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-anteaters.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-anteaters.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-anteaters.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-anteaters}[2025/01/05 version v2.2 Drawing anteaters in TikZ]
+\ProvidesPackage{tikzlings-anteaters}[2025/03/23 version v2.3 Drawing anteaters in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/anteater/foreground}
+ \UseHook{tikzlings/foreground}
\csname anteaterhookforeground\endcsname
\csname tikzlinghookforeground\endcsname
}
@@ -34,6 +36,11 @@
\newif\ifanteater at leftstep
\newif\ifanteater at rightstep
+\NewHook{tikzlings/anteater/background}
+\NewHook{tikzlings/anteater/belly}
+\NewHook{tikzlings/anteater/body}
+\NewHook{tikzlings/anteater/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -49,8 +56,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \anteater at body,
body = red!55!green!75!blue!66!white,
- eye/.store in = \anteater at eye,
- eye = \anteater at body!70!brown!50!darkgray,
+ eyes/.store in = \anteater at eyes,
+ eyes = \anteater at body!70!brown!50!darkgray,
+ eye/.forward to = /anteater/eyes,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% options
@@ -111,6 +119,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/anteater/background}
+ \UseHook{tikzlings/background}
\csname anteaterhookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -148,6 +158,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/anteater/belly}
+ \UseHook{tikzlings/belly}
\csname anteaterhookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -178,8 +190,8 @@
\anteater at part@draw[\anteater at body!70!brown!50!darkgray] (0, 1.08) ellipse[x radius=0.08, y radius=0.05];
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \anteater at part@draw[\anteater at eye] (0.23, 1.7) circle[radius=0.05];
- \anteater at part@draw[\anteater at eye] (-0.23, 1.7) circle[radius=0.05];
+ \anteater at part@draw[\anteater at eyes] (0.23, 1.7) circle[radius=0.05];
+ \anteater at part@draw[\anteater at eyes] (-0.23, 1.7) circle[radius=0.05];
\fi% back
%
% Tail if back %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -188,6 +200,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/anteater/body}
+ \UseHook{tikzlings/body}
\csname anteaterhookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -224,7 +238,7 @@
%
%In addition to the colour of the body, the colour of the eyes can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\anteater[eye=red]
+%\anteater[eyes=red]
%\end{tcblisting}
%
%And the anteater can lift its legs:
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-apes.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-apes.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-apes.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-apes}[2025/01/05 version v2.2 Drawing apes in TikZ]
+\ProvidesPackage{tikzlings-apes}[2025/03/23 version v2.3 Drawing apes in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/ape/foreground}
+ \UseHook{tikzlings/foreground}
\csname apehookforeground\endcsname
\csname tikzlinghookforeground\endcsname
}
@@ -38,6 +40,11 @@
\newif\ifape at contour
\newif\ifape at openmouth
+\NewHook{tikzlings/ape/background}
+\NewHook{tikzlings/ape/belly}
+\NewHook{tikzlings/ape/body}
+\NewHook{tikzlings/ape/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -53,9 +60,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \ape at body,
body = red!15!brown!80!black,
- eye/.store in = \ape at eye,
- eye = \ape at body!40!black,
- eyes/.forward to = /ape/eye,
+ eyes/.store in = \ape at eyes,
+ eyes = \ape at body!40!black,
+ eye/.forward to = /ape/eyes,
skin/.store in = \ape at skin,
skin = \ape at body!50!gray,
nose/.store in = \ape at nose,
@@ -66,8 +73,10 @@
muzzle = \ape at skin!80!white,
legs/.store in = \ape at legs,
legs = \ape at body!90!black,
+ leg/.forward to = /ape/legs,
arms/.store in = \ape at arms,
arms = \ape at body!95!black,
+ arm/.forward to = /ape/arms,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% options
@@ -135,6 +144,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/ape/background}
+ \UseHook{tikzlings/background}
\csname apehookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -203,6 +214,8 @@
\ape at part@draw[\ape at body] ( 0.5, 0.8 ) .. controls ( 0.5 , 0.4) and ( 0.35, 0.17) .. ( 0.0, 0.17) .. controls (-0.35, 0.17) and (-0.5 , 0.4) .. (-0.5, 0.8 ) .. controls (-0.9 , 1.6) and (-0.4, 1.65) .. ( 0.0, 1.65) .. controls ( 0.4, 1.65) and ( 0.9 , 1.6) .. ( 0.5, 0.8) -- cycle;
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/ape/belly}
+ \UseHook{tikzlings/belly}
\csname apehookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -213,8 +226,8 @@
\ape at part@draw[\ape at skin] (0, 1.76) circle[x radius=0.32,y radius=0.40];
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \ape at part@draw[\ape at eye] (-0.08, 1.9) ellipse[x radius=0.04, y radius=0.04];
- \ape at part@draw[\ape at eye] (0.08, 1.9) ellipse[x radius=0.04, y radius=0.04];
+ \ape at part@draw[\ape at eyes] (-0.08, 1.9) ellipse[x radius=0.04, y radius=0.04];
+ \ape at part@draw[\ape at eyes] (0.08, 1.9) ellipse[x radius=0.04, y radius=0.04];
%
% muzzle %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ape at part@draw[\ape at muzzle] (0, 1.55) ellipse[x radius=0.28, y radius=0.2];
@@ -301,6 +314,8 @@
\fi%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/ape/body}
+ \UseHook{tikzlings/body}
\csname apehookbody\endcsname
\csname tikzlinghookbody\endcsname
}
@@ -338,7 +353,7 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\ape[eye=red]
+%\ape[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Nose colour}}
%\ape[nose=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bats.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bats.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bats.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-bats}[2025/01/05 version v2.2 Drawing bats in TikZ]
+\ProvidesPackage{tikzlings-bats}[2025/03/23 version v2.3 Drawing bats in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bat/foreground}
+ \UseHook{tikzlings/foreground}
\csname bathookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -35,6 +37,11 @@
\newif\ifbat at teeth
\newif\ifbat at openmouth
+\NewHook{tikzlings/bat/background}
+\NewHook{tikzlings/bat/belly}
+\NewHook{tikzlings/bat/body}
+\NewHook{tikzlings/bat/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -52,16 +59,21 @@
body = black!75!white,
ears/.store in = \bat at ears,
ears = \bat at body,
- eye/.store in = \bat at eye,
- eye = white,
- pupil/.store in = \bat at pupil,
- pupil = black,
+ ear/.forward to = /bat/ears,
+ eyes/.store in = \bat at eyes,
+ eyes = white,
+ eye/.forward to = /bat/eyes,
+ pupils/.store in = \bat at pupils,
+ pupils = black,
+ pupil/.forward to = /bat/pupils,
mouth/.store in = \bat at mouth,
mouth = black,
feet/.store in = \bat at feet,
feet = orange,
+ foot/.forward to = /bat/feet,
wings/.store in = \bat at wings,
wings = 1,
+ wing/.forward to = /bat/wings,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% options
@@ -124,6 +136,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bat/background}
+ \UseHook{tikzlings/background}
\csname batshookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -152,6 +166,8 @@
\bat at part@draw[\bat at body] (0,1.55) circle [radius=0.43];
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bat/belly}
+ \UseHook{tikzlings/belly}
\csname batshookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -167,10 +183,10 @@
\bat at part@draw[\bat at feet] (-0.275,0.13) ellipse[x radius=0.03, y radius=0.1, rotate=-40];
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \bat at part@draw[\bat at eye] (-0.18,1.66) ellipse[x radius=0.1, y radius=0.15, rotate=10];
- \bat at part@draw[\bat at pupil] (-0.15,1.645) ellipse[x radius=0.0357, y radius=0.0714, rotate=3];
- \bat at part@draw[\bat at eye] (0.18,1.66) ellipse[x radius=0.1, y radius=0.15, rotate=-10];
- \bat at part@draw[\bat at pupil] (0.15,1.645) ellipse[x radius=0.0357, y radius=0.0714, rotate=-3];
+ \bat at part@draw[\bat at eyes] (-0.18,1.66) ellipse[x radius=0.1, y radius=0.15, rotate=10];
+ \bat at part@draw[\bat at pupils] (-0.15,1.645) ellipse[x radius=0.0357, y radius=0.0714, rotate=3];
+ \bat at part@draw[\bat at eyes] (0.18,1.66) ellipse[x radius=0.1, y radius=0.15, rotate=-10];
+ \bat at part@draw[\bat at pupils] (0.15,1.645) ellipse[x radius=0.0357, y radius=0.0714, rotate=-3];
%
% Teeth %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifbat at teeth
@@ -188,6 +204,8 @@
%
\fi% back
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bat/body}
+ \UseHook{tikzlings/body}
\csname batshookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -226,10 +244,10 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\bat[eye=red]
+%\bat[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Pupil colour}}
-%\bat[pupil=red]
+%\bat[pupils=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Mouth colour}}
%\bat[mouth=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bears.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bears.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bears.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-bears}[2025/01/05 version v2.2 Draw teddy bears in TikZ]
+\ProvidesPackage{tikzlings-bears}[2025/03/23 version v2.3 Draw teddy bears in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bear/foreground}
+ \UseHook{tikzlings/foreground}
\csname bearhookforeground\endcsname
\csname tikzlinghookforeground\endcsname
}
@@ -33,6 +35,11 @@
\newif\ifbear at contour
\newif\ifbear at openmouth
+\NewHook{tikzlings/bear/background}
+\NewHook{tikzlings/bear/belly}
+\NewHook{tikzlings/bear/body}
+\NewHook{tikzlings/bear/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -48,8 +55,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \bear at body,
body = brown!70!black,
- eye/.store in = \bear at eye,
- eye = \bear at body!42!black,
+ eyes/.store in = \bear at eyes,
+ eyes = \bear at body!42!black,
+ eye/.forward to = /bear/eyes,
mouth/.store in = \bear at mouth,
mouth = \bear at body!42!black,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -122,6 +130,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bear/background}
+ \UseHook{tikzlings/background}
\csname bearhookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -142,6 +152,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bear/belly}
+ \UseHook{tikzlings/belly}
\csname bearhookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -172,8 +184,8 @@
\bear at part@draw[bear at bright!60!red] (0, 1.5) ellipse[x radius=0.15, y radius=0.08];
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \bear at part@draw[\bear at eye] (-0.155, 1.7) circle[radius=0.05];
- \bear at part@draw[\bear at eye] (0.155, 1.7) circle[radius=0.05];
+ \bear at part@draw[\bear at eyes] (-0.155, 1.7) circle[radius=0.05];
+ \bear at part@draw[\bear at eyes] (0.155, 1.7) circle[radius=0.05];
%
% Mouth %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifbear at openmouth
@@ -185,6 +197,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bear/body}
+ \UseHook{tikzlings/body}
\csname bearhookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -223,7 +237,7 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\bear[eye=red]
+%\bear[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Mouth colour}}
%\bear[mouth=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bees.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bees.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bees.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-bees}[2025/01/05 version v2.2 Drawing bees in TikZ]
+\ProvidesPackage{tikzlings-bees}[2025/03/23 version v2.3 Drawing bees in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bee/foreground}
+ \UseHook{tikzlings/foreground}
\csname beehookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -34,6 +36,11 @@
\newif\ifbee at contour
\newif\ifbee at openmouth
+\NewHook{tikzlings/bee/background}
+\NewHook{tikzlings/bee/belly}
+\NewHook{tikzlings/bee/body}
+\NewHook{tikzlings/bee/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -51,14 +58,19 @@
body = yellow!70!orange,
hands/.store in = \bee at hands,
hands = black,
+ hand/.forward to = /bee/hands,
wings/.store in = \bee at wings,
wings = blue!20!cyan!30!white,
+ wing/.forward to = /bee/wings,
stripes/.store in = \bee at stripes,
stripes = black,
+ stripe/.forward to = /bee/stripes,
antennas/.store in = \bee at antennas,
antennas = black,
- eye/.store in = \bee at eye,
- eye = black,
+ antenna/.forward to = /bee/antennas,
+ eyes/.store in = \bee at eyes,
+ eyes = black,
+ eye/.forward to = /bee/eyes,
mouth/.store in = \bee at mouth,
mouth = black,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -120,6 +132,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bee/background}
+ \UseHook{tikzlings/background}
\csname beehookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -148,6 +162,8 @@
\bee at part@draw[\bee at stripes] (-0.3845, 1.2427).. controls (-0.3978, 1.1967) and (-0.4102, 1.1508) .. (-0.4213, 1.1051).. controls (-0.339, 1.0724) and (-0.1703, 1.05) .. (0.025, 1.05).. controls (0.2024, 1.05) and (0.3578, 1.0685) .. (0.4466, 1.0964).. controls (0.4345, 1.1426) and (0.4206, 1.1889) .. (0.4053, 1.2351).. controls (0.3136, 1.2136) and (0.1774, 1.2) .. (0.025, 1.2).. controls (-0.1445, 1.2) and (-0.2941, 1.2169) .. (-0.3845, 1.2427) -- cycle(-0.4505, 0.9692).. controls (-0.4588, 0.9242) and (-0.4654, 0.88) .. (-0.4704, 0.8366).. controls (-0.4375, 0.7877) and (-0.2284, 0.75) .. (0.025, 0.75).. controls (0.2433, 0.75) and (0.4285, 0.778) .. (0.4966, 0.817).. controls (0.4925, 0.8629) and (0.4858, 0.9099) .. (0.4772, 0.9575).. controls (0.3973, 0.9236) and (0.2251, 0.9) .. (0.025, 0.9).. controls (-0.1973, 0.9) and (-0.3855, 0.929) .. (-0.4505, 0.9692) -- cycle(-0.475, 0.65) -- (-0.475, 0.5798).. controls (-0.4712, 0.5424) and (-0.465, 0.5067) .. (-0.4563, 0.4729).. controls (-0.3973, 0.4309) and (-0.2042, 0.4) .. (0.025, 0.4).. controls (0.2141, 0.4) and (0.3785, 0.421) .. (0.4635, 0.452).. controls (0.4809, 0.5028) and (0.4921, 0.5583) .. (0.4975, 0.6175).. controls (0.43, 0.5782) and (0.2442, 0.55) .. (0.025, 0.55).. controls (-0.2511, 0.55) and (-0.475, 0.5947) .. (-0.475, 0.65) -- cycle(-0.3628, 0.2869).. controls (-0.2871, 0.2009) and (-0.1703, 0.15) .. (-0.0, 0.15).. controls (0.1603, 0.15) and (0.2765, 0.1965) .. (0.3564, 0.2753).. controls (0.2681, 0.2596) and (0.1523, 0.25) .. (0.025, 0.25).. controls (-0.1315, 0.25) and (-0.2711, 0.2644) .. (-0.3628, 0.2869) -- cycle;
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bee/belly}
+ \UseHook{tikzlings/belly}
\csname beehookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -167,8 +183,8 @@
\else% back
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \bee at part@draw[\bee at eye] (-0.15,1.8) circle[radius=0.05];
- \bee at part@draw[\bee at eye] (0.15,1.8) circle[radius=0.05];
+ \bee at part@draw[\bee at eyes] (-0.15,1.8) circle[radius=0.05];
+ \bee at part@draw[\bee at eyes] (0.15,1.8) circle[radius=0.05];
%
% Arms %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bee at part@draw[\bee at hands] (-0.25,0.88) circle[x radius=0.07,y radius=0.2, rotate=25];
@@ -190,6 +206,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bee/body}
+ \UseHook{tikzlings/body}
\csname beehookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -231,7 +249,7 @@
%\bee[antennas=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Eye colour}}
-%\bee[eye=red]
+%\bee[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Mouth colour}}
%\bee[mouth=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bugs.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bugs.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-bugs.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-bugs}[2025/01/05 version v2.2 Drawing bugs in TikZ]
+\ProvidesPackage{tikzlings-bugs}[2025/03/23 version v2.3 Drawing bugs in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bug/foreground}
+ \UseHook{tikzlings/foreground}
\csname bughookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -36,6 +38,11 @@
\newif\ifbug at contour
\newif\ifbug at openmouth
+\NewHook{tikzlings/bug/background}
+\NewHook{tikzlings/bug/belly}
+\NewHook{tikzlings/bug/body}
+\NewHook{tikzlings/bug/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -53,20 +60,27 @@
body = black!90!white,
arms/.store in = \bug at arms,
arms = red!80!black,
+ arm/.forward to = /bug/arms,
wings/.store in = \bug at wings,
wings = red!80!black,
+ wing/.forward to = /bug/wings,
dots/.store in = \bug at dots,
dots = black!90!white,
+ dot/.forward to = /bug/dots,
antennas/.store in = \bug at antennas,
antennas = red!80!black,
- eye/.store in = \bug at eye,
- eye = white,
- pupil/.store in = \bug at pupil,
- pupil = black,
+ antenna/.forward to = /bug/antennas,
+ eyes/.store in = \bug at eyes,
+ eyes = white,
+ eye/.forward to = /bug/eyes,
+ pupils/.store in = \bug at pupils,
+ pupils = black,
+ pupil/.forward to = /bug/pupils,
mouth/.store in = \bug at mouth,
mouth = red,
feet/.store in = \bug at feet,
feet = red!80!black,
+ foot/.forward to = /bug/feet,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% options
@@ -130,6 +144,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bug/background}
+ \UseHook{tikzlings/background}
\csname bughookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -169,6 +185,8 @@
\bug at part@draw[\bug at body] (0,1.7) circle [radius=0.37];
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bug/belly}
+ \UseHook{tikzlings/belly}
\csname bughookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -186,10 +204,10 @@
\else% back
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \bug at part@draw[\bug at eye] (0.13,1.75) ellipse[x radius=0.067, y radius=0.085];
- \bug at part@draw[\bug at eye] (-0.13,1.75) ellipse[x radius=0.067, y radius=0.085];
- \bug at part@draw[\bug at pupil] (0.12,1.73) ellipse[x radius=0.019, y radius=0.029];
- \bug at part@draw[\bug at pupil] (-0.12,1.73) ellipse[x radius=0.019, y radius=0.029];
+ \bug at part@draw[\bug at eyes] (0.13,1.75) ellipse[x radius=0.067, y radius=0.085];
+ \bug at part@draw[\bug at eyes] (-0.13,1.75) ellipse[x radius=0.067, y radius=0.085];
+ \bug at part@draw[\bug at pupils] (0.12,1.73) ellipse[x radius=0.019, y radius=0.029];
+ \bug at part@draw[\bug at pupils] (-0.12,1.73) ellipse[x radius=0.019, y radius=0.029];
%
% Arms %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\bug at part@draw[\bug at arms] (-0.25,0.88) circle[x radius=0.07,y radius=0.18, rotate=35];
@@ -209,6 +227,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/bug/body}
+ \UseHook{tikzlings/body}
\csname bughookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -250,10 +270,10 @@
%\bug[antennas=blue]
%\end{tcblisting}
%\begin{tcblisting}{title={Eye colour}}
-%\bug[eye=blue]
+%\bug[eyes=blue]
%\end{tcblisting}
%\begin{tcblisting}{title={Pupil colour}}
-%\bug[pupil=blue]
+%\bug[pupils=blue]
%\end{tcblisting}
%\begin{tcblisting}{title={Mouth colour}}
%\bug[mouth=blue]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-cats.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-cats.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-cats.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,12 +12,11 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-cats}[2025/01/05 version v2.2 Drawing cats in TikZ]
+\ProvidesPackage{tikzlings-cats}[2025/03/23 version v2.3 Drawing cats in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
-\RequirePackage{expl3}
\ExplSyntaxOn
\ifdefined\sys_rand_seed:
\pgfmathsetseed {\sys_rand_seed:}
@@ -51,6 +50,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/cat/foreground}
+ \UseHook{tikzlings/foreground}
\csname cathookforeground\endcsname
\csname tikzlinghookforeground\endcsname
}
@@ -61,6 +62,11 @@
\newif\ifcat at contour
\newif\ifcat at openmouth
+\NewHook{tikzlings/cat/background}
+\NewHook{tikzlings/cat/belly}
+\NewHook{tikzlings/cat/body}
+\NewHook{tikzlings/cat/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -78,11 +84,13 @@
body = gray!30!black,
whiskers/.store in = \cat at whiskers,
whiskers = gray!50!white,
- eye/.store in = \cat at eye,
- eye = yellow!80!orange,
- eyes/.forward to = /cat/eye,
- pupil/.store in = \cat at pupil,
- pupil = black,
+ whisker/.forward to = /cat/whiskers,
+ eyes/.store in = \cat at eyes,
+ eyes = yellow!80!orange,
+ eye/.forward to = /cat/eyes,
+ pupils/.store in = \cat at pupils,
+ pupils = black,
+ pupil/.forward to = /cat/pupils,
pupilwidth/.code = \def\cat at pupil@width{#1}
\edef\cat at pupil@offset{\strip at pt\dimexpr#1pt/4},
pupil width/.forward to = /cat/pupilwidth,
@@ -97,6 +105,7 @@
pupil width = 0.015,
paws/.store in = \cat at paws,
paws = \cat at body,
+ paw/.forward to = /cat/paws,
nose/.store in = \cat at nose,
nose = red!40!white!80!gray,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -159,6 +168,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/cat/background}
+ \UseHook{tikzlings/background}
\csname cathookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -175,6 +186,8 @@
\cat at part@draw[\cat at body] (0.5462, 0.7155) .. controls (0.5462, 0.1823) and (0.3259, 0.17) .. (0, 0.17) .. controls (-0.3259, 0.17) and (-0.5462, 0.1823) .. (-0.5462, 0.7155) .. controls (-0.5554, 1.2487) and (-0.3075, 1.6768) .. (0, 1.6768) .. controls (0.3075, 1.6768) and (0.5554, 1.2487) .. (0.5462, 0.7155) -- cycle;
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/cat/belly}
+ \UseHook{tikzlings/belly}
\csname cathookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -189,12 +202,12 @@
\unless\ifcat at back
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \cat at part@draw[\cat at eye] (-0.1014, 1.7491) .. controls (-0.1014, 1.7491) and (-0.1451, 1.7171) .. (-0.1841, 1.7284) .. controls (-0.2231, 1.7397) and (-0.2427, 1.79) .. (-0.2427, 1.79) .. controls (-0.2427, 1.79) and (-0.1992, 1.8221) .. (-0.1602, 1.8108) .. controls (-0.1212, 1.7995) and (-0.1014, 1.7491) .. (-0.1014, 1.7491) -- cycle;
- \cat at part@draw[\cat at eye] (0.1014, 1.7491) .. controls (0.1014, 1.7491) and (0.1451, 1.7171) .. (0.1841, 1.7284) .. controls (0.2231, 1.7397) and (0.2427, 1.79) .. (0.2427, 1.79) .. controls (0.2427, 1.79) and (0.1992, 1.8221) .. (0.1602, 1.8108) .. controls (0.1212, 1.7995) and (0.1014, 1.7491) .. (0.1014, 1.7491) -- cycle;
+ \cat at part@draw[\cat at eyes] (-0.1014, 1.7491) .. controls (-0.1014, 1.7491) and (-0.1451, 1.7171) .. (-0.1841, 1.7284) .. controls (-0.2231, 1.7397) and (-0.2427, 1.79) .. (-0.2427, 1.79) .. controls (-0.2427, 1.79) and (-0.1992, 1.8221) .. (-0.1602, 1.8108) .. controls (-0.1212, 1.7995) and (-0.1014, 1.7491) .. (-0.1014, 1.7491) -- cycle;
+ \cat at part@draw[\cat at eyes] (0.1014, 1.7491) .. controls (0.1014, 1.7491) and (0.1451, 1.7171) .. (0.1841, 1.7284) .. controls (0.2231, 1.7397) and (0.2427, 1.79) .. (0.2427, 1.79) .. controls (0.2427, 1.79) and (0.1992, 1.8221) .. (0.1602, 1.8108) .. controls (0.1212, 1.7995) and (0.1014, 1.7491) .. (0.1014, 1.7491) -- cycle;
%
% Pupils %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \cat at part@draw[\cat at pupil] (-0.1720, 1.8071) .. controls (-0.1720+\cat at pupil@width, 1.7827+\cat at pupil@offset) and (-0.1720+\cat at pupil@width, 1.7584-\cat at pupil@offset) .. (-0.1720, 1.7341) .. controls (-0.1720-\cat at pupil@width, 1.7584-\cat at pupil@offset) and (-0.1720-\cat at pupil@width, 1.7827+\cat at pupil@offset) .. (-0.1720, 1.8071) -- cycle;
- \cat at part@draw[\cat at pupil] ( 0.1720, 1.8071) .. controls ( 0.1720+\cat at pupil@width, 1.7827+\cat at pupil@offset) and ( 0.1720+\cat at pupil@width, 1.7584-\cat at pupil@offset) .. ( 0.1720, 1.7341) .. controls ( 0.1720-\cat at pupil@width, 1.7584-\cat at pupil@offset) and ( 0.1720-\cat at pupil@width, 1.7827+\cat at pupil@offset) .. ( 0.1720, 1.8071) -- cycle;
+ \cat at part@draw[\cat at pupils] (-0.1720, 1.8071) .. controls (-0.1720+\cat at pupil@width, 1.7827+\cat at pupil@offset) and (-0.1720+\cat at pupil@width, 1.7584-\cat at pupil@offset) .. (-0.1720, 1.7341) .. controls (-0.1720-\cat at pupil@width, 1.7584-\cat at pupil@offset) and (-0.1720-\cat at pupil@width, 1.7827+\cat at pupil@offset) .. (-0.1720, 1.8071) -- cycle;
+ \cat at part@draw[\cat at pupils] ( 0.1720, 1.8071) .. controls ( 0.1720+\cat at pupil@width, 1.7827+\cat at pupil@offset) and ( 0.1720+\cat at pupil@width, 1.7584-\cat at pupil@offset) .. ( 0.1720, 1.7341) .. controls ( 0.1720-\cat at pupil@width, 1.7584-\cat at pupil@offset) and ( 0.1720-\cat at pupil@width, 1.7827+\cat at pupil@offset) .. ( 0.1720, 1.8071) -- cycle;
%
% Mouth %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifcat at openmouth
@@ -221,6 +234,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/cat/body}
+ \UseHook{tikzlings/body}
\csname cathookbody\endcsname
\csname tikzlinghookbody\endcsname
}
@@ -268,6 +283,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/cat/background}
+ \UseHook{tikzlings/background}
\csname cathookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -276,6 +293,8 @@
\node[scale=\scalingfactor] at (0,1.3) {R.I.P.};
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/cat/belly}
+ \UseHook{tikzlings/belly}
\csname cathookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -295,6 +314,8 @@
}
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/cat/body}
+ \UseHook{tikzlings/body}
\csname cathookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -333,10 +354,10 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\cat[eye=green]
+%\cat[eyes=green]
%\end{tcblisting}
%\begin{tcblisting}{title={Pupil colour}}
-%\cat[pupil=red]
+%\cat[pupils=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Nose colour}}
%\cat[nose=red]
@@ -353,7 +374,7 @@
%\cat[openmouth]
%\end{tcblisting}
%
-%The shape of the \saminline|pupil| can be changed with the \saminline|pupilwidth| option:
+%The shape of the \saminline|pupils| can be changed with the \saminline|pupilwidth| option:
%\begin{tcblisting}{title={Width of pupils}}
%\cat[pupilwidth=0.015]
%\end{tcblisting}
@@ -387,12 +408,13 @@
% \tikzset{/cat/.cd,#1}%
% \cat at tombstone%
%}
-%\renewcommand{\cathookbackground}{}
+%\RemoveFromHook{tikzlings/cat/background}
%\makeatother
%\begin{tcblisting}{title={Schrödingers cat}}
%\cat[schroedinger]
%\end{tcblisting}
%\endgroup
+%\AddToHook{tikzlings/cat/background}{\path (-1.6,0.1) rectangle (0.905, 2.17);}
%
%To view the cat from behind:
%\begin{tcblisting}{title={Back view}}
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-chickens.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-chickens.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-chickens.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-chickens}[2025/01/05 version v2.2 Draw chickens in TikZ]
+\ProvidesPackage{tikzlings-chickens}[2025/03/23 version v2.3 Draw chickens in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -29,6 +29,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/chicken/foreground}
+ \UseHook{tikzlings/foreground}
\csname chickenhookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -39,6 +41,11 @@
\newif\ifchicken at contour
\newif\ifchicken at baby
+\NewHook{tikzlings/chicken/background}
+\NewHook{tikzlings/chicken/belly}
+\NewHook{tikzlings/chicken/body}
+\NewHook{tikzlings/chicken/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -54,14 +61,17 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \chicken at body,
body = brown!90!orange!70!yellow!40!white,
- eye/.store in = \chicken at eye,
- eye = white!90!gray,
- pupil/.store in = \chicken at pupil,
- pupil = brown!30!black,
+ eyes/.store in = \chicken at eyes,
+ eyes = white!90!gray,
+ eye/.forward to = /chicken/eyes,
+ pupils/.store in = \chicken at pupils,
+ pupils = brown!30!black,
+ pupil/.forward to = /chicken/pupils,
bill/.store in = \chicken at bill,
bill = yellow,
feet/.store in = \chicken at feet,
feet = orange!90!yellow,
+ foot/.forward to = /chicken/feet,
comb/.store in = \chicken at comb,
comb = red,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -140,6 +150,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/chicken/background}
+ \UseHook{tikzlings/background}
\csname chickenhookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -173,15 +185,17 @@
\chicken at part@draw[\chicken at comb] (-0.082,2.060) ellipse[x radius=0.15, y radius=0.06, rotate=120];
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/chicken/belly}
+ \UseHook{tikzlings/belly}
\csname chickenhookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\unless\ifchicken at back
- \chicken at part@draw[\chicken at eye] (0.135,1.8) ellipse[x radius=0.06, y radius=0.07];
- \chicken at part@draw[\chicken at eye] (-0.135,1.8) ellipse[x radius=0.06, y radius=0.07];
- \chicken at part@draw[\chicken at pupil] (0.124,1.78) ellipse[x radius=0.017, y radius=0.027];
- \chicken at part@draw[\chicken at pupil] (-0.124,1.78) ellipse[x radius=0.017, y radius=0.027];
+ \chicken at part@draw[\chicken at eyes] (0.135,1.8) ellipse[x radius=0.06, y radius=0.07];
+ \chicken at part@draw[\chicken at eyes] (-0.135,1.8) ellipse[x radius=0.06, y radius=0.07];
+ \chicken at part@draw[\chicken at pupils] (0.124,1.78) ellipse[x radius=0.017, y radius=0.027];
+ \chicken at part@draw[\chicken at pupils] (-0.124,1.78) ellipse[x radius=0.017, y radius=0.027];
\fi% back
%
% Bill %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -212,6 +226,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/chicken/body}
+ \UseHook{tikzlings/body}
\csname chickenhookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -264,6 +280,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/chicken/background}
+ \UseHook{tikzlings/background}
\csname chickenhookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -305,15 +323,17 @@
\chicken at part@draw[\chicken at baby] (0,0.87) circle [radius=0.25];
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/chicken/belly}
+ \UseHook{tikzlings/belly}
\csname chickenhookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\unless\ifchicken at back
- \chicken at part@draw[\chicken at eye] (0.075,0.925) ellipse[x radius=0.055, y radius=0.065];
- \chicken at part@draw[\chicken at eye] (-0.075,0.925) ellipse[x radius=0.055, y radius=0.065];
- \chicken at part@draw[\chicken at pupil] (0.07,0.91) ellipse[x radius=0.017, y radius=0.024];
- \chicken at part@draw[\chicken at pupil] (-0.07,0.91) ellipse[x radius=0.017, y radius=0.024];
+ \chicken at part@draw[\chicken at eyes] (0.075,0.925) ellipse[x radius=0.055, y radius=0.065];
+ \chicken at part@draw[\chicken at eyes] (-0.075,0.925) ellipse[x radius=0.055, y radius=0.065];
+ \chicken at part@draw[\chicken at pupils] (0.07,0.91) ellipse[x radius=0.017, y radius=0.024];
+ \chicken at part@draw[\chicken at pupils] (-0.07,0.91) ellipse[x radius=0.017, y radius=0.024];
\fi% back
%
% Bill %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -336,6 +356,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/chicken/body}
+ \UseHook{tikzlings/body}
\csname chickenhookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -378,11 +400,11 @@
%\end{tcblisting}
%
%\begin{tcblisting}{title={Eye colour}}
-%\chicken[eye=red]
+%\chicken[eyes=red]
%\end{tcblisting}
%
%\begin{tcblisting}{title={Pupil color}}
-%\chicken[pupil=red]
+%\chicken[pupils=red]
%\end{tcblisting}
%
%\begin{tcblisting}{title={Bill colour}}
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-coatis.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-coatis.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-coatis.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-coatis}[2025/01/05 version v2.2 Drawing coatis in TikZ]
+\ProvidesPackage{tikzlings-coatis}[2025/03/23 version v2.3 Drawing coatis in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/coati/foreground}
+ \UseHook{tikzlings/foreground}
\csname coatihookforeground\endcsname
\csname tikzlinghookforeground\endcsname
}
@@ -35,6 +37,11 @@
\newif\ifcoati at back
\newif\ifcoati at contour
+\NewHook{tikzlings/coati/background}
+\NewHook{tikzlings/coati/belly}
+\NewHook{tikzlings/coati/body}
+\NewHook{tikzlings/coati/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -50,8 +57,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \coati at body,
body = brown!50!darkgray!97!yellow!50!darkgray,
- eye/.store in = \coati at eye,
- eye = coati at bodybright!50!black,
+ eyes/.store in = \coati at eyes,
+ eyes = coati at bodybright!50!black,
+ eye/.forward to = /coati/eyes,
rotatehead/.store in = \coati at rotatehead,
rotate head/.forward to = /coati/rotatehead,
rotatehead = 0,
@@ -128,6 +136,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/coati/background}
+ \UseHook{tikzlings/background}
\csname coatihookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -145,7 +155,7 @@
%
% Tail %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\unless\ifcoati at back
- \coati at part@draw[\coati at body] (0.2845, 0.5595) .. controls (0.6382, 0.8326) and (0.7302, 1.5138) .. (1.0504, 1.6639) .. controls (1.3206, 1.7840) and (1.7609, 1.3537) .. (1.5608, 1.3437) .. controls (0.9203, 2.0442) and (0.8642, 0.6247) .. (0.5001, 0.3831) .. controls (0.3214, 0.2645) and (-0.1764, 0.1117) .. (-0.1408, 0.3245) .. controls (-0.1082, 0.5191) and (0.0508, 0.3791) .. (0.2845, 0.5595) -- cycle;
+ \coati at part@draw[\coati at body,overlay] (0.2845, 0.5595) .. controls (0.6382, 0.8326) and (0.7302, 1.5138) .. (1.0504, 1.6639) .. controls (1.3206, 1.7840) and (1.7609, 1.3537) .. (1.5608, 1.3437) .. controls (0.9203, 2.0442) and (0.8642, 0.6247) .. (0.5001, 0.3831) .. controls (0.3214, 0.2645) and (-0.1764, 0.1117) .. (-0.1408, 0.3245) .. controls (-0.1082, 0.5191) and (0.0508, 0.3791) .. (0.2845, 0.5595) -- cycle;
\coati at part@draw[coati at bodybright!45!white!95!orange] (1.48, 1.554) -- (1.4139, 1.4752).. controls (1.4389, 1.4583) and (1.4649, 1.4375) .. (1.492, 1.4127) -- (1.5537, 1.4862).. controls (1.5333, 1.5087) and (1.5084, 1.5318) .. (1.48, 1.554) -- cycle;
\coati at part@draw[coati at bodybright!45!white!95!orange] (1.2166, 1.6794) -- (1.2121, 1.5329).. controls (1.2432, 1.5385) and (1.2764, 1.5364) .. (1.3119, 1.5258) -- (1.3158, 1.6501).. controls (1.2832, 1.6633) and (1.2498, 1.6736) .. (1.2166, 1.6794) -- cycle;
\coati at part@draw[coati at bodybright!45!white!95!orange] (1.0093, 1.6405).. controls (0.9821, 1.6229) and (0.9566, 1.6014) .. (0.9325, 1.5765) -- (1.0545, 1.4296).. controls (1.0777, 1.4572) and (1.1021, 1.4801) .. (1.1281, 1.4976) -- (1.0093, 1.6405) -- cycle;
@@ -165,6 +175,8 @@
\coati at part@draw[\coati at body] (0.595, 0.92) .. controls (0.595, 0.26) and (0.355, 0.18) .. (0, 0.18) .. controls (-0.355, 0.18) and (-0.595, 0.26) .. (-0.595, 0.92) .. controls (-0.605, 1.58) and (-0.335, 2.11) .. (0, 2.11) .. controls (0.335, 2.11) and (0.605, 1.58) .. (0.595, 0.92) -- cycle;
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/coati/belly}
+ \UseHook{tikzlings/belly}
\csname coatihookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -182,9 +194,9 @@
%
% Head %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifcoati at back
- \coati at part@draw[coati at bodybright!45!white!95!orange] (0.4569, 1.5608) .. controls (0.3680, 1.3594) and (0.0005, 1.2699) .. (-0.1826, 1.3507) .. controls (-0.3657, 1.4315) and (-0.5475, 1.7632) .. (-0.4587, 1.9646) .. controls (-0.1103, 2.3578) and (0.5123, 2.0832) .. (0.4569, 1.5608) -- cycle;
+ \coati at part@draw[coati at bodybright!45!white!95!orange,overlay] (0.4569, 1.5608) .. controls (0.3680, 1.3594) and (0.0005, 1.2699) .. (-0.1826, 1.3507) .. controls (-0.3657, 1.4315) and (-0.5475, 1.7632) .. (-0.4587, 1.9646) .. controls (-0.1103, 2.3578) and (0.5123, 2.0832) .. (0.4569, 1.5608) -- cycle;
\else% back
- \coati at part@draw[coati at bodybright!45!white!95!orange] (0.4808, 1.7911) .. controls (0.5682, 1.2837) and (-0.3468, 1.3575) .. (-0.6360, 1.3679) .. controls (-0.7582, 1.4729) and (-0.5198, 1.7911) .. (-0.5198, 1.7911) .. controls (-0.3597, 2.2914) and (0.3207, 2.2914) .. (0.4808, 1.7911) -- cycle;
+ \coati at part@draw[coati at bodybright!45!white!95!orange,overlay] (0.4808, 1.7911) .. controls (0.5682, 1.2837) and (-0.3468, 1.3575) .. (-0.6360, 1.3679) .. controls (-0.7582, 1.4729) and (-0.5198, 1.7911) .. (-0.5198, 1.7911) .. controls (-0.3597, 2.2914) and (0.3207, 2.2914) .. (0.4808, 1.7911) -- cycle;
\fi% back
%
% Cheek %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -199,8 +211,8 @@
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\unless\ifcoati at back
- \coati at part@draw[\coati at eye] (0.007, 1.624) ellipse[x radius=0.04, y radius=0.06];
- \coati at part@draw[\coati at eye] (-0.38, 1.865) ellipse[x radius=0.035, y radius=0.055];
+ \coati at part@draw[\coati at eyes] (0.007, 1.624) ellipse[x radius=0.04, y radius=0.06];
+ \coati at part@draw[\coati at eyes] (-0.38, 1.865) ellipse[x radius=0.035, y radius=0.055];
\fi% back
%
% Right Ear %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -214,9 +226,9 @@
%
% Head %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifcoati at back
- \coati at part@draw[coati at bodybright!45!white!95!orange] (0.5, 1.8) .. controls (0.5, 1.58) and (0.2, 1.35) .. (0, 1.35) .. controls (-0.2, 1.35) and (-0.5, 1.58) .. (-0.5, 1.8) .. controls (-0.34, 2.3) and (0.34, 2.3) .. (0.5, 1.8) -- cycle;
+ \coati at part@draw[coati at bodybright!45!white!95!orange,overlay] (0.5, 1.8) .. controls (0.5, 1.58) and (0.2, 1.35) .. (0, 1.35) .. controls (-0.2, 1.35) and (-0.5, 1.58) .. (-0.5, 1.8) .. controls (-0.34, 2.3) and (0.34, 2.3) .. (0.5, 1.8) -- cycle;
\else% back
- \coati at part@draw[coati at bodybright!45!white!95!orange] (0.5, 1.8) .. controls (0.5, 1.58) and (0.2, 1.25) .. (0, 1.16) .. controls (-0.2, 1.25) and (-0.5, 1.58) .. (-0.5, 1.8) .. controls (-0.34, 2.3) and (0.34, 2.3) .. (0.5, 1.8) -- cycle;
+ \coati at part@draw[coati at bodybright!45!white!95!orange,overlay] (0.5, 1.8) .. controls (0.5, 1.58) and (0.2, 1.25) .. (0, 1.16) .. controls (-0.2, 1.25) and (-0.5, 1.58) .. (-0.5, 1.8) .. controls (-0.34, 2.3) and (0.34, 2.3) .. (0.5, 1.8) -- cycle;
\fi% back
%
% Cheeks %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -231,8 +243,8 @@
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\unless\ifcoati at back
- \coati at part@draw[\coati at eye] (0.23, 1.62) circle[radius=0.05];
- \coati at part@draw[\coati at eye] (-0.23, 1.62) circle[radius=0.05];
+ \coati at part@draw[\coati at eyes] (0.23, 1.62) circle[radius=0.05];
+ \coati at part@draw[\coati at eyes] (-0.23, 1.62) circle[radius=0.05];
\fi% back
%
% Ears %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -261,6 +273,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/coati/body}
+ \UseHook{tikzlings/body}
\csname coatihookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -299,7 +313,7 @@
%
%In addition to the colour of the body, the colour of the eyes can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\coati[eye=red]
+%\coati[eyes=red]
%\end{tcblisting}
%
%The head of the coati can be rotated, but please don't overdo this, otherwise his neck might break!
Added: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-dogs.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-dogs.sty (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-dogs.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -0,0 +1,251 @@
+ % !TeX root = ./examples/dog.tex
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% This package is part of the TikZlings package
+%% A package to bring cute little animals and other beings into tikz
+%% Maintained by samcarter
+%%
+%% Project repository and bug tracker:
+%% https://github.com/samcarter/tikzlings
+%%
+%% Released under the LaTeX Project Public License v1.3c or later
+%% See https://www.latex-project.org/lppl.txt
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ProvidesPackage{tikzlings-dogs}[2025/03/23 version v2.3 Drawing dogs in TikZ]
+
+\RequirePackage{tikz}
+\RequirePackage{tikzlings-addons}
+
+\newcommand*{\dog}[1][]{%
+ \begin{scope}%
+ \tikzset{/dog/.cd,#1}%
+ \dog at draw%
+ \end{scope}%
+ \thing[#1]%
+ % adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/dog/foreground}
+ \UseHook{tikzlings/foreground}
+ \csname doghookforeground\endcsname
+ \csname tikzlinghookforeground\endcsname
+}
+
+\newif\ifdog at threeD
+\newif\ifdog at back
+\newif\ifdog at contour
+
+\NewHook{tikzlings/dog/background}
+\NewHook{tikzlings/dog/belly}
+\NewHook{tikzlings/dog/body}
+\NewHook{tikzlings/dog/foreground}
+
+\tikzset{
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %
+ % Pass unknown keys on to tikz
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ /dog/.search also={/tikz,/pgf,/thing},
+ /dog/.cd,
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %
+ % body
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ body/.store in = \dog at body,
+ body = brown!90!orange!70!white,
+ eyes/.store in = \dog at eyes,
+ eyes = black!80!white,
+ eye/.forward to = /dog/eyes,
+ paws/.store in = \dog at paws,
+ paws = \dog at body!60!white,
+ paw/.forward to = /dog/paws,
+ nose/.store in = \dog at nose,
+ nose = black!80!white,
+ tail/.store in = \dog at tail,
+ tail = \dog at body!60!white,
+ head/.store in = \dog at head,
+ head = \dog at body!60!white,
+ ears/.store in = \dog at ears,
+ ears = \dog at body,
+ ear/.forward to = /dog/ears,
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %
+ % options
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ 3D/.code = \dog at threeDtrue,
+ back/.code = \dog at backtrue,
+ contour/.code = \dog at contourtrue
+ \def\dog at contour{#1}
+ \def\dog at whiskers{#1},
+ contour/.default = black,
+ outline/.forward to = /dog/contour,
+}
+
+\def\dog at draw{%
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %
+ % minimal bounding box size
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \path (-0.6,0.1) rectangle (0.96, 2.25);
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %
+ % store the current scale factor
+ % from https://github.com/samcarter/tikzlings/issues/3#issuecomment-461373494
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \pgfgettransformentries{\tmpscaleA}{\tmpscaleB}{\tmpscaleC}{\tmpscaleD}{\tmp}{\tmp}%
+ \pgfmathsetmacro{\scalingfactor}{sqrt(abs(\tmpscaleA*\tmpscaleD-\tmpscaleB*\tmpscaleC))*sqrt(abs((\pgf at xx/1cm)*(\pgf at yy/1cm)-(\pgf at xy/1cm)*(\pgf at yx/1cm)))}%
+ \pgfmathsetmacro{\xscalefactor}{\tmpscaleA}
+ \pgfmathsetmacro{\yscalefactor}{\tmpscaleD}
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %
+ % switch between 2D, 3D and contours, from
+ % https://chat.stackexchange.com/transcript/message/45991801#45991801
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \ifdog at threeD
+ \def\dog at part@draw[##1]{\shade[ball color=##1]}
+ \else% 3D
+ \ifdog at contour
+ \def\dog at part@draw[##1]{\draw[##1,\dog at contour,fill=white,line width=\scalingfactor*0.4pt]}
+ \else% contour
+ \def\dog at part@draw[##1]{\fill[##1]}
+ \fi% contour
+ \fi% 3D
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %
+ % Body parts
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %
+ % adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/dog/background}
+ \UseHook{tikzlings/background}
+ \csname doghookbackground\endcsname
+ \csname tikzlinghookbackground\endcsname
+ %
+ % body if back %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \unless\ifdog at back
+ %
+ % Tail %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \dog at part@draw[\dog at tail,overlay] (0.8496, 0.6798).. controls (0.6181, 0.2192) and (-0.0349, 0.2165) .. (-0.0273, 0.4485).. controls (-0.0197, 0.6805) and (0.3442, 0.4836) .. (0.5802, 0.6615).. controls (0.7305, 0.7748) and (0.8744, 1.0345) .. (0.9231, 1.0115).. controls (0.9717, 0.9884) and (0.9263, 0.8323) .. (0.8496, 0.6798) -- cycle;
+ %
+ % Body %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \dog at part@draw[\dog at body] (0.53, 0.89) .. controls (0.53, 0.49) and (0.53, 0.18) .. (0, 0.17) .. controls (-0.53, 0.18) and (-0.53, 0.49) .. (-0.53, 0.89) .. controls (-0.53, 1.29) and (-0.24, 1.61) .. (0, 1.61) .. controls (0.24, 1.61) and (0.53, 1.29) .. (0.53, 0.89) -- cycle;
+ \fi% back
+ %
+ % adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/dog/belly}
+ \UseHook{tikzlings/belly}
+ \csname doghookbelly\endcsname
+ \csname tikzlinghookbelly\endcsname
+ %
+ % Head %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \dog at part@draw[\dog at head] (0.51,1.91) .. controls (0.51,1.73) and (0.2,1.24) .. (0,1.24) .. controls (-0.2,1.24) and (-0.51, 1.73) .. (-0.51,1.91) .. controls(-0.51,2.09) and (-0.28,2.24) .. (0,2.24) .. controls (0.28,2.24) and (0.51,2.09) .. (0.51,1.91) -- cycle;
+ %
+ % Paws %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \dog at part@draw[\dog at paws] (-0.18, 0.40).. controls (-0.18, 0.23) and (-0.15, 0.07) .. (-0.28, 0.08).. controls (-0.42, 0.09) and (-0.39, 0.23) .. (-0.39, 0.40).. controls (-0.39, 0.58) and (-0.34, 0.73) .. (-0.28, 0.73).. controls (-0.22, 0.73) and (-0.18, 0.58) .. (-0.18, 0.40) -- cycle;
+ \dog at part@draw[\dog at paws] (0.18, 0.40).. controls (0.18, 0.23) and (0.15, 0.07) .. (0.28, 0.08).. controls (0.42, 0.09) and (0.39, 0.23) .. (0.39, 0.40).. controls (0.39, 0.58) and (0.34, 0.73) .. (0.28, 0.73).. controls (0.22, 0.73) and (0.18, 0.58) .. (0.18, 0.40) -- cycle;
+ %
+ % Show details only from the front %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \ifdog at back
+ % Body if back
+ \dog at part@draw[\dog at body] (0.53, 0.89) .. controls (0.53, 0.49) and (0.53, 0.18) .. (0, 0.17) .. controls (-0.53, 0.18) and (-0.53, 0.49) .. (-0.53, 0.89) .. controls (-0.53, 1.29) and (-0.24, 1.61) .. (0, 1.61) .. controls (0.24, 1.61) and (0.53, 1.29) .. (0.53, 0.89) -- cycle;
+ %
+ % Tail %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \dog at part@draw[\dog at tail,overlay] (0.8496, 0.6798).. controls (0.6181, 0.2192) and (-0.0349, 0.2165) .. (-0.0273, 0.4485).. controls (-0.0197, 0.6805) and (0.3442, 0.4836) .. (0.5802, 0.6615).. controls (0.7305, 0.7748) and (0.8744, 1.0345) .. (0.9231, 1.0115).. controls (0.9717, 0.9884) and (0.9263, 0.8323) .. (0.8496, 0.6798) -- cycle;
+ %
+ \else
+ %
+ % Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \dog at part@draw[\dog at eyes] (-0.18, 1.73) circle [radius=0.04];
+ \dog at part@draw[\dog at eyes] (0.18, 1.73) circle [radius=0.04];
+ %
+ % Nose %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \dog at part@draw[\dog at nose] (0.09, 1.50) .. controls (0.09, 1.47) and (0.05, 1.41) .. (0, 1.41) .. controls (-0.05, 1.41) and (-0.09, 1.47) .. (-0.09, 1.50) .. controls (-0.09, 1.53) and (-0.05, 1.56) .. (0, 1.56) .. controls (0.05, 1.56) and (0.09, 1.53) .. (0.09, 1.50) -- cycle;
+ %
+ \fi% back
+ %
+ % Ears %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \dog at part@draw[\dog at ears, rotate=-10] (-0.75,1.7) ellipse [x radius=0.14, y radius=0.4];
+ \dog at part@draw[\dog at ears, rotate=10] (0.75,1.7) ellipse [x radius=0.14, y radius=0.4];
+ %
+ % adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/dog/body}
+ \UseHook{tikzlings/body}
+ \csname doghookbody\endcsname
+ \csname tikzlinghookbody\endcsname
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%%
+%% Documentation
+%%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%\clearpage
+%\section[Dog]{Cookie, the dog}
+%
+%\emph{A friend asked me about a dog-shaped cookie cutter, so the \tikzlings got to have a dog}
+%
+%\subsection{Package name}
+%
+%\begin{tcolorbox}[title={Package usage}]
+%\begin{samcode}
+%\usepackage{tikzlings-dogs}
+%\end{samcode}
+%\end{tcolorbox}
+%
+%\subsection{Basic Usage}
+%
+%\begin{tcblisting}{title={Basic dog}}
+%\dog
+%\end{tcblisting}
+%
+%\subsection{Options}
+%
+%The basic dog can be modified by changing its colour:
+%\begin{tcblisting}{title={Body colour}}
+%\dog[body=blue]
+%\end{tcblisting}
+%
+%In addition to the colour of the body, the colour of various body parts can be adjusted:
+%\begin{tcblisting}{title={Eye colour}}
+%\dog[eyes=red]
+%\end{tcblisting}
+%\begin{tcblisting}{title={Nose colour}}
+%\dog[nose=red]
+%\end{tcblisting}
+%\begin{tcblisting}{title={Head colour}}
+%\dog[head=red]
+%\end{tcblisting}
+%\begin{tcblisting}{title={Ears colour}}
+%\dog[ears=red]
+%\end{tcblisting}
+%\begin{tcblisting}{title={Paw colour}}
+%\dog[paws=red]
+%\end{tcblisting}
+%\begin{tcblisting}{title={Tail colour}}
+%\dog[tail=red]
+%\end{tcblisting}
+%
+%To view the dog from behind:
+%\begin{tcblisting}{title={Back view}}
+%\dog[back]
+%\end{tcblisting}
+%
+%The key \saminline|3D| will make the dog 3-dimensional:
+%\begin{tcblisting}{title={3D view}}
+%\dog[3D]
+%\end{tcblisting}
+%
+%And finally the \saminline|contour| key will only draw the outlines:
+%\begin{tcblisting}{title={Contours}}
+%\dog[contour=black]
+%\end{tcblisting}
Property changes on: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-dogs.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-elephants.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-elephants.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-elephants.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-elephants}[2025/01/05 version v2.2 Draw teddy elephants in TikZ]
+\ProvidesPackage{tikzlings-elephants}[2025/03/23 version v2.3 Draw teddy elephants in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/elephant/foreground}
+ \UseHook{tikzlings/foreground}
\csname elephanthookforeground\endcsname
\csname tikzlinghookforeground\endcsname
}
@@ -32,6 +34,11 @@
\newif\ifelephant at back
\newif\ifelephant at contour
+\NewHook{tikzlings/elephant/background}
+\NewHook{tikzlings/elephant/belly}
+\NewHook{tikzlings/elephant/body}
+\NewHook{tikzlings/elephant/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -47,14 +54,18 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \elephant at body,
body = gray,
- eye/.store in = \elephant at eye,
- eye = \elephant at body!30!black,
+ eyes/.store in = \elephant at eyes,
+ eyes = \elephant at body!30!black,
+ eye/.forward to = /elephant/eyes,
ears/.store in = \elephant at ears,
ears = \elephant at body!30!white,
+ ear/.forward to = /elephant/ears,
feet/.store in = \elephant at feet,
feet = \elephant at body!30!white,
+ foot/.forward to = /elephant/feet,
hands/.store in = \elephant at hands,
hands = \elephant at body!30!white,
+ hand/.forward to = /elephant/hands,
belly/.store in = \elephant at belly,
belly = \elephant at body!30!white,
tail/.store in = \elephant at tail,
@@ -114,6 +125,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/elephant/background}
+ \UseHook{tikzlings/background}
\csname elephanthookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -136,6 +149,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/elephant/belly}
+ \UseHook{tikzlings/belly}
\csname elephanthookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -175,8 +190,8 @@
\fi% 3D
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \elephant at part@draw[\elephant at eye] (-0.155, 1.7) circle[radius=0.05];
- \elephant at part@draw[\elephant at eye] (0.155, 1.7) circle[radius=0.05];
+ \elephant at part@draw[\elephant at eyes] (-0.155, 1.7) circle[radius=0.05];
+ \elephant at part@draw[\elephant at eyes] (0.155, 1.7) circle[radius=0.05];
%
\fi% back
%
@@ -187,6 +202,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/elephant/body}
+ \UseHook{tikzlings/body}
\csname elephanthookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -228,7 +245,7 @@
%\elephant[ears=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Eye colour}}
-%\elephant[eye=red]
+%\elephant[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Hand colour}}
%\elephant[hands=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-hippos.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-hippos.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-hippos.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-hippos}[2025/01/05 version v2.2 Drawing hippos in TikZ]
+\ProvidesPackage{tikzlings-hippos}[2025/03/23 version v2.3 Drawing hippos in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/hippo/foreground}
+ \UseHook{tikzlings/foreground}
\csname hippohookforeground\endcsname
\csname tikzlinghookforeground\endcsname
}
@@ -33,6 +35,11 @@
\newif\ifhippo at contour
\newif\ifhippo at openmouth
+\NewHook{tikzlings/hippo/background}
+\NewHook{tikzlings/hippo/belly}
+\NewHook{tikzlings/hippo/body}
+\NewHook{tikzlings/hippo/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -48,12 +55,15 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \hippo at body,
body = gray!55!white,
- eye/.store in = \hippo at eye,
- eye = white,
- pupil/.store in = \hippo at pupil,
- pupil = black,
+ eyes/.store in = \hippo at eyes,
+ eyes = white,
+ eye/.forward to = /hippo/eyes,
+ pupils/.store in = \hippo at pupils,
+ pupils = black,
+ pupil/.forward to = /hippo/pupils,
toes/.store in = \hippo at toes,
toes = \hippo at body,
+ toe/.forward to = /hippo/toes,
mouth/.store in = \hippo at mouth,
mouth = \hippo at body!50!black,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -115,6 +125,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/hippo/background}
+ \UseHook{tikzlings/background}
\csname hippohookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -137,6 +149,8 @@
\hippo at part@draw[\hippo at body] ( 0.6, 0.8 ) .. controls ( 0.6 , 0.4) and ( 0.35, 0.19) .. ( 0.0, 0.19) .. controls (-0.35, 0.19) and (-0.6 , 0.4) .. (-0.6, 0.8 ) .. controls (-0.6 , 1.3) and (-0.35, 1.65) .. ( 0.0, 1.65) .. controls ( 0.35, 1.65) and ( 0.6 , 1.3) .. ( 0.6, 0.8) -- cycle;
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/hippo/belly}
+ \UseHook{tikzlings/belly}
\csname hippohookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -154,15 +168,15 @@
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifhippo at contour
- \hippo at part@draw[\hippo at eye] (-0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
- \hippo at part@draw[\hippo at eye] (0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
- \hippo at part@draw[\hippo at pupil] (-0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
- \hippo at part@draw[\hippo at pupil] (0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
+ \hippo at part@draw[\hippo at eyes] (-0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
+ \hippo at part@draw[\hippo at eyes] (0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
+ \hippo at part@draw[\hippo at pupils] (-0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
+ \hippo at part@draw[\hippo at pupils] (0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
\else% contour
- \fill[\hippo at eye] (-0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
- \fill[\hippo at eye] (0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
- \fill[\hippo at pupil] (-0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
- \fill[\hippo at pupil] (0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
+ \fill[\hippo at eyes] (-0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
+ \fill[\hippo at eyes] (0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
+ \fill[\hippo at pupils] (-0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
+ \fill[\hippo at pupils] (0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
\fi% contour
%
% Nose %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -190,6 +204,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/hippo/body}
+ \UseHook{tikzlings/body}
\csname hippohookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -228,10 +244,10 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\hippo[eye=red]
+%\hippo[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Pupil colour}}
-%\hippo[pupil=red]
+%\hippo[pupils=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Mouth colour}}
%\hippo[mouth=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-koalas.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-koalas.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-koalas.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-koalas}[2025/01/05 version v2.2 Drawing koalas in TikZ]
+\ProvidesPackage{tikzlings-koalas}[2025/03/23 version v2.3 Drawing koalas in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -28,6 +28,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/koala/foreground}
+ \UseHook{tikzlings/koala/foreground}
\csname koalahookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -40,6 +42,11 @@
\newif\ifkoala at contour
\newif\ifkoala at openmouth
+\NewHook{tikzlings/koala/background}
+\NewHook{tikzlings/koala/belly}
+\NewHook{tikzlings/koala/body}
+\NewHook{tikzlings/koala/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -55,8 +62,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \koala at body,
body = gray!75!white,
- eye/.store in = \koala at eye,
- eye = black,
+ eyes/.store in = \koala at eyes,
+ eyes = black,
+ eye/.forward to = /koala/eyes,
mouth/.store in = \koala at mouth,
mouth = \koala at body!40!black,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -123,6 +131,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/koala/background}
+ \UseHook{tikzlings/koala/background}
\csname koalahookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -153,6 +163,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/koala/belly}
+ \UseHook{tikzlings/koala/belly}
\csname koalahookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -180,8 +192,8 @@
\fill[\koala at body!50!black, even odd rule] (0.3331, 1.741) .. controls (0.3331, 1.685) and (0.1737, 1.685) .. (0.1737, 1.741) .. controls (0.1737, 1.848) and (0.3331, 1.848) .. (0.3331, 1.741) -- cycle (0.328, 1.741) .. controls (0.323, 1.705) and (0.184, 1.705) .. (0.179, 1.741) .. controls (0.184, 1.843) and (0.323, 1.843) .. (0.328, 1.741) -- cycle;
\fill[\koala at body!50!black, even odd rule] (-0.3331, 1.741) .. controls (-0.3331, 1.685) and (-0.1737, 1.685) .. (-0.1737, 1.741) .. controls (-0.1737, 1.848) and (-0.3331, 1.848) .. (-0.3331, 1.741) -- cycle (-0.328, 1.741) .. controls (-0.323, 1.705) and (-0.184, 1.705) .. (-0.179, 1.741) .. controls (-0.184, 1.843) and (-0.323, 1.843) .. (-0.328, 1.741) -- cycle;
\else% sleeping
- \koala at part@draw[\koala at eye] (-0.255, 1.74) circle[radius=0.08];
- \koala at part@draw[\koala at eye] (0.255, 1.74) circle[radius=0.08];
+ \koala at part@draw[\koala at eyes] (-0.255, 1.74) circle[radius=0.08];
+ \koala at part@draw[\koala at eyes] (0.255, 1.74) circle[radius=0.08];
\fill[white] (-0.27, 1.76) circle[radius=0.015];
\fill[white] (0.24, 1.76) circle[radius=0.015];
\fi% sleeping
@@ -208,6 +220,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/koala/body}
+ \UseHook{tikzlings/koala/body}
\csname koalahookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -246,7 +260,7 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\koala[eye=red]
+%\koala[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Mouth colour}}
%\koala[mouth=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-list.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-list.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-list.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -1,4 +1,4 @@
-\ProvidesPackage{tikzlings-list}[2025/01/05 version v2.2 Helper package for the tikzlings]
+\ProvidesPackage{tikzlings-list}[2025/03/23 version v2.3 Helper package for the tikzlings]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -19,6 +19,7 @@
cat / cats,
chicken / chickens,
coati / coatis,
+ dog / dogs,
elephant / elephants,
hippo / hippos,
koala / koalas,
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-marmots.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-marmots.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-marmots.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-marmots}[2025/01/05 version v2.2 Drawing marmots in TikZ]
+\ProvidesPackage{tikzlings-marmots}[2025/03/23 version v2.3 Drawing marmots in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -21,7 +21,6 @@
\tikzfading[name=marmot at blush,inner color=transparent!50,outer color=transparent!100]
-\RequirePackage{expl3}
\ExplSyntaxOn
\ifdefined\sys_rand_seed:
\pgfmathsetseed {\sys_rand_seed:}
@@ -45,6 +44,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/marmot/foreground}
+ \UseHook{tikzlings/foreground}
\csname marmothookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -62,6 +63,11 @@
\newif\ifmarmot at contour
\newif\ifmarmot at openmouth
+\NewHook{tikzlings/marmot/background}
+\NewHook{tikzlings/marmot/belly}
+\NewHook{tikzlings/marmot/body}
+\NewHook{tikzlings/marmot/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -77,8 +83,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \marmot at body,
body = brown,
- eye/.store in = \marmot at eye,
- eye = \marmot at body!50!black,
+ eyes/.store in = \marmot at eyes,
+ eyes = \marmot at body!50!black,
+ eye/.forward to = /marmot/eyes,
mouth/.store in = \marmot at mouth,
mouth = \marmot at body!50!black,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -92,9 +99,11 @@
whiskers/.code = \marmot at whiskerstrue
\def\marmot at whiskers{#1},
whiskers/.default = gray,
+ whisker/.forward to = /marmot/whiskers,
teeth/.code = \marmot at teethtrue
\def\marmot at teeth{#1},
teeth/.default = white,
+ tooth/.forward to = /marmot/teeth,
openmouth/.code = \marmot at openmouthtrue,
open mouth/.forward to = /marmot/openmouth,
3D/.code = \marmot at threeDtrue,
@@ -156,6 +165,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/marmot/background}
+ \UseHook{tikzlings/background}
\csname marmothookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -213,6 +224,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/marmot/belly}
+ \UseHook{tikzlings/belly}
\csname marmothookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -230,8 +243,8 @@
\marmot at part@draw[\marmot at body!50!black] (0,1.6) circle[radius=0.08];
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \marmot at part@draw[\marmot at eye] (-0.155,1.77) circle[radius=0.05];
- \marmot at part@draw[\marmot at eye] (0.155,1.77) circle[radius=0.05];
+ \marmot at part@draw[\marmot at eyes] (-0.155,1.77) circle[radius=0.05];
+ \marmot at part@draw[\marmot at eyes] (0.155,1.77) circle[radius=0.05];
%
% Mouth %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifmarmot at openmouth
@@ -272,6 +285,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/marmot/body}
+ \UseHook{tikzlings/body}
\csname marmothookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -310,7 +325,7 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\marmot[eye=red]
+%\marmot[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Mouth colour}}
%\marmot[mouth=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-meerkats.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-meerkats.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-meerkats.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-meerkats}[2025/01/05 version v2.2 Drawing meerkats in TikZ]
+\ProvidesPackage{tikzlings-meerkats}[2025/03/23 version v2.3 Drawing meerkats in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/meerkat/foreground}
+ \UseHook{tikzlings/foreground}
\csname meerkathookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -35,6 +37,11 @@
\newif\ifmeerkat at contour
\newif\ifmeerkat at openmouth
+\NewHook{tikzlings/meerkat/background}
+\NewHook{tikzlings/meerkat/belly}
+\NewHook{tikzlings/meerkat/body}
+\NewHook{tikzlings/meerkat/foreground}
+
\def\meerkat at shift{0}
\tikzset{
@@ -59,6 +66,7 @@
chest = \meerkat at body!45!white,
legs/.store in = \meerkat at legs,
legs = \meerkat at body,
+ leg/.forward to = /meerkat/legs,
tail/.store in = \meerkat at tail,
tail = \meerkat at body,
tip/.store in = \meerkat at tip,
@@ -65,11 +73,14 @@
tip = \meerkat at tail!50!black,
ears/.store in = \meerkat at ears,
ears = \meerkat at body!50!black,
- eye/.store in = \meerkat at eye,
- eye = black,
+ ear/.forward to = /meerkat/ears,
+ eyes/.store in = \meerkat at eyes,
+ eyes = black,
+ eye/.forward to = /meerkat/eyes,
eyecircles/.store in = \meerkat at eyecircles,
eyecircles = \meerkat at body!75!black,
eye circles/.forward to = /meerkat/eyecircles,
+ eyecircle/.forward to = /meerkat/eyecircles,
muzzle/.store in = \meerkat at muzzle,
muzzle = \meerkat at body!45!white,
nose/.store in = \meerkat at nose,
@@ -141,6 +152,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/meerkat/background}
+ \UseHook{tikzlings/background}
\csname meerkathookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -202,6 +215,8 @@
\fi % back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/meerkat/belly}
+ \UseHook{tikzlings/belly}
\csname meerkathookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -235,13 +250,15 @@
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\meerkat at part@draw[\meerkat at eyecircles,rotate=30] (0.75,1.7) ellipse [x radius=0.14, y radius=0.08];
\meerkat at part@draw[\meerkat at eyecircles,rotate=-30] (-0.75,1.7) ellipse [x radius=0.14, y radius=0.08];
- \meerkat at part@draw[\meerkat at eye] (0.18,1.86) circle [radius=0.055];
- \meerkat at part@draw[\meerkat at eye] (-0.18,1.86) circle [radius=0.055];
+ \meerkat at part@draw[\meerkat at eyes] (0.18,1.86) circle [radius=0.055];
+ \meerkat at part@draw[\meerkat at eyes] (-0.18,1.86) circle [radius=0.055];
\meerkat at part@draw[white] (0.165,1.88) circle [radius=0.01];
\meerkat at part@draw[white] (-0.195,1.88) circle [radius=0.01];
\fi % back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/meerkat/body}
+ \UseHook{tikzlings/body}
\csname meerkathookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -281,7 +298,7 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\meerkat[eye=red]
+%\meerkat[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Eye circle colour}}
%\meerkat[eyecircles=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-mice.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-mice.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-mice.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-mice}[2025/01/05 version v2.2 Drawing mice in TikZ]
+\ProvidesPackage{tikzlings-mice}[2025/03/23 version v2.3 Drawing mice in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/mouse/foreground}
+ \UseHook{tikzlings/foreground}
\csname mousehookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -36,6 +38,11 @@
\newif\ifmouse at back
\newif\ifmouse at contour
+\NewHook{tikzlings/mouse/background}
+\NewHook{tikzlings/mouse/belly}
+\NewHook{tikzlings/mouse/body}
+\NewHook{tikzlings/mouse/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -51,10 +58,12 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \mouse at body,
body = gray!90!white,
- eye/.store in = \mouse at eye,
- eye = \mouse at body!50!black,
+ eyes/.store in = \mouse at eyes,
+ eyes = \mouse at body!50!black,
+ eye/.forward to = /mouse/eyes,
whiskers/.store in = \mouse at whiskers,
whiskers = \mouse at body!50!black,
+ whisker/.forward to = /mouse/whiskers,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% options
@@ -64,6 +73,7 @@
rotatearms/.code = \mouse at rotatearmstrue
\def\mouse at rotatearms{#1},
rotate arms/.forward to = /mouse/rotatearms,
+ rotate arm/.forward to = /mouse/rotatearms,
rotatearms = 20,
leftstep/.code = \mouse at leftsteptrue,
left step/.forward to = /mouse/leftstep,
@@ -119,6 +129,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/mouse/background}
+ \UseHook{tikzlings/background}
\csname mousehookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -152,6 +164,8 @@
\mouse at part@draw[\mouse at body] (0.595, 0.92) .. controls (0.595, 0.26) and (0.355, 0.18) .. (0, 0.18) .. controls (-0.355, 0.18) and (-0.595, 0.26) .. (-0.595, 0.92) .. controls (-0.605, 1.58) and (-0.335, 2.11) .. (0, 2.11) .. controls (0.335, 2.11) and (0.605, 1.58) .. (0.595, 0.92) -- cycle;
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/mouse/belly}
+ \UseHook{tikzlings/belly}
\csname mousehookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -186,12 +200,14 @@
\mouse at part@draw[\mouse at body!50!black] (0, 1.248) circle[radius=0.09];
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \mouse at part@draw[\mouse at eye] (0.23, 1.68) circle[radius=0.05];
- \mouse at part@draw[\mouse at eye] (-0.23, 1.68) circle[radius=0.05];
+ \mouse at part@draw[\mouse at eyes] (0.23, 1.68) circle[radius=0.05];
+ \mouse at part@draw[\mouse at eyes] (-0.23, 1.68) circle[radius=0.05];
%
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/mouse/body}
+ \UseHook{tikzlings/body}
\csname mousehookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -230,7 +246,7 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\mouse[eye=red]
+%\mouse[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Whiskers colour}}
%\mouse[whiskers=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-moles.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-moles.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-moles.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -1,4 +1,4 @@
- % !TeX root = ./examples/mole.tex
+ % !TeX root = ./examples/moles.tex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%% This package is part of the TikZlings package
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-moles}[2025/01/05 version v2.2 Drawing moles in TikZ]
+\ProvidesPackage{tikzlings-moles}[2025/03/23 version v2.3 Drawing moles in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/moles/foreground}
+ \UseHook{tikzlings/foreground}
\csname moleshookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -36,6 +38,11 @@
\newif\ifmoles at contour
\newif\ifmoles at openmouth
+\NewHook{tikzlings/moles/background}
+\NewHook{tikzlings/moles/belly}
+\NewHook{tikzlings/moles/body}
+\NewHook{tikzlings/moles/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -51,12 +58,15 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \moles at body,
body = gray,
- eye/.store in = \moles at eye,
- eye = \moles at body!60!black,
+ eyes/.store in = \moles at eyes,
+ eyes = \moles at body!60!black,
+ eye/.forward to = /moles/eyes,
feet/.store in = \moles at feet,
feet = red!20!white!50!brown,
+ foot/.forward to = /moles/feet,
hands/.store in = \moles at hands,
hands = red!20!white!50!brown,
+ hand/.forward to = /moles/hands,
muzzle/.store in = \moles at muzzle,
muzzle = red!20!white!50!brown,
mouth/.store in = \moles at mouth,
@@ -77,7 +87,7 @@
contour/.code = \moles at contourtrue
\def\moles at contour{#1}
\def\moles at mouth{#1}
- \def\moles at eye{#1},
+ \def\moles at eyes{#1},
contour/.default = black,
outline/.forward to = /moles/contour,
}
@@ -124,6 +134,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/moles/background}
+ \UseHook{tikzlings/background}
\csname moleshookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -161,6 +173,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/moles/belly}
+ \UseHook{tikzlings/belly}
\csname moleshookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -190,11 +204,11 @@
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifmoles at threeD
- \fill[\moles at eye] (-0.165,1.79) ellipse[x radius=0.055, y radius=0.015, rotate=-15];
- \fill[\moles at eye!50!black] (0.165,1.79) ellipse[x radius=0.055, y radius=0.015, rotate=15];
+ \fill[\moles at eyes] (-0.165,1.79) ellipse[x radius=0.055, y radius=0.015, rotate=-15];
+ \fill[\moles at eyes!50!black] (0.165,1.79) ellipse[x radius=0.055, y radius=0.015, rotate=15];
\else% 3D
- \fill[\moles at eye] (-0.165,1.79) ellipse[x radius=0.055, y radius=0.015, rotate=-15];
- \fill[\moles at eye] (0.165,1.79) ellipse[x radius=0.055, y radius=0.015, rotate=15];
+ \fill[\moles at eyes] (-0.165,1.79) ellipse[x radius=0.055, y radius=0.015, rotate=-15];
+ \fill[\moles at eyes] (0.165,1.79) ellipse[x radius=0.055, y radius=0.015, rotate=15];
\fi% 3D
%
% Mouth %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -207,6 +221,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/moles/body}
+ \UseHook{tikzlings/body}
\csname moleshookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -246,7 +262,7 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\moles[eye=red]
+%\moles[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Muzzle colour}}
%\moles[muzzle=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-owls.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-owls.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-owls.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-owls}[2025/01/05 version v2.2 Draw owls in TikZ]
+\ProvidesPackage{tikzlings-owls}[2025/03/23 version v2.3 Draw owls in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/owl/foreground}
+ \UseHook{tikzlings/foreground}
\csname owlhookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -33,6 +35,11 @@
\newif\ifowl at back
\newif\ifowl at contour
+\NewHook{tikzlings/owl/background}
+\NewHook{tikzlings/owl/belly}
+\NewHook{tikzlings/owl/body}
+\NewHook{tikzlings/owl/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -48,14 +55,17 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \owl at body,
body = brown!70!black,
- eye/.store in = \owl at eye,
- eye = white!90!gray,
- pupil/.store in = \owl at pupil,
- pupil = brown!30!black,
+ eyes/.store in = \owl at eyes,
+ eyes = white!90!gray,
+ eye/.forward to = /owl/eyes,
+ pupils/.store in = \owl at pupils,
+ pupils = brown!30!black,
+ pupil/.forward to = /owl/pupils,
bill/.store in = \owl at bill,
bill = orange,
feet/.store in = \owl at feet,
feet = orange,
+ foot/.forward to = /owl/feet,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% options
@@ -111,6 +121,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/owl/background}
+ \UseHook{tikzlings/background}
\csname owlhookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -140,6 +152,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/owl/belly}
+ \UseHook{tikzlings/belly}
\csname owlhookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -149,14 +163,14 @@
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\unless\ifowl at back
\ifowl at contour
- \owl at part@draw[\owl at eye] (-0.28, 1.6) circle[radius=0.22];
- \owl at part@draw[\owl at eye] (0.28, 1.6) circle[radius=0.22];
+ \owl at part@draw[\owl at eyes] (-0.28, 1.6) circle[radius=0.22];
+ \owl at part@draw[\owl at eyes] (0.28, 1.6) circle[radius=0.22];
\else% contour
- \fill[\owl at eye] (-0.28, 1.6) circle[radius=0.22];
- \fill[\owl at eye] (0.28, 1.6) circle[radius=0.22];
+ \fill[\owl at eyes] (-0.28, 1.6) circle[radius=0.22];
+ \fill[\owl at eyes] (0.28, 1.6) circle[radius=0.22];
\fi% contour
- \owl at part@draw[\owl at pupil] (-0.28, 1.6) circle[radius=0.15];
- \owl at part@draw[\owl at pupil] (0.28, 1.6) circle[radius=0.15];
+ \owl at part@draw[\owl at pupils] (-0.28, 1.6) circle[radius=0.15];
+ \owl at part@draw[\owl at pupils] (0.28, 1.6) circle[radius=0.15];
\owl at part@draw[white] (0.25, 1.64) circle[radius=0.03];
\owl at part@draw[white] (-0.31, 1.64) circle[radius=0.03];
\fi% back
@@ -177,6 +191,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/owl/body}
+ \UseHook{tikzlings/body}
\csname owlhookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -215,10 +231,10 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\owl[eye=red]
+%\owl[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Pupil colour}}
-%\owl[pupil=red]
+%\owl[pupils=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Bill colour}}
%\owl[bill=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-pandas.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-pandas.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-pandas.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-pandas}[2025/01/05 version v2.2 Drawing pandas in TikZ]
+\ProvidesPackage{tikzlings-pandas}[2025/03/23 version v2.3 Drawing pandas in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/panda/foreground}
+ \UseHook{tikzlings/foreground}
\csname pandahookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -34,6 +36,11 @@
\newif\ifpanda at contour
\newif\ifpanda at openmouth
+\NewHook{tikzlings/panda/background}
+\NewHook{tikzlings/panda/belly}
+\NewHook{tikzlings/panda/body}
+\NewHook{tikzlings/panda/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -49,10 +56,12 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \panda at body,
body = white!90!gray,
- eye/.store in = \panda at eye,
- eye = white,
- pupil/.store in = \panda at pupil,
- pupil = black,
+ eyes/.store in = \panda at eyes,
+ eyes = white,
+ eye/.forward to = /panda/eyes,
+ pupils/.store in = \panda at pupils,
+ pupils = black,
+ pupil/.forward to = /panda/pupils,
mouth/.store in = \panda at mouth,
mouth = black,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -113,6 +122,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/panda/background}
+ \UseHook{tikzlings/background}
\csname pandahookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -126,6 +137,8 @@
\panda at part@draw[\panda at body] (0,0.78) ellipse[x radius=0.57, y radius=0.65];
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/panda/belly}
+ \UseHook{tikzlings/belly}
\csname pandahookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -156,10 +169,10 @@
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\panda at part@draw[black] (0.3732, 1.6905) .. controls (0.3498, 1.767) and (0.2032, 1.8059) .. (0.0944, 1.7715) .. controls (-0.0145, 1.7371) and (0.173, 1.5479) .. (0.2508, 1.5443) .. controls (0.3286, 1.5407) and (0.3965, 1.614) .. (0.3732, 1.6905) -- cycle;
\panda at part@draw[black] (-0.3732, 1.6905) .. controls (-0.3498, 1.767) and (-0.2032, 1.8059) .. (-0.0944, 1.7715) .. controls (0.0145, 1.7371) and (-0.173, 1.5479) .. (-0.2508, 1.5443) .. controls (-0.3286, 1.5407) and (-0.3965, 1.614) .. (-0.3732, 1.6905) -- cycle;
- \panda at part@draw[\panda at eye] (-0.18, 1.7) circle[radius=0.05];
- \panda at part@draw[\panda at eye] (0.18, 1.7) circle[radius=0.05];
- \panda at part@draw[\panda at pupil] (0.17, 1.695) circle[radius=0.02];
- \panda at part@draw[\panda at pupil] (-0.17, 1.695) circle[radius=0.02];
+ \panda at part@draw[\panda at eyes] (-0.18, 1.7) circle[radius=0.05];
+ \panda at part@draw[\panda at eyes] (0.18, 1.7) circle[radius=0.05];
+ \panda at part@draw[\panda at pupils] (0.17, 1.695) circle[radius=0.02];
+ \panda at part@draw[\panda at pupils] (-0.17, 1.695) circle[radius=0.02];
%
% Mouth %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifpanda at openmouth
@@ -174,6 +187,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/panda/body}
+ \UseHook{tikzlings/body}
\csname pandahookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -212,10 +227,10 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\panda[eye=red]
+%\panda[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Pupil colour}}
-%\panda[pupil=red]
+%\panda[pupils=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Mouth colour}}
%\panda[mouth=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-penguins.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-penguins.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-penguins.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -1,4 +1,4 @@
- % !TeX root = ./examples/pingu.tex
+ % !TeX root = ./examples/penguin.tex
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%
%% This package is part of the TikZlings package
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-penguins}[2025/01/05 version v2.2 Draw penguins in TikZ]
+\ProvidesPackage{tikzlings-penguins}[2025/03/23 version v2.3 Draw penguins in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/penguin/foreground}
+ \UseHook{tikzlings/foreground}
\csname penguinhookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -33,6 +35,11 @@
\newif\ifpenguin at back
\newif\ifpenguin at contour
+\NewHook{tikzlings/penguin/background}
+\NewHook{tikzlings/penguin/belly}
+\NewHook{tikzlings/penguin/body}
+\NewHook{tikzlings/penguin/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -52,12 +59,15 @@
belly = white!95!black,
feet/.store in = \penguin at feet,
feet = yellow!50!orange,
+ foot/.forward to = /penguin/feet,
bill/.store in = \penguin at bill,
bill = orange,
- eye/.store in = \penguin at eye,
- eye = white!95!black,
- pupil/.store in = \penguin at pupil,
- pupil = black,
+ eyes/.store in = \penguin at eyes,
+ eyes = white!95!black,
+ eye/.forward to = /penguin/eyes,
+ pupils/.store in = \penguin at pupils,
+ pupils = black,
+ pupil/.forward to = /penguin/pupils,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% options
@@ -113,6 +123,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/penguin/background}
+ \UseHook{tikzlings/background}
\csname penguinhookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -135,6 +147,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/penguin/belly}
+ \UseHook{tikzlings/belly}
\csname penguinhookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -147,15 +161,15 @@
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\unless\ifpenguin at back
\ifpenguin at contour
- \penguin at part@draw[\penguin at eye] (-0.175,1.64) ellipse[x radius=0.1, y radius=0.15, rotate=-10];
- \penguin at part@draw[\penguin at pupil] (-0.145,1.625) ellipse[x radius=0.0357, y radius=0.0714, rotate=-3];
- \penguin at part@draw[\penguin at eye] (0.175,1.64) ellipse[x radius=0.1, y radius=0.15, rotate=10];
- \penguin at part@draw[\penguin at pupil] (0.145,1.625) ellipse[x radius=0.0357, y radius=0.0714, rotate=3];
+ \penguin at part@draw[\penguin at eyes] (-0.175,1.64) ellipse[x radius=0.1, y radius=0.15, rotate=-10];
+ \penguin at part@draw[\penguin at pupils] (-0.145,1.625) ellipse[x radius=0.0357, y radius=0.0714, rotate=-3];
+ \penguin at part@draw[\penguin at eyes] (0.175,1.64) ellipse[x radius=0.1, y radius=0.15, rotate=10];
+ \penguin at part@draw[\penguin at pupils] (0.145,1.625) ellipse[x radius=0.0357, y radius=0.0714, rotate=3];
\else% contour
- \fill[\penguin at eye] (-0.175,1.64) ellipse[x radius=0.1, y radius=0.15, rotate=-10];
- \fill[\penguin at pupil] (-0.145,1.625) ellipse[x radius=0.0357, y radius=0.0714, rotate=-3];
- \fill[\penguin at eye] (0.175,1.64) ellipse[x radius=0.1, y radius=0.15, rotate=10];
- \fill[\penguin at pupil] (0.145,1.625) ellipse[x radius=0.0357, y radius=0.0714, rotate=3];
+ \fill[\penguin at eyes] (-0.175,1.64) ellipse[x radius=0.1, y radius=0.15, rotate=-10];
+ \fill[\penguin at pupils] (-0.145,1.625) ellipse[x radius=0.0357, y radius=0.0714, rotate=-3];
+ \fill[\penguin at eyes] (0.175,1.64) ellipse[x radius=0.1, y radius=0.15, rotate=10];
+ \fill[\penguin at pupils] (0.145,1.625) ellipse[x radius=0.0357, y radius=0.0714, rotate=3];
\fi% contour
\fi% back
%
@@ -165,6 +179,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/penguin/body}
+ \UseHook{tikzlings/body}
\csname penguinhookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -203,10 +219,10 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\penguin[eye=red]
+%\penguin[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Pupil colour}}
-%\penguin[pupil=red]
+%\penguin[pupils=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Bill colour}}
%\penguin[bill=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-pigs.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-pigs.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-pigs.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-pigs}[2025/01/05 version v2.2 Drawing pigs in TikZ]
+\ProvidesPackage{tikzlings-pigs}[2025/03/23 version v2.3 Drawing pigs in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -25,6 +25,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/pig/foreground}
+ \UseHook{tikzlings/foreground}
\csname pighookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -35,6 +37,11 @@
\newif\ifpig at contour
\newif\ifpig at openmouth
+\NewHook{tikzlings/pig/background}
+\NewHook{tikzlings/pig/belly}
+\NewHook{tikzlings/pig/body}
+\NewHook{tikzlings/pig/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -50,8 +57,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \pig at body,
body = piglight,
- eye/.store in = \pig at eye,
- eye = gray,
+ eyes/.store in = \pig at eyes,
+ eyes = gray,
+ eye/.forward to = /pig/eyes,
tail/.store in = \pig at tail,
tail = pig at bodysat22,
mouth/.store in = \pig at mouth,
@@ -128,6 +136,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/pig/background}
+ \UseHook{tikzlings/background}
\csname pighookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -146,6 +156,8 @@
\pig at part@draw[\pig at body] ( 0.6, 0.8 ) .. controls ( 0.6 , 0.4) and ( 0.35, 0.16) .. ( 0.0, 0.16) .. controls (-0.35, 0.16) and (-0.6 , 0.4) .. (-0.6, 0.8 ) .. controls (-0.6 , 1.3) and (-0.35, 1.5) .. ( 0.0, 1.5) .. controls ( 0.35, 1.5) and ( 0.6 , 1.3) .. ( 0.6, 0.75) -- cycle;
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/pig/belly}
+ \UseHook{tikzlings/belly}
\csname pighookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -162,8 +174,8 @@
\unless\ifpig at back
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \pig at part@draw[\pig at eye] (-0.09, 1.82) circle[radius=0.02];
- \pig at part@draw[\pig at eye] ( 0.09, 1.82) circle[radius=0.02];
+ \pig at part@draw[\pig at eyes] (-0.09, 1.82) circle[radius=0.02];
+ \pig at part@draw[\pig at eyes] ( 0.09, 1.82) circle[radius=0.02];
%
% Nose %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\pig at part@draw[pig at bodysat22] (0, 1.62) ellipse[x radius=0.18, y radius=0.14];
@@ -195,6 +207,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/pig/body}
+ \UseHook{tikzlings/body}
\csname pighookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -233,7 +247,7 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\pig[eye=red]
+%\pig[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Tail colour}}
%\pig[tail=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-rhinos.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-rhinos.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-rhinos.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-rhinos}[2025/01/05 version v2.2 Drawing rhinos in TikZ]
+\ProvidesPackage{tikzlings-rhinos}[2025/03/23 version v2.3 Drawing rhinos in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/rhino/foreground}
+ \UseHook{tikzlings/foreground}
\csname rhinohookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -34,6 +36,11 @@
\newif\ifrhino at contour
\newif\ifrhino at openmouth
+\NewHook{tikzlings/rhino/background}
+\NewHook{tikzlings/rhino/belly}
+\NewHook{tikzlings/rhino/body}
+\NewHook{tikzlings/rhino/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -51,10 +58,13 @@
body = gray!55!white,
toes/.store in = \rhino at toes,
toes = \rhino at body,
- eye/.store in = \rhino at eye,
- eye = white,
- pupil/.store in = \rhino at pupil,
- pupil = black,
+ toe/.forward to = /rhino/toes,
+ eyes/.store in = \rhino at eyes,
+ eyes = white,
+ eye/.forward to = /rhino/eyes,
+ pupils/.store in = \rhino at pupils,
+ pupils = black,
+ pupil/.forward to = /rhino/eyes,
mouth/.store in = \rhino at mouth,
mouth = \rhino at body!50!black,
horn/.store in = \rhino at horn,
@@ -118,6 +128,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/rhino/background}
+ \UseHook{tikzlings/background}
\csname rhinohookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -140,6 +152,8 @@
\rhino at part@draw[\rhino at body] ( 0.55, 0.8 ) .. controls ( 0.55 , 0.4) and ( 0.35, 0.19) .. ( 0.0, 0.19) .. controls (-0.35, 0.19) and (-0.55 , 0.4) .. (-0.55, 0.8 ) .. controls (-0.55 , 1.3) and (-0.35, 1.65) .. ( 0.0, 1.65) .. controls ( 0.35, 1.65) and ( 0.55 , 1.3) .. ( 0.55, 0.75) -- cycle;
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/rhino/belly}
+ \UseHook{tikzlings/belly}
\csname rhinohookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -157,15 +171,15 @@
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifrhino at contour
- \rhino at part@draw[\rhino at eye] (-0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
- \rhino at part@draw[\rhino at eye] (0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
- \rhino at part@draw[\rhino at pupil] (-0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
- \rhino at part@draw[\rhino at pupil] (0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
+ \rhino at part@draw[\rhino at eyes] (-0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
+ \rhino at part@draw[\rhino at eyes] (0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
+ \rhino at part@draw[\rhino at pupils] (-0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
+ \rhino at part@draw[\rhino at pupils] (0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
\else% contour
- \fill[\rhino at eye] (-0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
- \fill[\rhino at eye] (0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
- \fill[\rhino at pupil] (-0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
- \fill[\rhino at pupil] (0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
+ \fill[\rhino at eyes] (-0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
+ \fill[\rhino at eyes] (0.11, 1.83) ellipse[x radius=0.08, y radius=0.12];
+ \fill[\rhino at pupils] (-0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
+ \fill[\rhino at pupils] (0.105, 1.78) ellipse[x radius=0.04, y radius=0.07];
\fi% contour
%
% Nose %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -194,6 +208,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/rhino/body}
+ \UseHook{tikzlings/body}
\csname rhinohookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -232,10 +248,10 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\rhino[eye=red]
+%\rhino[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Pupil colour}}
-%\rhino[pupil=red]
+%\rhino[pupils=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Mouth colour}}
%\rhino[mouth=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-sheep.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-sheep.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-sheep.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-sheep}[2025/01/05 version v2.2 Drawing sheep in TikZ]
+\ProvidesPackage{tikzlings-sheep}[2025/03/23 version v2.3 Drawing sheep in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -28,6 +28,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/sheep/foreground}
+ \UseHook{tikzlings/foreground}
\csname sheephookforeground\endcsname
\csname tikzlinghookforeground\endcsname
}
@@ -38,6 +40,11 @@
\newif\ifsheep at back
\newif\ifsheep at contour
+\NewHook{tikzlings/sheep/background}
+\NewHook{tikzlings/sheep/belly}
+\NewHook{tikzlings/sheep/body}
+\NewHook{tikzlings/sheep/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -53,8 +60,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \sheep at body,
body = brown!50!darkgray!97!yellow!50!darkgray,
- eye/.store in = \sheep at eye,
- eye = sheep at bright!50!black,
+ eyes/.store in = \sheep at eyes,
+ eyes = sheep at bright!50!black,
+ eye/.forward to = /sheep/eyes,
nose/.store in = \sheep at nose,
nose = sheep at bright!50!black,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -131,6 +139,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/sheep/background}
+ \UseHook{tikzlings/background}
\csname sheephookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -150,6 +160,8 @@
\sheep at part@draw[\sheep at body,decorate,decoration={bumps,amplitude=\decoscalefactor*2.5pt,segment length=\scalingfactor*10pt}] (0.595, 0.92) .. controls (0.595, 0.26) and (0.355, 0.18) .. (0, 0.18) .. controls (-0.355, 0.18) and (-0.595, 0.26) .. (-0.595, 0.92) .. controls (-0.605, 1.58) and (-0.335, 2.11) .. (0, 2.11) .. controls (0.335, 2.11) and (0.605, 1.58) .. (0.595, 0.92) -- cycle;
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/sheep/belly}
+ \UseHook{tikzlings/belly}
\csname sheephookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -181,8 +193,8 @@
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\unless\ifsheep at back
- \sheep at part@draw[\sheep at eye] (0.2, 1.66) circle[radius=0.06];
- \sheep at part@draw[\sheep at eye] (-0.2, 1.66) circle[radius=0.06];
+ \sheep at part@draw[\sheep at eyes] (0.2, 1.66) circle[radius=0.06];
+ \sheep at part@draw[\sheep at eyes] (-0.2, 1.66) circle[radius=0.06];
\fi% back
%
% Nose %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -210,6 +222,8 @@
\fi% end showing details only for front
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/sheep/body}
+ \UseHook{tikzlings/body}
\csname sheephookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -248,7 +262,7 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\sheep[eye=red]
+%\sheep[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Nose colour}}
%\sheep[nose=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-sloths.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-sloths.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-sloths.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-sloths}[2025/01/05 version v2.2 Drawing sloths in TikZ]
+\ProvidesPackage{tikzlings-sloths}[2025/03/23 version v2.3 Drawing sloths in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -26,6 +26,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/sloth/foreground}
+ \UseHook{tikzlings/foreground}
\csname slothhookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -37,6 +39,11 @@
\newif\ifsloth at contour
\newif\ifsloth at openmouth
+\NewHook{tikzlings/sloth/background}
+\NewHook{tikzlings/sloth/belly}
+\NewHook{tikzlings/sloth/body}
+\NewHook{tikzlings/sloth/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -52,10 +59,12 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \sloth at body,
body = slothcol,
- eye/.store in = \sloth at eye,
- eye = black,
- eyelid/.store in = \sloth at eyelid,
- eyelid = sloth at bright10!50!white,
+ eyes/.store in = \sloth at eyes,
+ eyes = black,
+ eye/.forward to = /sloth/eyes,
+ eyelids/.store in = \sloth at eyelids,
+ eyelids = sloth at bright10!50!white,
+ eyelid/.forward to = /sloth/eyelids,
mouth/.store in = \sloth at mouth,
mouth = sloth at bright10!40!black,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -71,7 +80,7 @@
contour/.code = \sloth at contourtrue
\def\sloth at contour{#1}
\def\sloth at mouth{#1}
- \def\sloth at eyelid{#1},
+ \def\sloth at eyelids{#1},
contour/.default = black,
outline/.forward to = /sloth/contour,
}
@@ -130,6 +139,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/sloth/background}
+ \UseHook{tikzlings/background}
\csname slothhookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -160,6 +171,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/sloth/belly}
+ \UseHook{tikzlings/belly}
\csname slothhookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -186,23 +199,23 @@
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifsloth at sleeping
- \fill[\sloth at eyelid] (0.195, 1.705) rectangle ++(0.005, 0.02);
- \fill[\sloth at eyelid,rotate around={22:(0.195, 1.76)}] (0.195, 1.705) rectangle ++(0.005, 0.02);
- \fill[\sloth at eyelid,rotate around={44:(0.195, 1.76)}] (0.195, 1.701) rectangle ++(0.005, 0.02);
- \fill[\sloth at eyelid,rotate around={-22:(0.195, 1.76)}] (0.195, 1.705) rectangle ++(0.005, 0.02);
- \fill[\sloth at eyelid,rotate around={-44:(0.195, 1.76)}] (0.195, 1.705) rectangle ++(0.005, 0.02);
+ \fill[\sloth at eyelids] (0.195, 1.705) rectangle ++(0.005, 0.02);
+ \fill[\sloth at eyelids,rotate around={22:(0.195, 1.76)}] (0.195, 1.705) rectangle ++(0.005, 0.02);
+ \fill[\sloth at eyelids,rotate around={44:(0.195, 1.76)}] (0.195, 1.701) rectangle ++(0.005, 0.02);
+ \fill[\sloth at eyelids,rotate around={-22:(0.195, 1.76)}] (0.195, 1.705) rectangle ++(0.005, 0.02);
+ \fill[\sloth at eyelids,rotate around={-44:(0.195, 1.76)}] (0.195, 1.705) rectangle ++(0.005, 0.02);
%
- \fill[\sloth at eyelid] (-0.195, 1.705) rectangle ++(0.005, 0.02);
- \fill[\sloth at eyelid,rotate around={22:(-0.195, 1.76)}] (-0.195, 1.705) rectangle ++(0.005, 0.02);
- \fill[\sloth at eyelid,rotate around={44:(-0.195, 1.76)}] (-0.195, 1.705) rectangle ++(0.005, 0.02);
- \fill[\sloth at eyelid,rotate around={-22:(-0.195, 1.76)}] (-0.195, 1.705) rectangle ++(0.005, 0.02);
- \fill[\sloth at eyelid,rotate around={-44:(-0.195, 1.76)}] (-0.195, 1.701) rectangle ++(0.005, 0.02);
+ \fill[\sloth at eyelids] (-0.195, 1.705) rectangle ++(0.005, 0.02);
+ \fill[\sloth at eyelids,rotate around={22:(-0.195, 1.76)}] (-0.195, 1.705) rectangle ++(0.005, 0.02);
+ \fill[\sloth at eyelids,rotate around={44:(-0.195, 1.76)}] (-0.195, 1.705) rectangle ++(0.005, 0.02);
+ \fill[\sloth at eyelids,rotate around={-22:(-0.195, 1.76)}] (-0.195, 1.705) rectangle ++(0.005, 0.02);
+ \fill[\sloth at eyelids,rotate around={-44:(-0.195, 1.76)}] (-0.195, 1.701) rectangle ++(0.005, 0.02);
%
- \sloth at part@draw[\sloth at eyelid] (0.237, 1.743) .. controls (0.237, 1.712) and (0.157, 1.712) .. (0.157, 1.743) .. controls (0.157, 1.802) and (0.237, 1.802) .. (0.237, 1.743) -- cycle;
- \sloth at part@draw[\sloth at eyelid] (-0.237, 1.743) .. controls (-0.237, 1.712) and (-0.157, 1.712) .. (-0.157, 1.743) .. controls (-0.157, 1.802) and (-0.237, 1.802) .. (-0.237, 1.743) -- cycle;
+ \sloth at part@draw[\sloth at eyelids] (0.237, 1.743) .. controls (0.237, 1.712) and (0.157, 1.712) .. (0.157, 1.743) .. controls (0.157, 1.802) and (0.237, 1.802) .. (0.237, 1.743) -- cycle;
+ \sloth at part@draw[\sloth at eyelids] (-0.237, 1.743) .. controls (-0.237, 1.712) and (-0.157, 1.712) .. (-0.157, 1.743) .. controls (-0.157, 1.802) and (-0.237, 1.802) .. (-0.237, 1.743) -- cycle;
\else% sleeping
- \sloth at part@draw[\sloth at eye] (0.193,1.75) circle[radius=0.04];
- \sloth at part@draw[\sloth at eye] (-0.193,1.75) circle[radius=0.04];
+ \sloth at part@draw[\sloth at eyes] (0.193,1.75) circle[radius=0.04];
+ \sloth at part@draw[\sloth at eyes] (-0.193,1.75) circle[radius=0.04];
\fill[white] (-0.2 ,1.765) circle[radius=0.006];
\fill[white] ( 0.186,1.765) circle[radius=0.006];
\fi% sleeping
@@ -262,6 +275,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/sloth/body}
+ \UseHook{tikzlings/body}
\csname slothhookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -300,7 +315,7 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\sloth[eye=red]
+%\sloth[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Mouth colour}}
%\sloth[mouth=red]
@@ -316,7 +331,7 @@
%\sloth[sleeping]
%\end{tcblisting}
%\begin{tcblisting}{title={Eyelid colour}}
-%\sloth[sleeping,eyelid=red]
+%\sloth[sleeping,eyelids=red]
%\end{tcblisting}
%
%To view the sloth from behind:
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-snowmen.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-snowmen.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-snowmen.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-snowmen}[2025/01/05 version v2.2 Draw snowmen in TikZ]
+\ProvidesPackage{tikzlings-snowmen}[2025/03/23 version v2.3 Draw snowmen in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -20,10 +20,16 @@
\newcommand*{\snowman}[1][]{%
\begin{scope}%
\tikzset{/snowman/.cd,#1}%
- \snowman at draw%
+ \ifsnowman at globalwarming
+ \snowman at drawpuddle%
+ \else
+ \snowman at draw%
+ \fi
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/snowman/foreground}
+ \UseHook{tikzlings/foreground}
\csname snowmanhookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -35,6 +41,11 @@
\newif\ifsnowman at contour
\newif\ifsnowman at openmouth
+\NewHook{tikzlings/snowman/background}
+\NewHook{tikzlings/snowman/belly}
+\NewHook{tikzlings/snowman/body}
+\NewHook{tikzlings/snowman/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -50,8 +61,9 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \snowman at body,
body = white!95!black,
- eye/.store in = \snowman at eye,
- eye = black,
+ eyes/.store in = \snowman at eyes,
+ eyes = black,
+ eye/.forward to = /snowman/eyes,
nose/.store in = \snowman at nose,
nose = orange,
mouth/.store in = \snowman at mouth,
@@ -58,6 +70,7 @@
mouth = black,
buttons/.store in = \snowman at buttons,
buttons = black,
+ button/.forward to = /snowman/buttons,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% options
@@ -78,6 +91,12 @@
outline/.forward to = /snowman/contour,
}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% normal snowman
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
\def\snowman at draw{%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -120,96 +139,157 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/snowman/background}
+ \UseHook{tikzlings/background}
\csname snowmanhookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
- % Global warming %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \ifsnowman at globalwarming
+ % Arms %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \snowman at part@draw[\snowman at body] (0.5,1.1) ellipse[x radius=0.3, y radius=0.12, rotate=-50];
+ \snowman at part@draw[\snowman at body] (-0.5,1.1) ellipse[x radius=0.3, y radius=0.12, rotate=50];
+ %
+ % Body + Head %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \snowman at part@draw[\snowman at body] (0,0.5) ellipse[x radius=0.6, y radius=0.5];
+ \snowman at part@draw[\snowman at body] (0,1.1) ellipse[x radius=0.5, y radius=0.4];
+ \snowman at part@draw[\snowman at body] (0,1.7) circle[radius=0.4];
+ %
+ % adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/snowman/belly}
+ \UseHook{tikzlings/belly}
+ \csname snowmanhookbelly\endcsname
+ \csname tikzlinghookbelly\endcsname
+ %
+ % Show details only from the front %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \unless\ifsnowman at back
%
- % Puddle %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \ifsnowman at contour
- \draw[\snowman at contour,fill=white,line width=\scalingfactor*0.4pt] (0,1.15) ellipse[x radius=1.6,y radius=1.15];
- \else% contour
- \fill[\snowman at globalwarming] (0,1.15) ellipse[x radius=1.6,y radius=1.15];
- \fi% contour
+ % Mouth% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \fill[\snowman at mouth] (0,1.5) circle[radius=0.016];
+ \fill[\snowman at mouth] (0.04,1.507) circle[radius=0.016];
+ \fill[\snowman at mouth] (-0.04,1.507) circle[radius=0.016];
+ \fill[\snowman at mouth] (0.08,1.522) circle[radius=0.016];
+ \fill[\snowman at mouth] (-0.08,1.522) circle[radius=0.016];
+ \fill[\snowman at mouth] (0.12,1.543) circle[radius=0.016];
+ \fill[\snowman at mouth] (-0.12,1.543) circle[radius=0.016];
+ \ifsnowman at openmouth
+ \fill[\snowman at mouth] (0,1.57) circle[radius=0.016];
+ \fill[\snowman at mouth] (-0.04,1.565) circle[radius=0.016];
+ \fill[\snowman at mouth] (-0.08,1.56) circle[radius=0.016];
+ \fill[\snowman at mouth] (0.04,1.565) circle[radius=0.016];
+ \fill[\snowman at mouth] (0.08,1.56) circle[radius=0.016];
+ \fi
%
- % adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \csname snowmanhookbelly\endcsname
- \csname tikzlinghookbelly\endcsname
+ % Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \snowman at part@draw[\snowman at eyes] (-0.155,1.8) circle[radius=0.04];
+ \snowman at part@draw[\snowman at eyes] (0.155,1.8) circle[radius=0.04];
%
- % Mouth %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \fill[\snowman at mouth] (0,1.23) circle[radius=0.025];
- \fill[\snowman at mouth] (0.06,1.3) circle[radius=0.025];
- \fill[\snowman at mouth] (-0.06,1.27) circle[radius=0.025];
- \fill[\snowman at mouth] (0.09,1.37) circle[radius=0.025];
- \fill[\snowman at mouth] (-0.18,1.28) circle[radius=0.025];
- \fill[\snowman at mouth] (0.2,1.28) circle[radius=0.025];
- \fill[\snowman at mouth] (-0.25,1.2) circle[radius=0.025];
+ % Nose %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \snowman at part@draw[\snowman at nose] (0,1.72) arc [radius=0.05, start angle=90, end angle=270] (0,1.62) -- (0.15,1.64) -- (0,1.72);
%
- % Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \snowman at part@draw[\snowman at eye] (-0.5,1.75) circle[radius=0.06];
- \snowman at part@draw[\snowman at eye] (-0.1,1.55) circle[radius=0.06];
+ % Buttons %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \snowman at part@draw[\snowman at buttons] (0,1.15) circle[radius=0.04];
+ \snowman at part@draw[\snowman at buttons] (0,0.95) circle[radius=0.04];
+ \snowman at part@draw[\snowman at buttons] (0,0.75) circle[radius=0.04];
%
- % Nose %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \snowman at part@draw[\snowman at nose] (-0.6,1.4) -- (-0.8,1.42) -- (-0.6,1.54) (-0.6,1.4) arc[radius=0.07, start angle=-90, end angle=90];
- %
- % Buttons %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \snowman at part@draw[\snowman at buttons] (0.1,0.8) circle[radius=0.06];
- \snowman at part@draw[\snowman at buttons] (-0.15,0.55) circle[radius=0.06];
- \snowman at part@draw[\snowman at buttons] (0,0.25) circle[radius=0.06];
+ \fi% back
%
- % normal snowman %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \else% global warming
- %
- % Arms %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \snowman at part@draw[\snowman at body] (0.5,1.1) ellipse[x radius=0.3, y radius=0.12, rotate=-50];
- \snowman at part@draw[\snowman at body] (-0.5,1.1) ellipse[x radius=0.3, y radius=0.12, rotate=50];
- %
- % Body + Head %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \snowman at part@draw[\snowman at body] (0,0.5) ellipse[x radius=0.6, y radius=0.5];
- \snowman at part@draw[\snowman at body] (0,1.1) ellipse[x radius=0.5, y radius=0.4];
- \snowman at part@draw[\snowman at body] (0,1.7) circle[radius=0.4];
- %
- % adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \csname snowmanhookbelly\endcsname
- \csname tikzlinghookbelly\endcsname
- %
- % Show details only from the front %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \unless\ifsnowman at back
- %
- % Mouth% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \fill[\snowman at mouth] (0,1.5) circle[radius=0.016];
- \fill[\snowman at mouth] (0.04,1.507) circle[radius=0.016];
- \fill[\snowman at mouth] (-0.04,1.507) circle[radius=0.016];
- \fill[\snowman at mouth] (0.08,1.522) circle[radius=0.016];
- \fill[\snowman at mouth] (-0.08,1.522) circle[radius=0.016];
- \fill[\snowman at mouth] (0.12,1.543) circle[radius=0.016];
- \fill[\snowman at mouth] (-0.12,1.543) circle[radius=0.016];
- \ifsnowman at openmouth
- \fill[\snowman at mouth] (0,1.57) circle[radius=0.016];
- \fill[\snowman at mouth] (-0.04,1.565) circle[radius=0.016];
- \fill[\snowman at mouth] (-0.08,1.56) circle[radius=0.016];
- \fill[\snowman at mouth] (0.04,1.565) circle[radius=0.016];
- \fill[\snowman at mouth] (0.08,1.56) circle[radius=0.016];
- \fi
- %
- % Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \snowman at part@draw[\snowman at eye] (-0.155,1.8) circle[radius=0.04];
- \snowman at part@draw[\snowman at eye] (0.155,1.8) circle[radius=0.04];
- %
- % Nose %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \snowman at part@draw[\snowman at nose] (0,1.72) arc [radius=0.05, start angle=90, end angle=270] (0,1.62) -- (0.15,1.64) -- (0,1.72);
- %
- % Buttons %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \snowman at part@draw[\snowman at buttons] (0,1.15) circle[radius=0.04];
- \snowman at part@draw[\snowman at buttons] (0,0.95) circle[radius=0.04];
- \snowman at part@draw[\snowman at buttons] (0,0.75) circle[radius=0.04];
- %
- \fi% back
+ % adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/snowman/body}
+ \UseHook{tikzlings/body}
+ \csname snowmanhookbody\endcsname
+ \csname tikzlinghookbody\endcsname
%
- \fi% global warming
+}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% molten snowman
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\def\snowman at drawpuddle{
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
+ % minimal bounding box size
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \path (-0.75, 0.0) rectangle (0.75, 2.13);
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %
+ % store the current scale factor
+ % from https://github.com/samcarter/tikzlings/issues/3#issuecomment-461373494
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \pgfgettransformentries{\tmpscaleA}{\tmpscaleB}{\tmpscaleC}{\tmpscaleD}{\tmp}{\tmp}%
+ \pgfmathsetmacro{\scalingfactor}{sqrt(abs(\tmpscaleA*\tmpscaleD-\tmpscaleB*\tmpscaleC))*sqrt(abs((\pgf at xx/1cm)*(\pgf at yy/1cm)-(\pgf at xy/1cm)*(\pgf at yx/1cm)))}%
+ \pgfmathsetmacro{\xscalefactor}{\tmpscaleA}
+ \pgfmathsetmacro{\yscalefactor}{\tmpscaleD}
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %
+ % switch between 2D, 3D and contours, from
+ % https://chat.stackexchange.com/transcript/message/45991801#45991801
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \ifsnowman at threeD
+ \def\snowman at part@draw[##1]{\shade[ball color=##1]}
+ \else% 3D
+ \ifsnowman at contour
+ \def\snowman at part@draw[##1]{\draw[##1,\snowman at contour,fill=white,line width=\scalingfactor*0.4pt]}
+ \else% contour
+ \def\snowman at part@draw[##1]{\fill[##1]}
+ \fi% contour
+ \fi% 3D
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %
+ % Body parts
+ %
+ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ %
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/snowman/background}
+ \UseHook{tikzlings/background}
+ \csname snowmanhookbackground\endcsname
+ \csname tikzlinghookbackground\endcsname
+ %
+ % Puddle %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \ifsnowman at contour
+ \draw[\snowman at contour,fill=white,line width=\scalingfactor*0.4pt] (0,1.15) ellipse[x radius=1.6,y radius=1.15];
+ \else% contour
+ \fill[\snowman at globalwarming] (0,1.15) ellipse[x radius=1.6,y radius=1.15];
+ \fi% contour
+ %
+ % adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/snowman/belly}
+ \UseHook{tikzlings/belly}
+ \csname snowmanhookbelly\endcsname
+ \csname tikzlinghookbelly\endcsname
+ %
+ % Mouth %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \fill[\snowman at mouth] (0,1.23) circle[radius=0.025];
+ \fill[\snowman at mouth] (0.06,1.3) circle[radius=0.025];
+ \fill[\snowman at mouth] (-0.06,1.27) circle[radius=0.025];
+ \fill[\snowman at mouth] (0.09,1.37) circle[radius=0.025];
+ \fill[\snowman at mouth] (-0.18,1.28) circle[radius=0.025];
+ \fill[\snowman at mouth] (0.2,1.28) circle[radius=0.025];
+ \fill[\snowman at mouth] (-0.25,1.2) circle[radius=0.025];
+ %
+ % Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \snowman at part@draw[\snowman at eyes] (-0.5,1.75) circle[radius=0.06];
+ \snowman at part@draw[\snowman at eyes] (-0.1,1.55) circle[radius=0.06];
+ %
+ % Nose %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \snowman at part@draw[\snowman at nose] (-0.6,1.4) -- (-0.8,1.42) -- (-0.6,1.54) (-0.6,1.4) arc[radius=0.07, start angle=-90, end angle=90];
+ %
+ % Buttons %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \snowman at part@draw[\snowman at buttons] (0.1,0.8) circle[radius=0.06];
+ \snowman at part@draw[\snowman at buttons] (-0.15,0.55) circle[radius=0.06];
+ \snowman at part@draw[\snowman at buttons] (0,0.25) circle[radius=0.06];
+ %
+ % adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/snowman/body}
+ \UseHook{tikzlings/body}
\csname snowmanhookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -248,7 +328,7 @@
%
%In addition to the colour of the body, the colour of various body parts can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\snowman[eye=red]
+%\snowman[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Nose colour}}
%\snowman[nose=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-squirrels.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-squirrels.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-squirrels.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-squirrels}[2025/01/05 version v2.2 Drawing squirrels in TikZ]
+\ProvidesPackage{tikzlings-squirrels}[2025/03/23 version v2.3 Drawing squirrels in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -24,6 +24,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/squirrel/foreground}
+ \UseHook{tikzlings/foreground}
\csname squirrelhookforeground\endcsname
\csname tikzlinghookforeground\endcsname
}
@@ -35,6 +37,11 @@
\newif\ifsquirrel at contour
\newif\ifsquirrel at openmouth
+\NewHook{tikzlings/squirrel/background}
+\NewHook{tikzlings/squirrel/belly}
+\NewHook{tikzlings/squirrel/body}
+\NewHook{tikzlings/squirrel/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -50,10 +57,12 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \squirrel at body,
body = brown!40!gray!90!red,
- eye/.store in = \squirrel at eye,
- eye = white,
- pupil/.store in = \squirrel at pupil,
- pupil = black,
+ eyes/.store in = \squirrel at eyes,
+ eyes = white,
+ eye/.forward to = /squirrel/eyes,
+ pupils/.store in = \squirrel at pupils,
+ pupils = black,
+ pupil/.forward to = /squirrel/pupils,
mouth/.store in = \squirrel at mouth,
mouth = \squirrel at body!70!brown!60!black,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -117,6 +126,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/squirrel/background}
+ \UseHook{tikzlings/background}
\csname squirrelhookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -147,6 +158,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/squirrel/belly}
+ \UseHook{tikzlings/belly}
\csname squirrelhookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -176,10 +189,10 @@
\squirrel at part@draw[\squirrel at body!70!brown!60!black] (0,1.66) ellipse[x radius=0.06, y radius=0.03];
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- \squirrel at part@draw[\squirrel at eye] (0.07,1.78) ellipse[x radius=0.05, y radius=0.07];
- \squirrel at part@draw[\squirrel at eye] (-0.07,1.78) ellipse[x radius=0.05, y radius=0.07];
- \squirrel at part@draw[\squirrel at pupil] (0.07,1.76) ellipse[x radius=0.017, y radius=0.027];
- \squirrel at part@draw[\squirrel at pupil] (-0.07,1.76) ellipse[x radius=0.017, y radius=0.027];
+ \squirrel at part@draw[\squirrel at eyes] (0.07,1.78) ellipse[x radius=0.05, y radius=0.07];
+ \squirrel at part@draw[\squirrel at eyes] (-0.07,1.78) ellipse[x radius=0.05, y radius=0.07];
+ \squirrel at part@draw[\squirrel at pupils] (0.07,1.76) ellipse[x radius=0.017, y radius=0.027];
+ \squirrel at part@draw[\squirrel at pupils] (-0.07,1.76) ellipse[x radius=0.017, y radius=0.027];
%
% Mouth %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\ifsquirrel at contour
@@ -203,6 +216,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/squirrel/body}
+ \UseHook{tikzlings/body}
\csname squirrelhookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -241,10 +256,10 @@
%
%In addition to the colour of the body, the colour of the eyes can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\squirrel[eye=red]
+%\squirrel[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Pupil colour}}
-%\squirrel[pupil=red]
+%\squirrel[pupils=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Mouth colour}}
%\squirrel[mouth=red]
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-wolves.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-wolves.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings-wolves.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
%% See https://www.latex-project.org/lppl.txt
%%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings-wolves}[2025/01/05 version v2.2 Drawing wolves in TikZ]
+\ProvidesPackage{tikzlings-wolves}[2025/03/23 version v2.3 Drawing wolves in TikZ]
\RequirePackage{tikz}
\RequirePackage{tikzlings-addons}
@@ -25,6 +25,8 @@
\end{scope}%
\thing[#1]%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/wolf/foreground}
+ \UseHook{tikzlings/tikzling/foreground}
\csname wolfhookforeground\endcsname
\csname tikzlinghookforeground\endcsname
%
@@ -37,6 +39,11 @@
\newif\ifwolf at back
\newif\ifwolf at contour
+\NewHook{tikzlings/wolf/background}
+\NewHook{tikzlings/wolf/belly}
+\NewHook{tikzlings/wolf/body}
+\NewHook{tikzlings/wolf/foreground}
+
\tikzset{
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -52,10 +59,12 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
body/.store in = \wolf at body,
body = gray!90!white,
- eye/.store in = \wolf at eye,
- eye = white,
- pupil/.store in = \wolf at pupil,
- pupil = black,
+ eyes/.store in = \wolf at eyes,
+ eyes = white,
+ eye/.forward to = /wolf/eyes,
+ pupils/.store in = \wolf at pupils,
+ pupils = black,
+ pupil/.forward to = /wolf/pupils,
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% options
@@ -119,6 +128,8 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/wolf/background}
+ \UseHook{tikzlings/background}
\csname wolfhookbackground\endcsname
\csname tikzlinghookbackground\endcsname
%
@@ -159,6 +170,8 @@
\fi%back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/wolf/belly}
+ \UseHook{tikzlings/belly}
\csname wolfhookbelly\endcsname
\csname tikzlinghookbelly\endcsname
%
@@ -177,14 +190,14 @@
%
% Eyes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\unless\ifwolf at back
- \wolf at part@draw[\wolf at eye] (-0.1514, 1.6791) .. controls (-0.1514, 1.6791) and (-0.1951, 1.6471) .. (-0.2341, 1.6584) .. controls (-0.2731, 1.6697) and (-0.2927, 1.72) .. (-0.2927, 1.72) .. controls (-0.2927, 1.72) and (-0.2492, 1.7521) .. (-0.2102, 1.7408) .. controls (-0.1712, 1.7295) and (-0.1514, 1.6791) .. (-0.1514, 1.6791) -- cycle;
- \wolf at part@draw[\wolf at eye] (0.1514, 1.6791) .. controls (0.1514, 1.6791) and (0.1951, 1.6471) .. (0.2341, 1.6584) .. controls (0.2731, 1.6697) and (0.2927, 1.72) .. (0.2927, 1.72) .. controls (0.2927, 1.72) and (0.2492, 1.7521) .. (0.2102, 1.7408) .. controls (0.1712, 1.7295) and (0.1514, 1.6791) .. (0.1514, 1.6791) -- cycle;
+ \wolf at part@draw[\wolf at eyes] (-0.1514, 1.6791) .. controls (-0.1514, 1.6791) and (-0.1951, 1.6471) .. (-0.2341, 1.6584) .. controls (-0.2731, 1.6697) and (-0.2927, 1.72) .. (-0.2927, 1.72) .. controls (-0.2927, 1.72) and (-0.2492, 1.7521) .. (-0.2102, 1.7408) .. controls (-0.1712, 1.7295) and (-0.1514, 1.6791) .. (-0.1514, 1.6791) -- cycle;
+ \wolf at part@draw[\wolf at eyes] (0.1514, 1.6791) .. controls (0.1514, 1.6791) and (0.1951, 1.6471) .. (0.2341, 1.6584) .. controls (0.2731, 1.6697) and (0.2927, 1.72) .. (0.2927, 1.72) .. controls (0.2927, 1.72) and (0.2492, 1.7521) .. (0.2102, 1.7408) .. controls (0.1712, 1.7295) and (0.1514, 1.6791) .. (0.1514, 1.6791) -- cycle;
\fi% back
%
% pupil %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\unless\ifwolf at back
- \wolf at part@draw[\wolf at pupil] (0.22, 1.695) circle[radius=0.025];
- \wolf at part@draw[\wolf at pupil] (-0.22, 1.695) circle[radius=0.025];
+ \wolf at part@draw[\wolf at pupils] (0.22, 1.695) circle[radius=0.025];
+ \wolf at part@draw[\wolf at pupils] (-0.22, 1.695) circle[radius=0.025];
\fi% back
%
% Hair and Nose %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -200,6 +213,8 @@
\fi% back
%
% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+ \UseHook{tikzlings/wolf/body}
+ \UseHook{tikzlings/body}
\csname wolfhookbody\endcsname
\csname tikzlinghookbody\endcsname
%
@@ -238,10 +253,10 @@
%
%In addition to the colour of the body, the colour of the eyes can be adjusted:
%\begin{tcblisting}{title={Eye colour}}
-%\wolf[eye=red]
+%\wolf[eyes=red]
%\end{tcblisting}
%\begin{tcblisting}{title={Pupil Colour}}
-%\wolf[pupil=red]
+%\wolf[pupils=red]
%\end{tcblisting}
%
%The rotation angle of its arms can be adjusted:
Modified: trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings.sty 2025-03-24 19:46:57 UTC (rev 74734)
+++ trunk/Master/texmf-dist/tex/latex/tikzlings/tikzlings.sty 2025-03-24 19:47:25 UTC (rev 74735)
@@ -12,7 +12,7 @@
% See https://www.latex-project.org/lppl.txt
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\ProvidesPackage{tikzlings}[2025/01/05 version v2.2 Collection of packages to draw animals and other beings in TikZ]
+\ProvidesPackage{tikzlings}[2025/03/23 version v2.3 Collection of packages to draw animals and other beings in TikZ]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
@@ -39,10 +39,22 @@
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
+% Hooks
+%
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+\NewHook{tikzlings/background}
+\NewHook{tikzlings/body}
+\NewHook{tikzlings/clothing}
+\NewHook{tikzlings/hair}
+\NewHook{tikzlings/hat}
+\NewHook{tikzlings/foreground}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
% Drawing a random tikzling
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\RequirePackage{expl3}
\ExplSyntaxOn
\ifdefined\sys_rand_seed:
\pgfmathsetseed {\sys_rand_seed:}
More information about the tex-live-commits
mailing list.