There are several options to customize the drawing.
\begin{optionsenum}
-\item[mode = int (default) or ext:] this option allows to
+\item[mode = int (default) \textme{or} ext:] this option allows to
use either the previously described set of point in the argument, or
a file, containing, line by line (2 columns), the points. Such a
file looks like :
...
xn yn
\end{verbatim}
-\item[bbox = none (default) or show:] this option allows to draw the
+\item[bbox = none (default) \textme{or} show:] this option allows to draw the
added points to form a \emph{bounding box}\footnote{The bounding
box is defined by four points place at 15\% around the box
defined by $(x_{\min},y_{\min})$, $(x_{\min},y_{\max})$,
\item[colorBbox = \meta{value} (default: black):] The color of the
drawing for the elements (points and triangles) belonging to the
bounding box.
-\item[print = none (default) or points:] To label the vertices of the
+\item[print = none (default) \textme{or} points:] To label the vertices of the
triangulations with an adding dot.
\item[meshpoint = \meta{value} (default: P):] The letter(s) used to
label the vertices of the triangulation. It is include in the math
There are several options (exactly the same that for the
\Verb+\buildMeshBW+)to customize the drawing.
\begin{optionsenum}
-\item[mode = int (default) or ext:] this option allows to
+\item[mode = int (default) \textme{or} ext:] this option allows to
use either the previously described set of point in the argument, or
a file, containing, line by line (2 columns), the points. Such a
file looks like :
...
xn yn
\end{verbatim}
-\item[bbox = none (default) or show:] this option allows to draw the
+\item[bbox = none (default) \textme{or} show:] this option allows to draw the
added points to form a \emph{bounding box} and the corresponding
triangulation. By default, these triangles are removed at the end of
the algorithm. \emph{Here, because we plot only the vertices of the
\item[colorBbox = \meta{value} (default: black):] The color of the
drawing for the elements (points and triangles) belonging to the
bounding box.
-\item[print = none (default) or points:] To label the vertices of the
+\item[print = none (default) \textme{or} points:] To label the vertices of the
triangulations with an adding dot. Without label, there is a dot.
\item[meshpoint = \meta{value} (default: P):] The letter(s) used to
label the vertices of the triangulation. It is include in the math
\meshAddPointBW{(1.5,1);(4,0);(4.5,2.5);(1.81,2.14);(2.5,0.5);(2.8,1.5)}{(2.2,1.8)}
\end{latexcode}
+\subsubsection{The Options}
+
+There are several options (some of them are the same as for
+\Verb+\buildMeshBW+) to customize the drawing.
+\begin{optionsenum}
+\item[mode = int (default) \textme{or} ext:] this option allows to
+ use either the previously described set of point in the argument
+ number one, or
+ a file, containing, line by line (2 columns), the points. Such a
+ file looks like :
+\begin{verbatim}
+x1 y1
+x2 y2
+x3 y3
+...
+xn yn
+\end{verbatim}
+For the second argument of the macro, if we are in the
+\Verb+mode = ext+, the argument must be the \emph{line number} of the file
+corresponding to the point we want to add. The algorithm will stop the
+line before to build the initial triangulation for which it will add
+the point corresponding to the line. The other lines of the file are
+ignored.
+\item[bbox = none (default) \textme{or} show:] this option allows to draw the
+ added points to form a \emph{bounding box} and the corresponding
+ triangulation. By default, these triangles are removed at the end of
+ the algorithm.
+\item[color = \meta{value} (default: black):] The color of the
+ drawing.
+\item[colorBbox = \meta{value} (default: black):] The color of the
+ drawing for the elements (points and triangles) belonging to the
+ bounding box.
+\item[colorNew = \meta{value} (default: red):] The color of the
+ drawing of the ``new'' elements which are the point to add, the
+ polygon of the cavity, and the new triangles.
+\item[colorBack = \meta{value} (default: black!20):] The color for the
+ filling of the region concerned by the addition of the new point.
+\item[colorCircle = \meta{value} (default: green):] The color for
+ circoncircle of the triangles containing the point to add.
+\item[meshpoint = \meta{value} (default: P):] The letter(s) used to
+ label the vertices of the triangulation. It is include in the math
+ mode delimiters \Verb+$...$+. The bounding box points are labeled
+ with a star exponent, and numbered from 1 to 4.
+\item[step = badtriangles (default) \textme{or} cavity \textme{or}
+ newtriangles:] To choose the step we want to draw, corresponding to
+ the steps of the Bowyer and Watson algorithm.
+\item[newpoint = \meta{value} (default: P):] The letter(s) used to
+ label the new point of the triangulation. It is include in the math
+ mode delimiters \Verb+$...$+.
+\item[tikz (boolean, default:false):] By default, this boolean is set
+ to \Verb+false+, and MetaPost (with \Verb+luamplib+) is used to draw
+ the picture. With this option, it is \Verb+tikz+ the \textit{drawing
+ engine}.
+\item[scale = \meta{value} (default: 1cm):] The scale option defines
+ the scale at which the picture is draw (the same for the two
+ axis). It must contain the unit of length (cm,
+ pt, etc.).
+\end{optionsenum}
+
+Here is an example of customization of the drawing. First, recall that
+the external file \Verb+mesh.txt+ is:
+\begin{verbatim}
+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
+\end{verbatim}
+We draw the addition of the 6th point. The 7th line will be ignored.
+\begin{Exemple}
+ \meshAddPointBW[
+ tikz,
+ mode = ext,
+ color = blue!70,
+ meshpoint = x,
+ newpoint = y,
+ colorBack=red!10,
+ colorNew = green!20!red,
+ colorCircle = blue,
+ colorBbox = black!20,
+ bbox = show,
+ scale=1.4cm,
+ step=cavity]
+ {mesh.txt}{6}
+\end{Exemple}
+
\section{The \emph{inc} Macros}\label{sec:inc}
+\subsection{With MetaPost}
+
+%\subsection{With \Verb+tikz+}
+
\section{Gallery of Examples}
\end{document}
end
--
-function TeXaddOnePointTikZ(chaine,point,step,color,colorBack, colorNew, colorCircle,colorBbox)
+function TeXaddOnePointTikZ(listPoints,P,step,bbox,color,colorBack, colorNew, colorCircle,colorBbox)
output = ""
-- build the triangulation
- triangulation = BowyerWatson(listPoints,"none")
+ triangulation = BowyerWatson(listPoints,bbox)
badTriangles = buildBadTriangles(P,triangulation)
if(step == "badT") then
-- draw all triangle
-- point is a number
P, listPoints = buildListExt(chaine,tonumber(point))
end
- output = TeXaddOnePointTikZ(chaine,point,step,color,colorBack,colorNew,colorCircle,colorBbox)
+ output = TeXaddOnePointTikZ(listPoints,P,step,bbox,color,colorBack,colorNew,colorCircle,colorBbox)
output = "\\noindent\\begin{tikzpicture}[x="..scale..",y="..scale.."]".. output .. "\\end{tikzpicture}"
tex.sprint(output)
end
-- point is a number
P, listPoints = buildListExt(chaine,tonumber(point))
end
- output = TeXaddOnePointTikZ(chaine,point,step,color,colorBack,colorNew,colorCircle,colorBbox)
+ output = TeXaddOnePointTikZ(listPoints,P,step,bbox,color,colorBack,colorNew,colorCircle,colorBbox)
output = "\\noindent\\begin{tikzpicture}[x="..scale..",y="..scale.."]".. beginning..output ..ending.. "\\end{tikzpicture}"
tex.sprint(output)
end