From the course: Rhino: Modeling for 3D Printing

What are "bad objects"? - Rhino Tutorial

From the course: Rhino: Modeling for 3D Printing

Start my 1-month free trial

What are "bad objects"?

- [Instructor] So-called bad objects can sometimes show up in your Rhino model and can cause a whole host of issues. It's almost impossible to accurately 3D print a Rhino model, if it's considered bad before you export it. If this sounds scary, don't worry. In most cases, Rhino prevents you from creating this messy geometry. It does happen every once in a while though. So understanding what causes it and how to fix it is very useful. So as it's described on the McNeel Wiki, "bad objects in Rhino are ones that either violate certain NURBS rules or have a structural problem." And that sounds a little vague out of context. Another way to think about it is, Rhino is having a hard time accurately calculating your geometry. You can imagine if Rhino can't understand your geometry then you're going to have some major issues with any type of physical fabrication, including 3D printing. So what causes a bad object? Well, there are a few situations where they might show up. One less common reason is a surface in your model has a collapsed edge or point. This problem happened much more frequently in Rhino three and earlier, but it does show up every once in a while in more recent versions of Rhino. I find that Rhino sometimes creates a merged point for instance, when I run a command, like fill it edge. Another time you might create a bad object is when you import a file from a different modeling program. This geometry might've been completely viable in the original program it was created because Rhino may have a different way of calculating that same geometry though, an import may be flagged as bad. Finally, you may have bad geometry, if you have a model with one or more microscopic objects. This could be a piece of your model that's smaller than the tolerances of your file. You're at risk of creating these minuscule objects when you run commands like bullion, join or merge. You might've noticed that these commands that I just listed are the main ones we would use to make our model watertight for 3D printing. Because of that, you're at a slightly higher risk of creating bad objects during 3D printing projects. So right now these concepts might seem a little vague but let's look at some real world examples to better understand how we could accidentally create a bad object. All right so I have a ship example right here that I'd like to 3D print and I want to determine if it's a bad object or not. So a quick way to do that is to use the command SelBadObjects. And thankfully it tells me that there are no bad objects in my model space. So the good news is Rhino doesn't consider this model a bad object but it's well on its way to becoming one and here's why. If I select this and type in show edges you can see that I have a naked edge at this point here. So visually this point should match up. But for some reason it's just not joining and it's not entirely clear why that is. You can even see if we zoom in that Rhino is having a tough time rendering that point and calculating this curve. So sometimes when you see this weird shading, it might mean that Rhino could create a bad object in the future or the surface is already considered bad. So keep an eye out for that weird shading in your own project. Now, although this project isn't considered a bad object it is a really good example of what could happen with a collapsed point. So to understand that concept, let's take a few steps back and understand how Rhino actually calculates all of its surfaces. So I have extracted here that same surface that is making up the top level of our ship. And the way Rhino calculated this surface was it used directional U and V curves to make up the skeleton of my surface. So when I use the term UV curves what I'm referring to are visually these lines right here that travel in the U and V direction that make up the shape of my surface. And if I were to turn all my points you can see that there's also a network of nerves points that are also part of the surface calculation. So in a well-designed surface, I should have end points for each one of my U and V curves. But in this particular case, I have U and V curves that look like they're all converging on a single point. So this isn't an ideal situation. It's kind of messy geometry. If I were to select this point, you can see that Rhino's actually selecting three surface points. So you can already see that we have points on top of each other, which is probably why Rhino can't join at this single point on our ship. And I could probably, if I select one of these points pull them out. All right, so we actually have a network surface that had all of its points pulled and collapsed into one point. So this surface was made manually. I moved all the points to this single point right here. Rhino doesn't usually make this type of surface on its own. I had to manually create this example to explain that concept of a collapsed point. But it does happen every once in a while so keep an eye out for it so you can avoid it yourself. So the best way to actually fix this model would probably be to extract these surfaces like so. I'm going to use extract surface and delete them. And I'll probably want to rebuild the surface itself based off of the openings of my ship right here. So I could use the surface from two three or four curves right here. And there we go. And I think if we joined this back together. And now we have a closed polysurface. All right, let's look at one more example to better understand the bad object concept. I have another example of right here. I'm going to turn off my ship. And here I have a series of little buildings that I'd like to 3D print. So let's run that same command, SelBadObjects, enter, oh no. And unfortunately this cute little model is considered bad but what exactly is bad about it? So just running the SelBadObject command doesn't actually tell you what's wrong with this model or what Rhino considers to be wrong with this model. A quick way to determine the bad spot in your model is to run the command extract bad surface. All right, so Rhino has identified this one surface as being bad. And visually, now that it's selected, I can see that it's creating this excess geometry right here at the intersection point of another massing right here. And if I delete that and zoom in, you can see that there wasn't a continuous volume from one piece to another. So if I were to run that same command again, SelBadObject this is no longer considered a bad object. The reason this became a bad object is probably through a series of bullion unions. And sometimes it's just really hard to avoid creating a bad object. But checking your geometry every once in a while to see if it's a bad object can help you create a cleaner model that is 3D printable.

Contents