Extend surface to meet edge of other surface


The two dark surfaces in the image above are at an odd angle against each other. I want to extend the left surface up so the edges intersect, but regardless of the amounts of snaps I enable, I can’t get the tool to snap to that edge.

In fact, if I hover anywhere along the edge I want to snap to, my cursor gets replaced with a “forbidden”
symbol, which I find strange.

Anyone have any suggestions?

I didn’t try this, but it seems I have dosne somthing similar long time ago, so it came to mind that perhaps you can draw a curve “Perpendicular From” to snap to the target edge, and then drag (extend) the source edge (the “from edge”) along that curve OSnapping to its ends?

Perpendiular From should ensure that you don’t “shear” the source surface on dragging/extending its edge.

Am I completely off?

// Rolf

I think you might be a bit off, because there is no perpendicular relation between the two surfaces, they are at completely odd angles between each other, but they do intersect.

“Perpendicular From” only regards the source surface, it has nothing to do with the relation between them. This is why I was thinking “From” (refering to only one surface edge)

// Rolf

It seems that ExtendSrf works with the following workflow:

  1. Starting from two surfaces with nast u angles towards each other:

  2. Make a Copy of the surface you want to extend, and simply drag-extend (the the gumball) the copy to overlap, like so (the original surface is the square in the middle of the drag-extended copy):

  3. Run “Intersect” do get a short line be placed with one of its ends exactly at the target edge, like so:

  4. Delete the extended overlapping copy, an you should have a short line laying on the target surface (that yellow stump):

  5. Now use _ExtendSrf to extend the source edge aiming with OSnap End at the endpoint of that little intersetion line from #2 above:

// Rolf

I still can’t get that to work, because the extend surface snapping seems to rely on the arbitrary position you clicked on to initiate the command, and from what I can tell, there’s no guarantee that you are clicking on the exact intersection.

Also, and I had to take a photo of my screen to do this, but if I even approach the edge of the other surface that I want to intersect with, here’s what my cursor turns into during the extend surface command:

It’s like Rhino is actively trying to prevent me from matching untrimmed surface edges…

Post your model here so we can see the actual surfaces. If you can’t post the whole model for confidentiality reasons, select the two surfaces and export them into a separate model.


I even duplicated the surface edge now and snapped it to where I want it. Yet, the extend surface command completely ignores it, regardless of snapping options!

extend.3dm (50.9 KB)

I guess I can extend past, and then trim convert using that moved and duplicated edge, but man, that’s a lot of steps for something that should just be a simple snap!

I hope I’m missing something obvious here…

OK, here’s what you need to do:

After selecting the edge to extend, in the command line select the SetBasePoint option: this allows you to snap the white line to the bottom of your intersection. Then you can drag the edge down to meet the other one.


1 Like

Thank you! I didn’t notice that option previously, so I really was missing something semi-obvious. :slight_smile:

The white line’s initial position is tied to where you select the edge so if you are accurate/lucky you often don’t need to shift it, but sometimes it’s a boon to be able to.

So I had to look up this workflow again today, and at least to get this working for me, after step 2 I have to do this before 3:

2a. Use ExtractIsoCurve on the extended surface and snap to the end of the intersected curve.
4. Use ExtendSrf with SetBasePoint to go from the start of the extracted iso curve to the end of the intersected curve (using Osnap Int), as the extend tool only work in the iso direction.

Just for future (self) reference. :slight_smile:

1 Like