Can you remap uvs on a surface using projection?

I come from a polygon background and I am used to creating custom uvs to override the bad stretching I get from projections. I want to do a similar thing in grasshopper with surfaces. I am supposed to map a bunch of diamonds onto a collection of surfaces.

That was my first hurdle. Each patch has its’ own UVS and caused many errors when orienting the using the orient node. So in my mind, I want to “project” the UVs of my reference surface onto the collection of target surfaces. Is that possible? ergo to override the local space of the surfaces with a projected reference UV set.

That way, I could get the diamonds to orient well, without locally rotating relative to the individual patches. Gah… too many words…

Thanks in advance for any advice.