Cut surface in grasshopper/rhino

Hi I was wondering if it is possible to cut a surface like the following picture (along the yellow and orange lines) but the torus remain same visually, just like there are seams? But when I use a surface to cut the torus, it extended the surface and cut the part it shouldn’t be cut. I was wondering if anyone has a solution to this problem. Thank you.

1 Like

Do you mean split so you can get the other fragment?

What component are you using to cut the torus?

Thanks for your reply. I mean I only want to cut the torus like figure 1(the first figure). But it cut the torus like figure 2(the second figure), the torus become half and half. I am using surface split component to cut.

In figure 1, there are two seams/cut lines, but the torus should be still an entire surface.

I’m lost (sorry, I know it’s simple, lol) but how is the torus ‘an entire surface’ still after it’s cut? :melting_face:

You mean all fragments are supposed to still be visible after splitting?

The first figure shows two ‘rings’ as cut lines, which would translate to two slice planes? That results in 4 fragments.

If you’re intending to only use one horizontal ring (interior torus intersection or an isocurve) and one vertical ring, I’m not sure you’ll get a normal result as the surface is closed?

“If you’re intending to only use one horizontal ring (interior torus intersection or an isocurve) and one vertical ring, I’m not sure you’ll get a normal result as the surface is closed?”

Yes, it is what exactly I want. I am not sure how to do it. It it is not possible. Would it be possible if I convert the surface to other data format?

I am not sure if this help the explanation. I plan to use TriRemesh component after the surface split, I want the cutting lines to be recognize as boundary in mesh.

if you mesh the torus maybe you can unweld the edge rings where those curves are?

Yeah, that is an option, but I was wondering, if I make each cutter rings has a certain thickness with small value, then the surface method would work?

1 Like

It should work, however it will create long, narrow ‘openings’ (slits), or holes, along your intersections between the thickened rings and the torus - not sure if this is still ‘valid’ based on your topic title or intent? Cutting is cutting , though, so maybe yes.

Ten posts so far and you still haven’t posted any code?

3. Attach minimal versions of all the relevant files

1 Like

Thanks. My intend is to cut the surface with two rings. With narrow openings would be fine, as I can set the thickness to a very small value.

But I was wondering if I should use other componenets? It still cut the torus into half even though I thick the rings. (14.3 KB)

You’re using a torus generated with Lunchbox, which I don’t have installed, so I’m using another torus as example.

Perhaps TrimSolid?

Check this to see if it’s useful: (14.1 KB)


I don’t either. With no code posted, I just ignored this thread. But how hard can this be?

@kunpanda can you post your torus geometry, internalized?

@René_Corella it looks like your torus is not centered at the origin, which would make this easier…?

Silly exercise! Cutters are in white group, but since you haven’t cut completely through the torus, it’s still one surface. (11.9 KB)

P.S. Make the cutters thick and it’s obvious it works, especially when you move two of the fragments. (14.1 KB)


Lol there’s more that I don’t know about @kunpanda ’s process than what I know - so I just gave a system that slits the torus surface wherever it’s located, using its default planar edges. I didn’t split it, I trimmed it based on kunpanda’s explanations. I guess to streamline things a bit it I’d turn the edges into pipes of a very small radius and perform the trim or split or whatever with them instead of thickened planes.

Just a silly idea, you could sweep an almost-closed arc along another almost-closed arc (12.7 KB)

but the main question is what you are going to do with this torus, that it needs to be open :smiley: