Projection to surface/polysurface: why two resulting curves instead of one?

Dear Forum Members,

I’m trying to find a way to emulate pulling curves (in this case straight lines) to surfaces that works on both surfaces and polysurfaces. If I understand correctly, pull doesn’t accommodate polysurfaces, so I’ve been trying to use project instead.

I’ve been taking the surface normals at the endpoints of the straight lines and averaging them to get the direction for the projection. I’m not sure if that’s the right thing to do, but it seemed to make sense. Unfortunately, I find I’m sometimes getting more than one resulting projected curve. One of them (which follows the top of the arch in the attached example) is what I want. The other line on the side of the arch is unwanted.

Could someone please help me understand why this is happening? And of course, if there is an existing or better way to do what I’m trying to do, I’d love to hear about it. Am I taking entirely the wrong approach?

The only closely related thread I could find:

suggests using pull for a solution. If that can be made to work for polysurfaces as well, then I’d be interested to know how to accomplish that.

Thank you for any enlightenment you can offer,
Mary

projection example.gh (24.7 KB)

Because the vector intersect with the surface twice

1 Like

Thank you, Seghier. I think this reveals my misunderstanding of how the direction input to the projection component works. I assumed that because the vector was pointing in the positive Z direction that the curve would not also be projected in the other direction. Now I know… Thanks again for your help!

1 Like