\usepackage{fontspec}
\usepackage{multido}
\pagestyle{empty}
-
\def\drawPath{draw (-2,-2)*u--(8,-2)*u--(8,6)*u--(-2,6)*u--cycle withcolor 0.99white;}
\def\clipPath{clip currentpicture to (-2,-2)*u--(8,-2)*u--(8,6)*u--(-2,6)*u--cycle;}
-
\begin{document}
-
- \drawPointsMeshinc[
- mode=ext,
- bbox = show,
- colorBbox = blue!20,
- print=points
- ]
- {mesh.txt}%
+ \drawPointsMeshinc[mode=ext, bbox = show,colorBbox = blue!20,print=points]{mesh.txt}%
{%
beginfig(0);
\drawPath
\clipPath
endfig;
}
- \newpage
- \buildMeshBWinc[
- mode=ext,
- bbox = show,
- colorBbox = blue!20,
- print=points
- ]
- {meshInit.txt}%
+ \newpage\buildMeshBWinc[mode=ext,bbox = show,colorBbox = blue!20,print=points]{meshInit.txt}%
{%
beginfig(0);
\drawPath
endfig;
}
\multido{\ii=5+1}{4}{%
- \newpage
- \meshAddPointBWinc[
- mode=ext,step=badtriangles,
- colorNew =green!20!red,
- colorBack=red!10,
- colorCircle = blue,
- bbox = show,
- colorBbox = blue!20
- ]
- {mesh.txt}{\ii}%
+ \newpage\meshAddPointBWinc[mode=ext,step=badtriangles,colorNew
+ =green!20!red,colorBack=red!10,colorCircle = blue,bbox =
+ show,colorBbox = blue!20]{mesh.txt}{\ii}%
{%
beginfig(0);
\drawPath
\clipPath
endfig;
} \newpage
- \meshAddPointBWinc[
- mode=ext,step=cavity,
- colorNew =green!20!red,
- colorBack=red!10,
- colorCircle = blue,
- bbox = show,
- colorBbox = blue!20
- ]
- {mesh.txt}{\ii}%
+ \meshAddPointBWinc[mode=ext,step=cavity,colorNew
+ =green!20!red,colorBack=red!10,colorCircle = blue,bbox =
+ show,colorBbox = blue!20]{mesh.txt}{\ii}%
{%
beginfig(0);
\drawPath
\clipPath
endfig;
} \newpage
- \meshAddPointBWinc[
- mode=ext,step=newtriangles,
- colorNew =green!20!red,
- colorBack=red!10,
- colorCircle = blue,
- bbox = show,
- colorBbox = blue!20]
- {mesh.txt}{\ii}%
+ \meshAddPointBWinc[mode=ext,step=newtriangles,colorNew
+ =green!20!red,colorBack=red!10,colorCircle = blue,bbox =
+ show,colorBbox = blue!20]{mesh.txt}{\ii}%
{%
beginfig(0);
\drawPath
}
}
\newpage
- \buildMeshBWinc[
- mode=ext,
- bbox = show,
- colorBbox = blue!20,
- print=points
- ]
- {mesh.txt}%
+ \buildMeshBWinc[mode=ext,bbox = show,colorBbox = blue!20,print=points]{mesh.txt}%
{%
beginfig(0);
\drawPath
endfig;
}
\newpage
- \buildMeshBWinc[
- mode=ext,
- print=points
- ]
- {mesh.txt}%
+ \buildMeshBWinc[mode=ext,print=points]{mesh.txt}%
{%
beginfig(0);
\drawPath
\BOOKMARK [2][-]{subsection.4.2}{The inc variant}{section.4}% 23
\BOOKMARK [1][-]{section.5}{With Gmsh}{}% 24
\BOOKMARK [2][-]{subsection.5.1}{Gmsh and Voronoi Diagrams}{section.5}% 25
-\BOOKMARK [2][-]{subsection.5.2}{The inc variants}{section.5}% 26
-\BOOKMARK [1][-]{section.6}{Gallery}{}% 27
-\BOOKMARK [2][-]{subsection.6.1}{With Animate}{section.6}% 28
+\BOOKMARK [2][-]{subsection.5.2}{The Options}{section.5}% 26
+\BOOKMARK [2][-]{subsection.5.3}{The inc variants}{section.5}% 27
+\BOOKMARK [1][-]{section.6}{Gallery}{}% 28
+\BOOKMARK [2][-]{subsection.6.1}{With Animate}{section.6}% 29
breaklines=true,
breakindent=30pt,
defaultdialect=[LaTeX]TeX,
- morekeywords={buildMeshBW,buildMeshBWinc,drawPointsMesh,
- drawPointsMeshinc, meshAddPointBW, meshAddPointBWinc}% frame=tb
+ morekeywords={buildMeshBW,buildMeshBWinc,drawPointsMesh,buildVoronoiBW,buildVoronoiBWinc,
+ drawPointsMeshinc, meshAddPointBW,
+ meshAddPointBWinc,drawGmsh,drawGmshinc,gmshVoronoi,gmshVoronoiinc}% frame=tb
}
\lstdefinelanguage{lua}
the scale at which the picture is drawn (the same for both
axes). It must contain the unit of length (cm,
pt, etc.).
+\item[delaunay = none (default) \textme{or} show] This option
+ allows to draw the Delaunay triangulation under the Voronoi diagram.
+\item[styleDelaunay = none (default) \textme{or} dashed] This option
+ allows to draw dashed lines for the Delaunay triangulation.
+\item[styleVoronoi = none (default) \textme{or} dashed] This option
+ allows to draw dashed lines for the Voronoi edges.
\end{optionsenum}
+\begin{Exemple}
+ \buildVoronoiBW[tikz,delaunay=show,styleDelaunay=dashed]
+ {(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);(0.1,2);(1.5,-0.3)}
+\end{Exemple}
\subsection{The \emph{inc} variant}
\gmshVoronoi{maillage.msh}
\end{Exemple}
-We refer to the section~\ref{sec:voronoiOptions} for the list of the options.
+
+\subsection{The Options}\label{sec:voronoiOptions}
+
+
+There are several options to customize the drawing.
+\begin{optionsenum}
+\item[color = \meta{value} (default: black):] The color of the
+ drawing.
+\item[colorVoronoi = \meta{value} (default: black):] The color of the
+ drawing for the elements (points and polygons) belonging to the
+ Voronoi diagram.
+\item[print = none (default) \textme{or} points:] To label the vertices of the
+ triangulation. Contrary to the previous macros, where
+ \Verb+print=none+, a \emph{dot} is produced at each vertex (of the
+ set of points and on the circumcircle center which are the nodes of
+ the Voronoi diagram).
+\item[meshpoint = \meta{value} (default: P):] The letter(s) used to
+ label the vertices of the triangulation. It is included in the math
+ mode delimiters \Verb+$...$+. The bounding box points are labeled
+ with numbers 1 to 4 and with a star exponent.
+\item[circumpoint = \meta{value} (default: P):] The letter(s) used to
+ label the vertices of the Voronoi diagram. It is included 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, \Verb+tikz+ becomes the \textit{drawing
+ engine}.
+\item[scale = \meta{value} (default: 1cm):] The scale option defines
+ the scale at which the picture is drawn (the same for both
+ axes). It must contain the unit of length (cm,
+ pt, etc.).
+\item[delaunay = none (default) \textme{or} show] This option
+ allows to draw the Delaunay triangulation under the Voronoi diagram.
+\item[styleDelaunay = none (default) \textme{or} dashed] This option
+ allows to draw dashed lines for the Delaunay triangulation.
+\item[styleVoronoi = none (default) \textme{or} dashed] This option
+ allows to draw dashed lines for the Voronoi edges.
+\end{optionsenum}
+
+\begin{Exemple}
+ \gmshVoronoi[tikz,scale=1.5cm, delaunay=show,styleVoronoi=dashed]{maillage.msh}
+\end{Exemple}
+
\subsection{The \emph{inc} variants}
\usepackage{fontspec}
\usepackage{multido}
\pagestyle{empty}
-
\def\drawPath{draw (-2,-2)*u--(8,-2)*u--(8,6)*u--(-2,6)*u--cycle withcolor 0.99white;}
\def\clipPath{clip currentpicture to (-2,-2)*u--(8,-2)*u--(8,6)*u--(-2,6)*u--cycle;}
-
\begin{document}
-
- \drawPointsMeshinc[
- mode=ext,
- bbox = show,
- colorBbox = blue!20,
- print=points
- ]
- {mesh.txt}%
+ \drawPointsMeshinc[mode=ext, bbox = show,colorBbox = blue!20,print=points]{mesh.txt}%
{%
beginfig(0);
\drawPath
\clipPath
endfig;
}
- \newpage
- \buildMeshBWinc[
- mode=ext,
- bbox = show,
- colorBbox = blue!20,
- print=points
- ]
- {meshInit.txt}%
+ \newpage\buildMeshBWinc[mode=ext,bbox = show,colorBbox = blue!20,print=points]{meshInit.txt}%
{%
beginfig(0);
\drawPath
endfig;
}
\multido{\ii=5+1}{4}{%
- \newpage
- \meshAddPointBWinc[
- mode=ext,step=badtriangles,
- colorNew =green!20!red,
- colorBack=red!10,
- colorCircle = blue,
- bbox = show,
- colorBbox = blue!20
- ]
- {mesh.txt}{\ii}%
+ \newpage\meshAddPointBWinc[mode=ext,step=badtriangles,colorNew
+ =green!20!red,colorBack=red!10,colorCircle = blue,bbox =
+ show,colorBbox = blue!20]{mesh.txt}{\ii}%
{%
beginfig(0);
\drawPath
\clipPath
endfig;
} \newpage
- \meshAddPointBWinc[
- mode=ext,step=cavity,
- colorNew =green!20!red,
- colorBack=red!10,
- colorCircle = blue,
- bbox = show,
- colorBbox = blue!20
- ]
- {mesh.txt}{\ii}%
+ \meshAddPointBWinc[mode=ext,step=cavity,colorNew
+ =green!20!red,colorBack=red!10,colorCircle = blue,bbox =
+ show,colorBbox = blue!20]{mesh.txt}{\ii}%
{%
beginfig(0);
\drawPath
\clipPath
endfig;
} \newpage
- \meshAddPointBWinc[
- mode=ext,step=newtriangles,
- colorNew =green!20!red,
- colorBack=red!10,
- colorCircle = blue,
- bbox = show,
- colorBbox = blue!20]
- {mesh.txt}{\ii}%
+ \meshAddPointBWinc[mode=ext,step=newtriangles,colorNew
+ =green!20!red,colorBack=red!10,colorCircle = blue,bbox =
+ show,colorBbox = blue!20]{mesh.txt}{\ii}%
{%
beginfig(0);
\drawPath
}
}
\newpage
- \buildMeshBWinc[
- mode=ext,
- bbox = show,
- colorBbox = blue!20,
- print=points
- ]
- {mesh.txt}%
+ \buildMeshBWinc[mode=ext,bbox = show,colorBbox = blue!20,print=points]{mesh.txt}%
{%
beginfig(0);
\drawPath
endfig;
}
\newpage
- \buildMeshBWinc[
- mode=ext,
- print=points
- ]
- {mesh.txt}%
+ \buildMeshBWinc[mode=ext,print=points]{mesh.txt}%
{%
beginfig(0);
\drawPath
\contentsline {subsection}{\numberline {4.1}The Options}{16}{subsection.4.1}
\contentsline {subsection}{\numberline {4.2}The \emph {inc} variant}{17}{subsection.4.2}
\contentsline {section}{\numberline {5}With Gmsh}{17}{section.5}
-\contentsline {subsection}{\numberline {5.1}Gmsh and Voronoi Diagrams}{18}{subsection.5.1}
-\contentsline {subsection}{\numberline {5.2}The \emph {inc} variants}{19}{subsection.5.2}
-\contentsline {section}{\numberline {6}Gallery}{19}{section.6}
-\contentsline {subsection}{\numberline {6.1}With Animate}{19}{subsection.6.1}
+\contentsline {subsection}{\numberline {5.1}Gmsh and Voronoi Diagrams}{19}{subsection.5.1}
+\contentsline {subsection}{\numberline {5.2}The Options}{19}{subsection.5.2}
+\contentsline {subsection}{\numberline {5.3}The \emph {inc} variants}{20}{subsection.5.3}
+\contentsline {section}{\numberline {6}Gallery}{21}{section.6}
+\contentsline {subsection}{\numberline {6.1}With Animate}{21}{subsection.6.1}
-- trace Voronoi with MP
-function traceVoronoiMP(listPoints, triangulation,listVoronoi, points, tri)
+function traceVoronoiMP(listPoints, triangulation,listVoronoi, points, tri,styleD,styleV)
+ if(styleD == "dashed") then
+ sDelaunay = "dashed evenly"
+ else
+ sDelaunay = ""
+ end
+ if(styleV == "dashed") then
+ sVoronoi = "dashed evenly"
+ else
+ sVoronoi = ""
+ end
listCircumC = listCircumCenter(listPoints,triangulation)
output = "";
output = output .. " pair MeshPoints[];"
PointJ = listPoints[triangulation[i][2]]
PointK = listPoints[triangulation[i][3]]
if(triangulation[i].type == "bbox") then
- output = output .. "draw (".. PointI.x ..",".. PointI.y ..")*u--("..PointJ.x..",".. PointJ.y ..")*u--("..PointK.x..",".. PointK.y ..")*u--cycle withcolor \\luameshmpcolorBbox;"
+ output = output .. "draw (".. PointI.x ..",".. PointI.y ..")*u--("..PointJ.x..",".. PointJ.y ..")*u--("..PointK.x..",".. PointK.y ..")*u--cycle "..sDelaunay.." withcolor \\luameshmpcolorBbox;"
else
- output = output .. "draw (".. PointI.x ..",".. PointI.y ..")*u--("..PointJ.x..",".. PointJ.y ..")*u--("..PointK.x..",".. PointK.y ..")*u--cycle withcolor \\luameshmpcolor;"
+ output = output .. "draw (".. PointI.x ..",".. PointI.y ..")*u--("..PointJ.x..",".. PointJ.y ..")*u--("..PointK.x..",".. PointK.y ..")*u--cycle "..sDelaunay.." withcolor \\luameshmpcolor;"
end
end
end
for i=1,#listVoronoi do
PointI = listCircumC[listVoronoi[i][1]]
PointJ = listCircumC[listVoronoi[i][2]]
- output = output .. "draw (".. PointI.x ..",".. PointI.y ..")*u--("..PointJ.x..",".. PointJ.y ..")*u withcolor \\luameshmpcolorVoronoi;"
+ output = output .. "draw (".. PointI.x ..",".. PointI.y ..")*u--("..PointJ.x..",".. PointJ.y ..")*u "..sVoronoi.." withcolor \\luameshmpcolorVoronoi;"
end
if(points=="points") then
j=1
-- trace Voronoi with TikZ
-function traceVoronoiTikZ(listPoints, triangulation,listVoronoi, points, tri,color,colorBbox,colorVoronoi)
+function traceVoronoiTikZ(listPoints, triangulation,listVoronoi, points, tri,color,colorBbox,colorVoronoi,styleD,styleV)
+ if(styleD == "dashed") then
+ sDelaunay = ",dashed"
+ else
+ sDelaunay = ""
+ end
+ if(styleV == "dashed") then
+ sVoronoi = ",dashed"
+ else
+ sVoronoi = ""
+ end
listCircumC = listCircumCenter(listPoints,triangulation)
output = ""
for i=1,#listPoints do
PointJ = listPoints[triangulation[i][2]]
PointK = listPoints[triangulation[i][3]]
if(triangulation[i].type == "bbox") then
- output = output .. "\\draw[color="..colorBbox.."] (".. PointI.x ..",".. PointI.y ..")--("..PointJ.x..",".. PointJ.y ..")--("..PointK.x..",".. PointK.y ..")--cycle;"
+ output = output .. "\\draw[color="..colorBbox..sDelaunay.."] (".. PointI.x ..",".. PointI.y ..")--("..PointJ.x..",".. PointJ.y ..")--("..PointK.x..",".. PointK.y ..")--cycle;"
else
- output = output .. "\\draw[color="..color.."] (".. PointI.x ..",".. PointI.y ..")--("..PointJ.x..",".. PointJ.y ..")--("..PointK.x..",".. PointK.y ..")--cycle;"
+ output = output .. "\\draw[color="..color..sDelaunay.."] (".. PointI.x ..",".. PointI.y ..")--("..PointJ.x..",".. PointJ.y ..")--("..PointK.x..",".. PointK.y ..")--cycle;"
end
end
end
for i=1,#listVoronoi do
PointI = listCircumC[listVoronoi[i][1]]
PointJ = listCircumC[listVoronoi[i][2]]
- output = output .. "\\draw[color="..colorVoronoi.."] (".. PointI.x ..",".. PointI.y ..")--("..PointJ.x..",".. PointJ.y ..");"
+ output = output .. "\\draw[color="..colorVoronoi..sVoronoi.."] (".. PointI.x ..",".. PointI.y ..")--("..PointJ.x..",".. PointJ.y ..");"
end
if(points=="points") then
j=1
-- buildVoronoi with MP
-function buildVoronoiMPBW(chaine,mode,points,bbox,scale,tri)
+function buildVoronoiMPBW(chaine,mode,points,bbox,scale,tri,styleD,styleV)
listPoints = buildList(chaine, mode)
triangulation = BowyerWatson(listPoints,bbox)
listVoronoi = buildVoronoi(listPoints, triangulation)
- output = traceVoronoiMP(listPoints,triangulation,listVoronoi,points,tri)
+ output = traceVoronoiMP(listPoints,triangulation,listVoronoi,points,tri,styleD,styleV)
output = "\\leavevmode\\begin{mplibcode}beginfig(0);u:="..scale.. ";" .. output .."endfig;\\end{mplibcode}"
tex.sprint(output)
end
-- buildVoronoi with TikZ
-function buildVoronoiTikZBW(chaine,mode,points,bbox,scale,tri,color,colorBbox,colorVoronoi)
+function buildVoronoiTikZBW(chaine,mode,points,bbox,scale,tri,color,colorBbox,colorVoronoi,styleD,styleV)
listPoints = buildList(chaine, mode)
triangulation = BowyerWatson(listPoints,bbox)
listVoronoi = buildVoronoi(listPoints, triangulation)
- output = traceVoronoiTikZ(listPoints,triangulation,listVoronoi,points,tri,color,colorBbox,colorVoronoi)
+ output = traceVoronoiTikZ(listPoints,triangulation,listVoronoi,points,tri,color,colorBbox,colorVoronoi,styleD,styleV)
output = "\\noindent\\begin{tikzpicture}[x=" .. scale .. ",y=" .. scale .."]" .. output .."\\end{tikzpicture}" tex.sprint(output)
end
-- buildVoronoi with MP
-function buildVoronoiMPBWinc(chaine,beginning, ending,mode,points,bbox,scale,tri)
+function buildVoronoiMPBWinc(chaine,beginning, ending,mode,points,bbox,scale,tri,styleD,styleV)
listPoints = buildList(chaine, mode)
triangulation = BowyerWatson(listPoints,bbox)
listVoronoi = buildVoronoi(listPoints, triangulation)
- output = traceVoronoiMP(listPoints,triangulation,listVoronoi,points,tri)
+ output = traceVoronoiMP(listPoints,triangulation,listVoronoi,points,tri,styleD,styleV)
output = "\\leavevmode\\begin{mplibcode}u:="..scale..";"..beginning .. output .. ending .. "\\end{mplibcode}"
tex.sprint(output)
end
-- buildVoronoi with TikZ
function buildVoronoiTikZBWinc(chaine,beginning, ending,mode,points,bbox,scale,tri,color,colorBbox,colorVoronoi)
- listPoints = buildList(chaine, mode)
+ listPoints = buildList(chaine, mode,styleD,styleV)
triangulation = BowyerWatson(listPoints,bbox)
listVoronoi = buildVoronoi(listPoints, triangulation)
- output = traceVoronoiTikZ(listPoints,triangulation,listVoronoi,points,tri,color,colorBbox,colorVoronoi)
+ output = traceVoronoiTikZ(listPoints,triangulation,listVoronoi,points,tri,color,colorBbox,colorVoronoi,styleD,styleV)
output = "\\noindent\\begin{tikzpicture}[x=" .. scale .. ",y=" .. scale .."]" ..beginning.. output..ending .."\\end{tikzpicture}"
tex.sprint(output)
end
-- buildVoronoi with MP
-function gmshVoronoiMP(file,points,scale,tri)
+function gmshVoronoiMP(file,points,scale,tri,styleD,styleV)
listPoints,triangulation = readGmsh(file)
listVoronoi = buildVoronoi(listPoints, triangulation)
- output = traceVoronoiMP(listPoints,triangulation,listVoronoi,points,tri)
+ output = traceVoronoiMP(listPoints,triangulation,listVoronoi,points,tri,styleD,styleV)
output = "\\leavevmode\\begin{mplibcode}beginfig(0);u:="..scale.. ";" .. output .."endfig;\\end{mplibcode}"
tex.sprint(output)
end
-- buildVoronoi with TikZ
-function gmshVoronoiTikZ(file,points,scale,tri,color,colorVoronoi)
+function gmshVoronoiTikZ(file,points,scale,tri,color,colorVoronoi,styleD,styleV)
listPoints,triangulation = readGmsh(file)
listVoronoi = buildVoronoi(listPoints, triangulation)
- output = traceVoronoiTikZ(listPoints,triangulation,listVoronoi,points,tri,color,colorBbox,colorVoronoi)
+ output = traceVoronoiTikZ(listPoints,triangulation,listVoronoi,points,tri,color,colorBbox,colorVoronoi,styleD,styleV)
output = "\\noindent\\begin{tikzpicture}[x=" .. scale .. ",y=" .. scale .."]" .. output .."\\end{tikzpicture}" tex.sprint(output)
end
-- buildVoronoi with MP
-function gmshVoronoiMPinc(file,beginning, ending,points,scale,tri)
+function gmshVoronoiMPinc(file,beginning, ending,points,scale,tri,styleD,styleV)
listPoints,triangulation = readGmsh(file)
listVoronoi = buildVoronoi(listPoints, triangulation)
- output = traceVoronoiMP(listPoints,triangulation,listVoronoi,points,tri)
+ output = traceVoronoiMP(listPoints,triangulation,listVoronoi,points,tri,styleD,styleV)
output = "\\leavevmode\\begin{mplibcode}u:="..scale..";"..beginning .. output .. ending .. "\\end{mplibcode}"
tex.sprint(output)
end
-- buildVoronoi with TikZ
-function gmshVoronoiTikZinc(file,beginning, ending,points,scale,tri,color,colorVoronoi)
+function gmshVoronoiTikZinc(file,beginning, ending,points,scale,tri,color,colorVoronoi,styleD,styleV)
listPoints,triangulation = readGmsh(file)
listVoronoi = buildVoronoi(listPoints, triangulation)
- output = traceVoronoiTikZ(listPoints,triangulation,listVoronoi,points,tri,color,colorBbox,colorVoronoi)
+ output = traceVoronoiTikZ(listPoints,triangulation,listVoronoi,points,tri,color,colorBbox,colorVoronoi,styleD,styleV)
output = "\\noindent\\begin{tikzpicture}[x=" .. scale .. ",y=" .. scale .."]" ..beginning.. output..ending .."\\end{tikzpicture}"
tex.sprint(output)
end
\def\luameshval@bvi@print{points}%
\fi%
}%
+%% style dashed Delaunay
+\define@choicekey*{buildVoronoiInc}{styleDelaunay}[\val\nr]{none, dashed}{%
+ \ifcase\nr\relax%
+ \def\luameshval@bvi@styleDelaunay{none}%
+ \or%
+ \def\luameshval@bvi@styleDelaunay{dashed}%
+ \fi%
+}%
+%% style dashed Voronoi
+\define@choicekey*{buildVoronoiInc}{styleVoronoi}[\val\nr]{none, dashed}{%
+ \ifcase\nr\relax%
+ \def\luameshval@bvi@styleVoronoi{none}%
+ \or%
+ \def\luameshval@bvi@styleVoronoi{dashed}%
+ \fi%
+}%
%% the name of the point
\define@key{buildVoronoiInc}{meshpoint}[P]{\def\luameshval@bvi@meshpoint{#1}}%
%% the name of the circum point
%% the name of the color of drawing the bbox
\define@key{buildVoronoiInc}{colorBbox}[black]{\def\luameshval@bvi@colorbbox{#1}}%
%
-\presetkeys{buildVoronoiInc}{tikz=false,bbox=none,scale, meshpoint,circumpoint,mode=int,print=none,color,colorVoronoi,colorBbox,delaunay=none}{}%
+\presetkeys{buildVoronoiInc}{tikz=false,bbox=none,scale, meshpoint,circumpoint,mode=int,print=none,color,colorVoronoi,colorBbox,delaunay=none,styleDelaunay=none,styleVoronoi=none}{}%
%
\newcommand*{\buildVoronoiBWinc}[4][]{%
% #1 : optionnal arguments
\def\CircumPoint{\luameshval@bvi@circumpoint}%
\ifKV@buildVoronoiInc@tikz% if we are using tikz
\directlua{%
- buildVoronoiTikZBWinc("#2","\luaescapestring{\unexpanded{#3}}","\luaescapestring{\unexpanded{#4}}","\luameshval@bvi@mode","\luameshval@bvi@print","\luameshval@bvi@bbox","\luameshval@bvi@scale","\luameshval@bvi@delaunay","\luameshval@bvi@color","\luameshval@bvi@colorbbox","\luameshval@bvi@colorvoronoi")%
+ buildVoronoiTikZBWinc("#2","\luaescapestring{\unexpanded{#3}}","\luaescapestring{\unexpanded{#4}}","\luameshval@bvi@mode","\luameshval@bvi@print","\luameshval@bvi@bbox","\luameshval@bvi@scale","\luameshval@bvi@delaunay","\luameshval@bvi@color","\luameshval@bvi@colorbbox","\luameshval@bvi@colorvoronoi","\luameshval@bvi@styleDelaunay","\luameshval@bvi@styleVoronoi")%
}%
\else % we are using MP
\mplibcolor{\luameshmpcolor}{\luameshval@bvi@color}%
\mplibcolor{\luameshmpcolorBbox}{\luameshval@bvi@colorbbox}%
\mplibcolor{\luameshmpcolorVoronoi}{\luameshval@bvi@colorvoronoi}%
\directlua{%
- buildVoronoiMPBWinc("#2","\luaescapestring{\unexpanded{#3}}","\luaescapestring{\unexpanded{#4}}","\luameshval@bvi@mode","\luameshval@bvi@print","\luameshval@bvi@bbox","\luameshval@bvi@scale","\luameshval@bvi@delaunay")%
+ buildVoronoiMPBWinc("#2","\luaescapestring{\unexpanded{#3}}","\luaescapestring{\unexpanded{#4}}","\luameshval@bvi@mode","\luameshval@bvi@print","\luameshval@bvi@bbox","\luameshval@bvi@scale","\luameshval@bvi@delaunay","\luameshval@bvi@styleDelaunay","\luameshval@bvi@styleVoronoi")%
}%
%
\fi%
\def\luameshval@bv@mode{ext}%
\fi%
}%
+%% style dashed Delaunay
+\define@choicekey*{buildVoronoi}{styleDelaunay}[\val\nr]{none, dashed}{%
+ \ifcase\nr\relax%
+ \def\luameshval@bv@styleDelaunay{none}%
+ \or%
+ \def\luameshval@bv@styleDelaunay{dashed}%
+ \fi%
+}%
+%% style dashed Voronoi
+\define@choicekey*{buildVoronoi}{styleVoronoi}[\val\nr]{none, dashed}{%
+ \ifcase\nr\relax%
+ \def\luameshval@bv@styleVoronoi{none}%
+ \or%
+ \def\luameshval@bv@styleVoronoi{dashed}%
+ \fi%
+}%
%% the mode for reading the points
\define@choicekey*{buildVoronoi}{delaunay}[\val\nr]{none, show}{%
\ifcase\nr\relax%
%% the name of the color of drawing the bbox
\define@key{buildVoronoi}{colorBbox}[black]{\def\luameshval@bv@colorbbox{#1}}%
%
-\presetkeys{buildVoronoi}{tikz=false,bbox=none,scale, meshpoint,circumpoint,mode=int,print=none,color,colorVoronoi,colorBbox,delaunay=none}{}%
+\presetkeys{buildVoronoi}{tikz=false,bbox=none,scale,
+ meshpoint,circumpoint,mode=int,print=none,color,colorVoronoi,colorBbox,delaunay=none,styleDelaunay=none, styleVoronoi=none}{}%
%
\newcommand{\buildVoronoiBW}[2][]{%
% #1 : optionnal arguments
\def\CircumPoint{\luameshval@bv@circumpoint}%
\ifKV@buildVoronoi@tikz% if we are using tikz
\directlua{%
- buildVoronoiTikZBW("#2","\luameshval@bv@mode","\luameshval@bv@print","\luameshval@bv@bbox","\luameshval@bv@scale","\luameshval@bv@delaunay","\luameshval@bv@color","\luameshval@bv@colorbbox","\luameshval@bv@colorVoronoi")%
+ buildVoronoiTikZBW("#2","\luameshval@bv@mode","\luameshval@bv@print","\luameshval@bv@bbox","\luameshval@bv@scale","\luameshval@bv@delaunay","\luameshval@bv@color","\luameshval@bv@colorbbox","\luameshval@bv@colorVoronoi","\luameshval@bv@styleDelaunay","\luameshval@bv@styleVoronoi")%
}%
\else % we are using MP
\mplibcolor{\luameshmpcolor}{\luameshval@bv@color}%
\mplibcolor{\luameshmpcolorBbox}{\luameshval@bv@colorbbox}%
\mplibcolor{\luameshmpcolorVoronoi}{\luameshval@bv@colorVoronoi}%
\directlua{%
- buildVoronoiMPBW("#2","\luameshval@bv@mode","\luameshval@bv@print","\luameshval@bv@bbox","\luameshval@bv@scale","\luameshval@bv@delaunay")%
+ buildVoronoiMPBW("#2","\luameshval@bv@mode","\luameshval@bv@print","\luameshval@bv@bbox","\luameshval@bv@scale","\luameshval@bv@delaunay","\luameshval@bv@styleDelaunay","\luameshval@bv@styleVoronoi")%
}%
%
\fi%
\def\luameshval@gvi@delaunay{show}%
\fi%
}%
+%% style dashed Delaunay
+\define@choicekey*{gmshVoronoiInc}{styleDelaunay}[\val\nr]{none, dashed}{%
+ \ifcase\nr\relax%
+ \def\luameshval@gvi@styleDelaunay{none}%
+ \or%
+ \def\luameshval@gvi@styleDelaunay{dashed}%
+ \fi%
+}%
+%% style dashed Voronoi
+\define@choicekey*{gmshVoronoiInc}{styleVoronoi}[\val\nr]{none, dashed}{%
+ \ifcase\nr\relax%
+ \def\luameshval@gvi@styleVoronoi{none}%
+ \or%
+ \def\luameshval@gvi@styleVoronoi{dashed}%
+ \fi%
+}%
%% the name of the color of drawing
\define@key{gmshVoronoiInc}{color}[black]{\def\luameshval@gvi@color{#1}}%
%% the name of the color of drawing Voronoi
\define@key{gmshVoronoiInc}{colorVoronoi}[red]{\def\luameshval@gvi@colorvoronoi{#1}}%
%
-\presetkeys{gmshVoronoiInc}{tikz=false,scale, meshpoint,circumpoint,print=none,color,colorVoronoi,delaunay=none}{}%
+\presetkeys{gmshVoronoiInc}{tikz=false,scale,
+ meshpoint,circumpoint,print=none,color,colorVoronoi,delaunay=none,styleVoronoi=none, styleDelaunay=none}{}%
%
-\newcommand*{\gmshVoronoiBWinc}[4][]{%
+\newcommand*{\gmshVoronoiinc}[4][]{%
% #1 : optionnal arguments
% #2 : the gmsh file
% #3 : the code to place before the generated one
\def\CircumPoint{\luameshval@gvi@circumpoint}%
\ifKV@gmshVoronoiInc@tikz% if we are using tikz
\directlua{%
- gmshVoronoiTikZinc("#2","\luaescapestring{\unexpanded{#3}}","\luaescapestring{\unexpanded{#4}}","\luameshval@gvi@print","\luameshval@gvi@scale","\luameshval@gvi@delaunay","\luameshval@gvi@color","\luameshval@gvi@colorvoronoi")%
+ gmshVoronoiTikZinc("#2","\luaescapestring{\unexpanded{#3}}","\luaescapestring{\unexpanded{#4}}","\luameshval@gvi@print","\luameshval@gvi@scale","\luameshval@gvi@delaunay","\luameshval@gvi@color","\luameshval@gvi@colorvoronoi","\luameshval@gvi@styleDelaunay","\luameshval@gvi@styleVoronoi")%
}%
\else % we are using MP
\mplibcolor{\luameshmpcolor}{\luameshval@gvi@color}%
\mplibcolor{\luameshmpcolorVoronoi}{\luameshval@gvi@colorvoronoi}%
\directlua{%
- gmshVoronoiMPinc("#2","\luaescapestring{\unexpanded{#3}}","\luaescapestring{\unexpanded{#4}}","\luameshval@gvi@print","\luameshval@gvi@scale","\luameshval@gvi@delaunay")%
+ gmshVoronoiMPinc("#2","\luaescapestring{\unexpanded{#3}}","\luaescapestring{\unexpanded{#4}}","\luameshval@gvi@print","\luameshval@gvi@scale","\luameshval@gvi@delaunay","\luameshval@gvi@styleDelaunay","\luameshval@gvi@styleVoronoi")%
}%
%
\fi%
\def\luameshval@gv@delaunay{show}%
\fi%
}%
+%% style dashed Delaunay
+\define@choicekey*{gmshVoronoi}{styleDelaunay}[\val\nr]{none, dashed}{%
+ \ifcase\nr\relax%
+ \def\luameshval@gv@styleDelaunay{none}%
+ \or%
+ \def\luameshval@gv@styleDelaunay{dashed}%
+ \fi%
+}%
+%% style dashed Voronoi
+\define@choicekey*{gmshVoronoi}{styleVoronoi}[\val\nr]{none, dashed}{%
+ \ifcase\nr\relax%
+ \def\luameshval@gv@styleVoronoi{none}%
+ \or%
+ \def\luameshval@gv@styleVoronoi{dashed}%
+ \fi%
+}%
%% the name of the color of drawing
\define@key{gmshVoronoi}{color}[black]{\def\luameshval@gv@color{#1}}%
%% the name of the color of drawing Voronoi
\define@key{gmshVoronoi}{colorVoronoi}[red]{\def\luameshval@gv@colorVoronoi{#1}}%
%
-\presetkeys{gmshVoronoi}{tikz=false,scale, meshpoint,circumpoint,print=none,color,colorVoronoi,delaunay=none}{}%
+\presetkeys{gmshVoronoi}{tikz=false,scale, meshpoint,circumpoint,print=none,color,colorVoronoi,delaunay=none,styleVoronoi=none, styleDelaunay=none}{}%
%
\newcommand{\gmshVoronoi}[2][]{%
% #1 : optionnal arguments
\def\CircumPoint{\luameshval@gv@circumpoint}%
\ifKV@gmshVoronoi@tikz% if we are using tikz
\directlua{%
- gmshVoronoiTikZ("#2","\luameshval@gv@print","\luameshval@gv@scale","\luameshval@gv@delaunay","\luameshval@gv@color","\luameshval@gv@colorVoronoi")%
+ gmshVoronoiTikZ("#2","\luameshval@gv@print","\luameshval@gv@scale","\luameshval@gv@delaunay","\luameshval@gv@color","\luameshval@gv@colorVoronoi","\luameshval@gv@styleDelaunay","\luameshval@gv@styleVoronoi")%
}%
\else % we are using MP
\mplibcolor{\luameshmpcolor}{\luameshval@gv@color}%
\mplibcolor{\luameshmpcolorVoronoi}{\luameshval@gv@colorVoronoi}%
\directlua{%
- gmshVoronoiMP("#2","\luameshval@gv@print","\luameshval@gv@scale","\luameshval@gv@delaunay")%
+ gmshVoronoiMP("#2","\luameshval@gv@print","\luameshval@gv@scale","\luameshval@gv@delaunay","\luameshval@gv@styleDelaunay","\luameshval@gv@styleVoronoi")%
}%
%
\fi%