The unspittable surface

Why is this seemingly simple task not successful? Use the verticle extrusion to split (or trim) the horzonatal surface. It’s indicated the horizontal is an invalid surface but I don’t know how to correct that problem.

Split.3dm (91.5 KB)

Yeah… the horizontal object is messy - see how the isocurve stops in the middle? DupBorder, delete the surface, and make a new surface from PlanarSrf with the border curves. But… how did it get like that?


Anything listed as invalid is guaranteed to fail somewhere and many Rhino commands filter these objects out so they don’t get processed at all and thus don’t cause crashes, etc.

Already the partial lines you see in the surface are an indication of trouble - a single planar surface shouldn’t have edges that stop in the middle - how were they made?

So, DupBorder the surface then delete it, then explode the curves, simplify for good measure and re-join. You will get 3 closed curves, call PlanarSrf and you will have a nice, new valid surface which splits.


Extracting the face curves I can see they’ve accumulated a huge number of control points, but the original curves used to create with where as simple as they could be. This has been an issue since I began - an increasing number of control points on curves used. It’s like the issue with offsetting creating multiple controly points.

The surface was formed using the planar surface tool and the edges of a mult-surface object

Even after simplifying the curves, they’re still messy

Here’s the original curve used to make the object that was capped.

Split.3dm (111.1 KB)

In your case the control point density does not affect the surface in the least bit. That is a separate issue. Did you do anything else to the surface after you made it and prior to trying to split it?


It’s hard to recall exactly what’s happened with any particular object in this learning process as I’ve rebuilt most of the model numerous times. All the troubles are worth it as I think it develops skills. I’m seeing things work better by the day.

In fact I’m at the point where I think “holy crap, it worked” when I pull of some boolean long shot.:grinning:

On the other hand, there’s occasionally a mis-snap that isn’t apparent until furrther along. When I draw a line from the end point of a curve to another curve that highlights (darkens) and it says ‘end’ I think I’ve what I wanted. But, That’s not always the case. I’ve actually seen instances of this producing a fail as it happened but when I try to repeat it on video the snapping works.

This particular part (model)has been a challenge because of it’s comlexity and that it must fit exactly to other parts of the model.

I may have a fetsih, but I like to see as few isocurves as possible in any particular object. That’s why I’ve rebuilt numerous parts. Maybe that’s not as important a factor as I imagine?


So I remade the object- 2 railed the corners, lofted the flats and top, and then blended the surfaces with arcs added at the quadrants of the upper surface corners. All those surfaces were then joined and the object looked clean. I used planar curves to make the bottom, but when I went to finish it with the cap command it failed.

It also will not work with the planar curves command. Still, when I go to cap or make planar surface it fails.

I thought perhaps there was some misalingment on the center, so I extended all the edges and trimmed them to the center line.

So its strange to me why this is a problem. I checked the objects and they’re all indicated to be valid.SplitMore.3dm (182.8 KB)

Why not just turn them off completely then? (Preferences>General)

If an opening does not cap or a curve will not make a planar surface than either

  1. It’s not completely closed
  2. It’s not planar
  3. Both of the above.


Hence my confusion. The edge analysis shows no open edges besides those in question, and since they were all created by trimming with a planar extrusion they should be planar - no?

Duplicate the open border and see if it’s really closed…

Edit - didn’t see the model above. It’s odd, again… If you split the extruded surface and delete the outer part, then join that with the polysurface, it closes… Some odd just out of tolerance issue I guess, don’t have time to check…

That’s the edge.

I went ahead and mirrored the thing and boolied and it shows this:

So that’s apparently where the problem lies but what?

One of the things you will discover - and I agree it’s not totally logical/consistent, but that’s just the nature of the beast currently - is that planar is much stricter about tolerances than Join is. So things that don’t cap like your opening happen because there is at least one area where the edge is off the theoretical plane by a tiny amount.

In your case, if you dupe the edge and then run a bounding box around it (as it’s parallel to one of the principal planes) you will see that the command actually makes a polysurface box. If the curve was actually considered planar and parallel to one of the axes, it would have made a rectangle. If you measure the thickness of the box, you get 0.0005697 millimeters. That’s a little less than half of your .001 file tolerance, but as I said, planar is very strict and ignores the file tolerances. I’m not sure what the tolerance the planar check uses, but it’s probably several orders of magnitude smaller than the file tolerance. That’s why it doesn’t cap.

