How to make this shape?

I’m trying to create a shape like a panel from the eden project biodome.

I simply used Rebuild and dragged the control points up in Z, but I’m not sure how to keep the edges flat. Doing a rail revolve results in a polygon and not a smooth surface. interesting problem.3dm (82.9 KB)

Any tips?

maybe a bit cheesy of a method but —

place a point in the center and moved vertically:

offset the hexagon outwards then use PlanarSrf to make a surface:
(this surface will be used for a tangent reference in the next step)

use Patch command… select the point and the inner surface edges:

clean up:


Hi Jeff,

I like that cheesy method! I hadn’t thought to use patch- very good!

Thank you!


one method would be, since patch rarely delivers joinable edges also jeffs method not even though it looked promising at first… is to build a degree 1 surface rebuild it to 3 points u and v and elavate the middle point then rebuild again keep degree 1 and use a number wich is dividable by 3… for example 21 worked or 15 but not 30 so it must be uneven i guess.

then use smooth with factor 1 in all directions including fix boundaries just keep hitting the enter button a few times till it gets how you want. the outcome is facetted but depending on what you need it for it may be enough to increase the u and v numbers.

in the lower image i used 73 points in each u and v the outcome is pretty smooth.

Loft to a point may also work?

hmm… not so smooth as I thought…
eden.3dm (160.8 KB)

one solution which delivers a joinable and smooth surface:

first create your polygon then create a straight control point curve over the shorter boundary towards a circle. the circle is just for visualizing actually you can also skip making it. insert 2 symmetric knots left and right from the midpoint and insert 2 kinks at the polygon boundary to secure that the tangency will not exceed the polygon boundary, there may be also other ways doing that. then lift the midpoint up as needed, revolve and trim the rest off.


that surface should join. (or, it did last night.)
at least, when using Andrew’s file and the settings shown in the Patch command screenshot…

idk, i’ll try it again a little later as i could most definitely of made a mistake earlier in thinking they joined up.

Hi Richard,

Thanks for your responses!

I like the results coming from this method but am not able to reproduce it.
How did you create your original degree 1 surface?

I created a surface with PlanarSrf using the hexagon curves.
Then, Rebuild to u3, v3, degree 1.
Move the centerpoint up.
But when I moved the centerpoint up, the surface edges moved with it.

How did you keep your edges flat?

Spinning off of @jeff_hammond 's method above, making the patch tangent to an angled frame (temporary, just to control the patch) you can avoid that reversal in the shape and keep it all bubbly.
HexBubble.3dm (92.6 KB)


1 Like

Thanks Pascal. That’s a useful trick!

Also, Patch pays attention to History, so you can loft two hexagons with history and patch with history… then adjust the level of the outer hexagon to change the tangent angle, and modify the level of the point to change the height of the patch - basically the whole construction is adjustable so you can fine tune.


1 Like


A different approach based on the membrane will be somewhat spherical in the center, and axisymmetric. The result is a curvature continuous polysurface. BulgeDC01.3dm (710.3 KB)

Create the frame and a arc from the center of the bulge to one corner of the frame. Revolve the arc for a surface with a circular edge.

Create a trim curve, ArrayPolar the trim curve, and trim the revolved curve so that it has a scalloped edge.

Create a profile curve in the center of one scallop using BlendCrv with curvature continuity to the edge of the scallop.

Sweep2 the edges of the scallop with points at the ends and the profile curve in the center. Use curvature continuity along the scalloped edge. ArrayPolar the swept surface. Join to a polysurface.


A variation of the method above made with larger scallops.
BulgeDC02.3dm (944.1 KB)

1 Like

i would suggest a _railRevolve (1/6) and then modify the control-points to get the sharp / corners.
(the eden-project does not have sharp corners)

degree 3 -> 3 points at the same location = kink

hexbubble_02_.3dm (79.3 KB)


Nice work Tom!

That’s a great idea Tom!

This morning I started with a trimmed sphere, then did a Sweep2 using the edge of the dome and the hexagon, and two profile curves that were tangential with the sphere.

I then filleted between the swept surfaces. Not a bad result but I prefer your result Tom.

Ok, my last attempt:

Based on the simplicity of Tom’s approach, I did a revolve of the dome shape, rebuilt it to U24 V3, and moved the control points at the perimeter to meet the hexagon. At the points of the hexagon I left a little radius so there wasn’t so much pinching in the corners. It creates the shape with one surface which nice.

I agree that the Eden Project doesn’t have sharp corners, and the corners are what’s creating a problem with too much pinching…

Thanks for your responses everyone. I’ve learnt a thing or three!


1 Like

I like how this approach doesn’t create any pinching in the corners. Nice method, thanks!

Didn’t David Rutten have some sort of clever routine or method to ‘inflate’ solids? Create two hexagons and join them at the edges and then turn up the psi, just like in the real dome. I like your last attempt Andrew, it looks like the closest to reality. I might have a go at this myself, thanks for the challenge.