Help with 2 axis symmetrical G2 surface

need help with creating a nice G2 continuous surface within this framework.
I have tried for weeks already :confused:
I would like a surface that is as clean as possible without inflection points and which is strictly symmetrical about both axis, and that passes through the two cross-section curves. G0 to the edges of the surfaces. Does anyone have a good method?
FF_srf.3dm (316.7 KB)

Hi JD1 - dunno if the attached is of any use - the surface is a patch. The inputs are the blue and red curves and the Patch is created using the starting surface (on its own layer)

The patch is created with History so monkeying with the red curves can adjust the shape - I scaled them vertically a bit from my original curves so try to control the reverse curve in the surface - try editing some more …

FF_srf_PG.3dm (415.3 KB)
@JD1 - in my attempt, assuming it is on the right track at all, it looks like selecting the middle two points of the red curves, all at once, and scaling (Scale2d) from the origin slightly and moving them vertically slightly (Gumball is perfect - use GumBallDragStrength to fine-tune) may make the adjustment needed.

BTW, I interpreted your request as needing a single surface - is that correct?

@JD1 - same approach - different curves to adjust - the green ones here:
FF_srf_PG_2.3dm (268.9 KB)


Thanks Pascal!

This is at least a simple method with a rather good result.
The end result does´t have to be a single surface. And I am maybe looking for a little more control over the isocurves.

I have been trying a method with several sweeps, trimming and joining. Working my way inwards to the centre. But then I usually end up with a difficult uneven meeting in the middle.

Any tips will be appreciated!


Hello JD1
Here is my attempt. All curves interpolatepoint and Networksurf.FF_srf-test.3dm (510.3 KB)

@JD1 Hi Jon - with multiple surfaces a layout like the attached may work out ok
FF_srf_PG_3.3dm (301.6 KB)


Hi again Pascal, and thank you for your efforts!

Your surfaces look great at each arm, but as you see here the continuity is not as good towards the centre. This is typically what I have run into myself.


Hi Tone, this result is really good.
Could you quickly explain how you did it?


Hi @JD1

Here’s my take on the problem with a short video on how (too big for Discourse - grab from DB)

HTH, Jakob

FF_srf_JN.3dm (849.4 KB)

Sorry JD1
I only just saw this. The process is simple: line 1 then line 2, which intersects line 1 and one of you’re long arcs, followed by line 3, which is an interpolated curve from one end of line 1, through intersection with line 2 to other end of line 1. Then: a, b, c, d and e create the surface using curve network (position only). Array this surface four times about the centre. Curve network again, this time set to curvature (G2) and select the edges of the four surfaces plus your two arcs. Task complete.