# Putting a 2D region plot under a 3D plot

I am trying to plot this 3D function over a hexagonal region:

a1 = Sqrt {1, 0};
a2 = Sqrt {1/2, Sqrt/2};
k = {kx, ky};
S = 1 + Exp[I k. a2] + Exp[I k.(a2 - a1)];
EE = Abs[S]
R = 4 Pi/(3 Sqrt);
ep = Plot3D[{EE, -EE}, {kx, ky} \[Element] RegularPolygon[R, 6], Axes -> False, Boxed -> False, AspectRatio -> 2]


This works fine, but I would also like to draw the region under the 3D graph, something like:

bz = Graphics[RegularPolygon[R, 6]];


or

bz = RegionPlot[RegularPolygon[R, 6]];


However, using

Show[ep, bz]


doesn't work. I have found a few similar questions but they mostly seem to be about contours, I didn't know how to extend this for something as simple as a regular polygon.

• do you want you Polygon flat under the region of 3D !? Mar 28 '19 at 20:28
• Try This p = Graphics3D[Polygon[{{1, 0, 0}, {0, 1, 0}, {0, 0, 1}}]] Mar 28 '19 at 20:30

Try this:

region = Graphics3D[Polygon[CirclePoints[R, 6] /. {x_, y_} :> {x, y, -3}]];
Show[ep,region] • Works perfectly, thank you!
– Ash
Mar 28 '19 at 20:41
• @Ash You are very welcome! Thank you for the accept as well! Mar 28 '19 at 20:42
• That's nice! What AspectRatio did you use?
– mjw
Mar 28 '19 at 21:49
• @mjw Thank you! The aspect ratio is inherited from ep, which was in the OP's original code; they had set it to $2$. Mar 28 '19 at 22:18