# Jeener's Flower

Jeener's Flower is a minimal surface attributed to the french engraver Patrice Jeener whom we can see here:

The DNA of his flower can be written as

rep = ReplaceAll[z :> x + I y];

a = rep @ Re[(z + z^5/2) * I];
b = rep @ Re[z - z^5/2];
c = rep @ Re[z^4];


and viewed with

ParametricPlot3D[{a, b, c}, {x, -1.6, 1.6}, {y, -1.6, 1.6},
BoundaryStyle -> Automatic,
ColorFunction -> "RedBlueTones",
Mesh -> 30,
PlotPoints -> 60,
PlotRange -> All]


Based upon kglr's answer to my recent question: A perforated ding dong surface

I wanted to show it like

ParametricPlot3D[{a, b, c}, {x, -1.6, 1.6}, {y, -1.6, 1.6},
ColorFunction -> "RedBlueTones",
Extrusion -> .5,
Mesh -> {61, 60},
MeshShading -> {{Automatic, Automatic}, {None, Automatic}},
MeshStyle -> None,
PlotPoints -> {41, 41},
PlotRange -> All]


But I couldn't produce a closed surface - regardless of PlotPoints and Mesh settings chosen. The same problem arises with other less complicated surfaces, but not, for example, with a Catenoid.

I don't have this problem with my Python version of ParametricPlot3D which displays in Blender like

The simple solution used there: Loop over all (rectangular) polygons and throw away the unwanted ones.

Any help would be highly appreciated.

• MeshShading->{{Automatic,Automatic},{Automatic,None}} seems to work. Commented Oct 5, 2023 at 18:09

Specifying explicit list of mesh divisions (rather than the number of them) gives more control. The following mesh specs gives a picture close enough to the desired result:

meshlist = Rescale[#, MinMax @ #, {-1.6, 1.6}] & @
Accumulate[Flatten @ ConstantArray[{1, 1/3}, 20]];

ParametricPlot3D[{a, b, c},
{x, -1.6, 1.6}, {y, -1.6, 1.6},
ColorFunction -> "RedBlueTones",
Extrusion -> .5,
Mesh -> {meshlist , Rest@ meshlist},
MeshShading -> {{Automatic, Automatic}, {None, Automatic}},
MeshStyle -> None,
PlotPoints -> {41, 41},
ImageSize -> Large,
PlotRange -> All]


Replace 15 with 25 in definition of meshlist to get:

• Thank you so much! One additional question: Where does this Extrusion come from? It displays in red and I couldn't find it in the documentation.
– eldo
Commented Oct 5, 2023 at 23:11
• @eldo, it is still undocumented . It has worked since v10 -- perhaps earlier. The earliest mention on this site is this answer by Simon Woods. To avoid red highlighting, you can use it as a Method suboption (e.g., Method -> {"Extrusion" -> 1, "ExtrusionStyle" -> White}.
– kglr
Commented Oct 6, 2023 at 6:44