What does the "U V W" in surface morph mean? And how can I set them?

I want to use the surface morph of GH, however, the U V W is really confusing me. What does it mean? How can I set this (domain)?

Thanks for any help and suggestions!

They are domains of the surface. U is like X direction of surface, V is like Y direction of surface, W is like Z direction of surface (normal direction thickness). UVW are common nomenclature for surface space (non-2d / non-linear) directions. If you reparameterize your surfaces then these domains will be between 0 and 1.

Thank you, Michael!
I tried you suggestion and reparameterized source and target surfaces, and set UVW as 0-1, however, the results are terrible.
If I use the similar rhino command “flow along surface”, it works well.
I made any mistake in GH?

Without a file it’s impossible to tell.

1 Like

Check this out for future help: How to ask effective questions

Hi Michael and David,

Thank you for your patience. Now I have uploaded rhino file and GH file. Please help me have a check.
As you see, the morphed shape is too bad.
morphing.3dm (619.4 KB)
morph.gh (3.6 KB)

Surface Morph needs “Reference Box” as a “Source Domain”, not a Base Surface. Read the input popup tooltip carefully.
Furthermore, your base & target surfaces are both “Trimmed Surface” which aren’t the case for both input surfaces. You should prepare single "Untrimmed Surface"for both surface inputs.
So, for this case, try to use Sporph instead of Surface Morph.
And if you don’t have any knowledge about the “Trimmed Surface” of Nurbs geometry, then please read the link first.

morph_re.gh (650.9 KB)
And this also works.

morph_reV2.gh (1.3 MB)


Thanks, Kim!!

Hi Kim,

Today I carefully studied your two codes. Thank you so much again for your kindness. I learned a lot from your code (especially how to reconstruct an untrimmed surface from a trimmed surface.)

There is one questions I still need your help.
For the UVW setting P0 and P1, why you chose {0.5,0.5,0}?I tried to change it as {1,1,0}, but the results seem to be the same. Actually, I am still confused on the UVW…

The location you choose is the base point of U & V mapping and defines the U & V and normal directions.
Since I reparameterized the base and target surface and I already adjust the both surface’s U & V directions identically, so if you choose whatever location in between 0~1, the result will be the same.
Not exactly the same command, but the Rhino UDT tool’s FlowAlongSrf orSplopworks on a similar principle. Refer if necessary.


I got it, Kim. Thank you for your detailed explanation!