X-Git-Url: https://melusine.eu.org/syracuse/G/git/?p=delaunay.git;a=blobdiff_plain;f=doc%2Fluamesh-doc.tex;h=9330b5e9681980be60065082d89b7736a8e74d50;hp=57ba342e1f09ec5f5a58c188f3cf861de554f3e7;hb=0fc3412f5527ee6e9e3e1291ae9d028e64b1db1c;hpb=60cfa183014f7810d3a82e4fb1c1a468454be97b diff --git a/doc/luamesh-doc.tex b/doc/luamesh-doc.tex index 57ba342..9330b5e 100644 --- a/doc/luamesh-doc.tex +++ b/doc/luamesh-doc.tex @@ -133,6 +133,8 @@ }% {\end{tcolorbox}\medskip} +\lstset{moredelim=*[s][\color{red}\rmfamily\itshape]{<}{>}} +\lstset{moredelim=*[s][\color{blue}\rmfamily\itshape]{<<}{>>}} \begin{document} %% === Page de garde =================================================== @@ -580,14 +582,119 @@ When we use the MetaPost drawing engine, the macros previously described produced a code of the form \begin{latexcode} \begin{luamplib} + u:=; + beginfig(0); + + endfig; +\end{luamplib} +\end{latexcode} +Then, the arguments \meta{code before} and \meta{code after} are +inserted as follows: +\begin{latexcode} +\begin{luamplib} + u:=; + <> + + <> \end{luamplib} \end{latexcode} +\begin{warning} +With the \emph{inc} macros, the user has to add the \Verb+beginfig();+ +and \Verb+endfig;+ commands to produce a picture. Indeed, this allows +to use the \Verb+\everymplib+ command from the \Verb+\luamplib+ package. +\end{warning} +\subsubsection{The \LaTeX{} Colors Inside the MetaPost Code} + +The configurable colors +of the \LaTeX{} macro are accessible inside the MetaPost code. For +\Verb+\buildMeshBWinc+ and \Verb+\drawPointsMeshinc+, we have +\Verb+\luameshmpcolor+, +and \Verb+\luameshmpcolorBbox+. +For the macro \Verb+\meshAddPointBWinc+ we have three additional +colors : \Verb+\luameshmpcolorBack+, \Verb+\luameshmpcolorNew+, and +\Verb+\luameshmpcolorCircle+. Of course, we can define MetoPost +colors as well. Finally, the \Verb+luamplib+ mechanism of +\Verb+\mpcolor+ is also available. + +\subsubsection{The Mesh Points with MetaPost} + +At the beginning of the automatically generated code, a list of +MetaPost \Verb+pair+s are defined corresponding to all the vertices of +the mesh (when the option \Verb+bbox=show+, the last 4 points are the +\emph{bounding box points}). The points are available with the +\Verb+MeshPoints[]+ table of variables. The \Verb+MeshPoints[i]+ are +defined using the unit length \Verb+u+. + +\subsubsection{Examples} + +Here is three examples for the different macros. +\begin{Exemple} +\drawPointsMeshinc[ +color = blue!50, +print = points, +meshpoint = x, +scale=0.8cm, +]{(0.3,0.3);(1.5,1);(4,0);(4.5,2.5);(1.81,2.14);(2.5,0.5);(2.8,1.5)}% +{% code before + beginfig(0); +}% +{% code after + label(btex Mesh $\mathbb{T}$ etex, (0,2u)) withcolor \luameshmpcolor; + endfig; +} +\buildMeshBWinc[% +bbox = show, +color = red, +colorBbox = blue!30, +print = points, +meshpoint = x, +scale=0.8cm +]{(0.3,0.3);(1.5,1);(4,0);(4.5,2.5);(1.81,2.14);(2.5,0.5);(2.8,1.5)}% +{% code before + beginfig(0); +} +{% code after + drawdblarrow MeshPoints[3] -- MeshPoints[9] withpen pencircle scaled 1pt + withcolor (0.3,0.7,0.2); + endfig; +} +\meshAddPointBWinc[ +meshpoint = \alpha, +newpoint = y, +colorBack=red!10, +colorNew = green!50!red, +colorCircle = blue, +colorBbox = black!20, +bbox = show, +scale=0.8cm, +step=badtriangles] +{(0.3,0.3);(1.5,1);(4,0);(4.5,2.5);(1.81,2.14);(2.5,0.5)}{(2.8,1.5)}% +{%code before + picture drawing; + drawing := image( +}{%code after + ); + beginfig(0); + fill MeshPoints[7]--MeshPoints[8]--MeshPoints[9]--MeshPoints[10]--cycle + withcolor \mpcolor{blue!10}; + draw drawing; + endfig; +} +\end{Exemple} +\begin{warning} + The variables \Verb+MeshPoints[]+ are not defined for the argument + corresponding to the code to place before the code generated by + \luamesh. Hence, to use such variables, we have to define a + \Verb+picture+ as shown in the third example above. +\end{warning} \subsection{With TikZ} + + \section{Gallery of Examples} \end{document}