diff options
Diffstat (limited to 'macros/latex/contrib/tkz/tkz-base/latex/tkz-obj-marks.tex')
-rw-r--r-- | macros/latex/contrib/tkz/tkz-base/latex/tkz-obj-marks.tex | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/macros/latex/contrib/tkz/tkz-base/latex/tkz-obj-marks.tex b/macros/latex/contrib/tkz/tkz-base/latex/tkz-obj-marks.tex new file mode 100644 index 0000000000..3eec108b22 --- /dev/null +++ b/macros/latex/contrib/tkz/tkz-base/latex/tkz-obj-marks.tex @@ -0,0 +1,117 @@ +%tkz-obj-marks.tex +% Copyright 2011 by Alain Matthes +% +% This file may be distributed and/or modified +% +% 1. under the LaTeX Project Public License and/or +% 2. under the GNU Public License. +\def\fileversion{3.01c} +\def\filedate{2020/01/23} +\typeout{2020/01/23 3.01c tkz-obj-marks.tex} +\makeatletter +%<-------------------------------------------------------------------------–> +% Setup Marks +%<-------------------------------------------------------------------------–> +%<--------------------------------------------------------------------------–> +% DefSetOfPoints +%<--------------------------------------------------------------------------–> +\pgfkeys{/tkzSoPt/.cd, + prefix/.store in = \tkz@pref, + prefix = tkzPt, + /tkzSoPt/.unknown/.code = {\let\searchname=\pgfkeyscurrentname + \pgfkeysalso{\searchname/.try=#1, + /tikz/\searchname/.retry=#1}} +} +\def\tkzDefSetOfPoints{\pgfutil@ifnextchar[{\tkz@SetOfPoints}{% + \tkz@SetOfPoints[]}} +\def\tkz@SetOfPoints[#1]#2{% +\begingroup +\pgfqkeys{/tkzSoPt}{#1} + \tkz@cntmk1 % + \edef\tkz@@cnt{\the\tkz@cntmk} + \foreach \x/\y in {#2}{% + \tkz@cntmk=\tkz@@cnt % + \tkzDefPoint(\x,\y){\tkz@pref\the\tkz@cntmk} + \advance\tkz@cntmk by1 % + \xdef\tkz@@cnt{\the\tkz@cntmk} + }% +\endgroup +}% +%<-------------------------------------------------------------------------–> +\pgfkeys{/tkzjoinmk/.cd, + prefix/.store in = \tkz@pref, + prefix=tkzPt, + /tkzjoinmk/.search also={/tikz} +} +\def\tkzJoinSetOfPoints{\pgfutil@ifnextchar[{\tkz@JoinSetOfPoints}{% + \tkz@JoinSetOfPoints[]}} +\def\tkz@JoinSetOfPoints[#1]{% +\begingroup + \pgfqkeys{/tkzjoinmk}{#1} + \pgfmathsetcount{\tkz@cntmk}{\tkz@@cnt-2} + \edef\tkz@@cnt{\the\tkz@cntmk} + \foreach \nb in {1,...,\tkz@@cnt}{% + \tkz@cntmk=\nb + \advance\tkz@cntmk by1 + \draw[line cap=round,/tkzjoinmk/.cd,#1] + (\tkz@pref\nb) -- (\tkz@pref\the\tkz@cntmk);} +\endgroup} +%<-------------------------------------------------------------------------–> +% ShowSetOfMark +%<-------------------------------------------------------------------------–> +\pgfkeys{/tkzdrawmk/.cd, + prefix/.store in = \tkz@pref, + prefix=tkzPt, + /tkzdrawmk/.search also = {/tikz} +} +\def\tkzDrawSetOfPoints{\pgfutil@ifnextchar[{\tkz@DrawSetOfPoints}{ + \tkz@DrawSetOfPoints[]}} +\def\tkz@DrawSetOfPoints[#1]{% +\begingroup +\pgfqkeys{/tkzdrawmk}{#1} +\pgfmathsetcount{\tkz@cntmk}{\tkz@@cnt-1} +\foreach \nb in {1,...,\tkz@cntmk}{\tkzDrawMark[#1](\tkz@pref\nb)} +\endgroup} +%<-------------------------------------------------------------------------–> +% tkzmark +%<-------------------------------------------------------------------------–> +\def\tkzDrawMark{\pgfutil@ifnextchar[{\tkz@DrawMark}{\tkz@DrawMark[]}} +\def\tkz@DrawMark[#1](#2){% + \draw plot[mark style,#1] coordinates {(#2)}; +} +%<---------------------------------------------------------–> +%<---------------------------------------------------------–> +\def\tkzDrawMarks{\pgfutil@ifnextchar[{\tkz@DrawMarks}{\tkz@DrawMarks[]}} +\def\tkz@DrawMarks[#1](#2){% + \foreach \point in {#2}{% + \draw plot[mark style,#1] coordinates {(\point)};% StyleMark, +}} +%<------------------------------------------------------------–> +% Init pour mark +%<------------------------------------------------------------–> +\pgfkeys{/setupmk/.cd, + size/.store in = \tkz@sum@mk@size, + color/.store in = \tkz@sum@mk@color, + fill/.store in = \tkz@sum@mk@fill, + mark/.store in = \tkz@sum@mk@mark, + mark = \tkz@mk@mark, + color = \tkz@mk@color, + fill = \tkz@mk@color!50, + size = \tkz@mk@size +} +\def\tkzSetUpMark{\pgfutil@ifnextchar[{\tkzActivOff\tkz@SetUpMark}{% + \tkzActivOff\tkz@SetUpMark[]}} + +\def\tkz@SetUpMark[#1]{% +\pgfqkeys{/setupmk}{#1} +\tikzset{mark style/.style={% + inner sep = 0pt, + mark = \tkz@sum@mk@mark, + mark size = \tkz@sum@mk@size, + mark options = {color = \tkz@sum@mk@color, + fill = \tkz@sum@mk@fill}}} +}% +\makeatother +%<--------------------------------------- ------------------–> +\endinput +
\ No newline at end of file |