WISH: History for MatchSrf command

It might be useful, if MatchSrf would support history, so the matching surfaces update their continuity, when their shape changes. See the following modelling situation where a five-sided hole is filled with a smooth transition:

The curves (1) define the interior of the multi-patch blend. Each of them split an edge of the hole to ensure continuity across the seems. The star point indicates, that all end tangents lie in the same plane. This topology is applicable to all n-sided holes (the similarity to the star points of T-Splines is obvious). The surfaces (2) are then created with EdgeSrf and afterwards matched to each other.

The only problem of this approach is to find curves that result in a really fluent looking blend. As you see on the image, the lightning still shows discontinuities. Removing them is currently a very time consuming task:

  • Create the surfaces from curves
  • Match their edges
  • See if the result has curvature discontinuities near the seems
  • If yes, adjust the curves a little, delete and rebuild the surfaces, match again, and so on…

This process would be drastically accellerated, if MatchSrf could automatically update the edge rows of their parent surfaces:

  • Create the surfaces from curves with history on
  • Match their edges with history on
  • Adjust the multi-patch blend just by editing the control points of the input curves. With the immediate feedback it should become easy to find out the optimal curves.

Thanks LS for the suggestion and the detailed feedback! I’ve filed this feature request as RH-22352 (the report is not public at this time). The developers will look into it ASAP to see if we can add this type of history.


Great! I’ve also made some tests with NetworkSrf which has built-in tangency options. In the above model the command line says “History failed to update 1 object” when editing one of the creator curves. In a simpler setup with rectangular surfaces, it worked fine. It seems that history has some limitations when it comes to nesting (curve -> surface -> edge -> surface).