% tkz-obj-eu-grids.tex % Copyright 2022 Alain Matthes % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either version 1.3 % of this license or (at your option) any later version. % The latest version of this license is in % http://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of LaTeX % version 2005/12/01 or later. % This work has the LPPL maintenance status “maintained”. % The Current Maintainer of this work is Alain Matthes. \def\fileversion{4.24c} \def\filedate{2022/09/21} \typeout{2022/09/21 4.24c tkz-obj-eu-grids.tex} \makeatletter %<--------------------------------------------------------------------------–> % Setup Grid %<--------------------------------------------------------------------------–> \pgfkeys{/tkzsugrid/.cd, line width/.store in = \tkz@sug@lw, color/.store in = \tkz@sug@color, line width = \tkz@grid@lw, color = \tkz@grid@color } \def\tkzSetUpGrid{\pgfutil@ifnextchar[{\tkz@SetUpGrid}{\tkz@SetUpGrid[]}} \def\tkz@SetUpGrid[#1]{% \begingroup \pgfqkeys{/tkzsugrid}{#1} \global\let\tkz@grid@lw\tkz@sug@lw \global\let\tkz@grid@color\tkz@sug@color \endgroup } %<--------------------------------------------------------------------------–> % tkzGrid %<--------------------------------------------------------------------------–> \pgfkeys{/tkzGrid/.cd, color/.code = {\def\tkz@gd@color{#1}% \edef\tkz@gd@subcolor{% \tkz@gd@color!\tkzCoeffSubColor}}, subxstep/.store in = {\tkz@gd@subxstep}, subystep/.store in = {\tkz@gd@subystep}, ratio/.store in = {\tkz@gd@ratio}, line width/.code = {\edef\tkz@gd@lw{#1} \edef\tkz@gd@sublw{\tkz@gd@ratio\tkz@gd@lw}}, sub/.is if = tkz@gd@sub, sub/.default = true , sub = false, color = \tkz@grid@color, ratio = 0.75, subxstep = \tkz@grid@xstep, subystep = \tkz@grid@ystep, line width = \tkz@grid@lw, /tkzGrid/.search also= {/tikz}, } %<--------------------------------------------------------------------------–> \def\tkzGrid{\pgfutil@ifnextchar[{\tkz@Grid}{\tkz@Grid[]}} \def\tkz@Grid[#1]{\@ifnextchar({\tkz@@Grid[#1]}% {\tkz@@Grid[#1](\tkz@tmp@xa,\tkz@tmp@ya)(\tkz@tmp@xb,\tkz@tmp@yb)}} \def\tkz@@Grid[#1](#2,#3)(#4,#5){% \pgfqkeys{/tkzGrid}{#1} \begingroup \edef\tkz@gxa{\fpeval{(#2-\tkz@init@xorigine)/\tkz@init@xstep}} \edef\tkz@gxb{\fpeval{(#4-\tkz@init@xorigine)/\tkz@init@xstep}} \edef\tkz@gya{\fpeval{(#3-\tkz@init@yorigine)/\tkz@init@ystep}} \edef\tkz@gyb{\fpeval{(#5-\tkz@init@yorigine)/\tkz@init@ystep}} \iftkz@gd@sub% \edef\@subxstep{\fpeval{\tkz@gd@subxstep/\tkz@init@xstep}}% \edef\@subystep{\fpeval{\tkz@gd@subystep/\tkz@init@ystep}}% \draw [xstep = \@subxstep cm,% ystep = \@subystep cm,% color = \tkz@gd@subcolor,% line width = \tkzRatioLineGrid]% (\tkz@gxa,\tkz@gya) grid (\tkz@gxb,\tkz@gyb);% \fi \draw [color = \tkz@gd@color,% line width = \tkz@gd@lw]% (\tkz@gxa,\tkz@gya) grid (\tkz@gxb,\tkz@gyb);% \endgroup }% \makeatother \endinput