-- 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
for i=1,#listPoints do
if(listPoints[i].type == "bbox") then
- if(listPoints[i].type == "bbox") then
- output = output .. "\\draw[color="..colorBbox.."] (" .. listPoints[i].x ..",".. listPoints[i].y .. ") node {$\\bullet$} node[anchor=north east] {$\\MeshPoint^*_{" .. j .. "}$};"
- j=j+1
- else
- output = output .. "\\draw[color="..color.."] (" .. listPoints[i].x ..",".. listPoints[i].y .. ") node {$\\bullet$} node[anchor=north east] {$\\MeshPoint_{" .. i .. "}$};"
- end
+ output = output .. "\\draw[color="..colorBbox.."] (" .. listPoints[i].x ..",".. listPoints[i].y .. ") node {$\\bullet$} node[anchor=north east] {$\\MeshPoint^*_{" .. j .. "}$};"
+ j=j+1
+ else
+ output = output .. "\\draw[color="..color.."] (" .. listPoints[i].x ..",".. listPoints[i].y .. ") node {$\\bullet$} node[anchor=north east] {$\\MeshPoint_{" .. i .. "}$};"
end
end
for i=1,#listCircumC do
-- 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 buildGmshVoronoiMP(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 buildGmshVoronoiTikZ(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 buildGmshVoronoiMPinc(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 buildGmshVoronoiTikZinc(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