On the other hand, Split will pull the trimming curve successfully to your extrusion surface and split it, creating a planar surface that you can join to the rest successfully, because the resulting edges are within joining tolerance. Actually they can be up to 2x the file tolerance away and still join.

So you will need to get used to these paradoxical situations and figure out your workarounds.

All that bla bla aside, I don’t know why the trim resulted in a non planar opening. In order for things to trim correctly, there needs to be something to trim. Perhaps the polysurface was a tiny bit too short already, or there was not enough of the polysurface sticking past the trimming surface so trim correctly…


I tried your split it failed, the original surface isn’t flat. I tested by drawing a new surface plane below, then project curves to new surface. You can either trim/split from there or delete the whole surface leaving the new curves then create surface from planar curves and perform your split/trim.

Yeah, naked edges are a bit of a fact of life at the moment. In most cases for 3D printing I can ignore them, but it’s not good practise.

We have a technique in my class that makes these operations so much easier. Its called “split / split / throw away the garbage.” Catchy, huh? The beauty is two-fold (a) it works when you don’t have solids for Booleans and (2) two surfaces that intersect will split each other reliably and cleanly. It can really speed up modelling when you are building things bigger and then trim back later.

Think of it this way: you don’t even TRY to build surfaces to stop at some plane or, more typically, some complex edge. Build them to go beyond! Then, use another piece of geometry to both split them and close them.


Create or position two intersecting pieces of geometry (can be open or closed, but they must intersect.) Yours is fine.

  • Split part A to part B
  • Split part B to part A
  • Throw away the garbage!
  • Join

<img src=“” width=“689” height=“390”

1 Like

I cover most of this process in this following free lynda video called ‘Dave’s golden construction strategies: How to analyze and model like a pro.’

I noticed that you had a lot of extra curves (and steps!) that would not be necessary if you used some of these strategies. Beyond being faster and cleaner with your modelling, these techniques ALSO help you in making easier changes later. That’s why I developed them; its easy to build something fast … one time. The trick is when you need to tweak it later – without starting completely over.

That’s exactly the essence of my modeling approach. I’m absolutely certain to want or need changes down the line, so at this point I tend to save a good deal of curves for reference. I’m getting more confident and deleting most of my construction artifacts but I like to keep the original clean curves because I discovered that duplicating edges often gives me curves with multipl control points which make for messy looking extrusions, sweeps, etc.

Thanks Dave.

Another way :

Are the resulting surfaces/extrusions created actually messy or do you find that all the isocurves make it messy appearing? There is a big difference between the two. I am all for clean, simple geometry but I think you may be fretting over an issue that is of little concern right now as you learn the inner workings of Rhino.I would venture to guess that some of your modeling discrepancies may be a result of you attempting to “clean up” the model at inopportune times or utilizing an incorrect workflow. That being said I have no way of confirming what I just wrote.

I am curious to know how you continue to introduce additional control points into your models. No offence but something has to be awry in your modeling workflow. I ran a quick test on Mac and PC where I roughly recreated your geometry and I could not duplicate your plethera of control points.

What kind of a mouse are you using? If you are using an apple magic mouse or the track pad I would recommend using a mouse for a PC

I’m using a logictec Performance MX mouse. Attached is an example of what I get if I duplicate an edge of an existing object. What the object was created by was clean. The duplicate is a mess. (3.1 MB)

Those control points are to be expected. When you used the blend commands it has to introduce additional control points to maintain the continuity that you seek. Thus when you duplicate its edge additional points show up. I would not consider that a mess at all. If you had multiple control points occupying the same space then I would consider it a mess.

Can the curves be simplified - sure… but they are not causing any inherent harm to your model so why do you need to? If its because the model then looks “messy” or “too complex” to you then turn off the isocurves and it will feel cleaner. If the control points somehow affect your model and future operations then it does need to be cleaned up

Hi James - one thing to keep in mind is that Sweep2 and BlendSrf both make, generally, surfaces that are more complex than the rails that are input. So duplicating the edge of one of these rarely returns a curve that has much, structurally, to do with the inputs. This is neither right nor wrong, just the way it is. If you recall, many moons ago now, I urged you to use simple curves and lofts and MatchSrf to create these or similar corner transitions - and to distinguish between g1 and g2 continuities so you don’t get your hopes up unnecessarily… If you are concerned about clean and simple modeling with good continuity, that will probably still get you better results. Sweeps can be excellent, but in general the surfaces tend to be complex with multiple knots etc, and consequently more opportunities for curvature 'wobbles.

my 2 piasters worth.

1 Like