Help me understand a basic G2 matching question

I have a surface built from four curves using EdgeSrf:

image

I then use MatchEdge on the left and right side with the following settings:

What now happens is that the bottom edge of the surface lifts away from the ground plane:

The U-direction of the left hand matching surface should all be perfectly horisontal so why does this happen? What did I miss, or what’s the math/underlying theory that causes this? I thought if I have my CVs in order, match results would be predictable.

G2.3dm (161.6 KB)

Hello- your target surface has curvature in both directions -

image

Also, you have ‘Preserve Isocurve Direction’ set.
Hm - it is true that ExtendSrf keeps the extension in that plane though…

-Pascal

I assume by “ground plane” you mean the x=0 plane.

Can you post a file which includes the surface before MatchSrf? A guess is the result you did not expect may be due to using “Preserve isocurve direction”.

As mentioned, the original surface was built using the four encompassing curves and EdgeSrf. I’m more interested to learn if there are better ways to build the surface in this instance!

Your other assumptions are correct.

Trying to understand the algorithm’s behavior here, why would this be significant? As you noticed I have “preserve direction” on, which should mean only normal direction adjustment, and as you saw with ExtendSrf, the U direction is completely horizontal at that bottom edge, so where does the slight elevation in the match result come from? If I purge the history and match with “target direction”, the elevation is still there.

This looks like the same issue: https://mcneel.myjetbrains.com/youtrack/issue/RH-35431/Class-A-wish-Blend-surface-with-G2-on-edges (MatchSrf is mentioned in it, but I didn’t find its own issue.)

My understanding is that the locations of the 3rd row of control points from the edge are set to achieve surface G2 continuity, which is not necessarily isocurve G2 continuity. For the latter, MatchSrf should have Isocurve continuity adjustment instead of Isocurve direction adjustment, where the order of continuity is the same as that of the surface matching.

1 Like

@eobet - the developer has had a look, and thinks this is an error - no reason for that point to be ‘off the ground’.

-Pascal

1 Like

Thanks for having a look!

Full disclosure: Both Siemens NX and Autodesk Alias produce the same result, however only in Alias so far have I found an option to keep it on the ground (called “colinear”). So, it’s perhaps something fundamental with the math which is “technically correct”, but from the outside looking in it still appears odd and seemingly unpredictable… and predictability in a tool allows you to work faster with it, so that’s why I’m trying ot understand this.