1. ## Creating holes

I am trying to draw a wing rib for a plane. So far I have been able to create the 2D design, but I am having trouble creating the voids in 3D.

I have tried using Boolean Difference this way:
I selected the outside curve and extruded it with a cap. Then I extruded the inside shapes without cap. All curves were extruded by the same distance.
Then I selected Boolean Difference. The first thing I selected was the outside curve. Then I selected the inside shapes.

At the completion of the action, I still had a capped surface based on the outside curve, and no voids.

What is the method to use?

Old Man Emu

2. Emu -

For one, the 3 closed curves do not lie in the same plane. If you extruded them the same distance, they may only partially intersect. You could projecttocplane from topview to get all the curves on the same plane, then extrude them together as you tried.

There are a number of ways to do this...

Method 1 - If they are on the same plane, select all 3 closed curves and extrude (capped). That would create a solid with the wing shape with two voids in the center. Simplest method, if I am reading your request correct.

Method 2 - Again, if on the same plane, select all 3 curves, PlanarSrf to create a single surface, then ExtrudeSrf the surface to get a solid as above.

Method 3 - If you need to maintain different Z locations of the curves: Extrude the outer contour (capped) whatever distance you need. Then extrude (capped) the other 2 interior curves a distance greater than the outer contour, so the resultant solids protrude from both top and bottom faces of the outer solid. Now use your BooleanDifference, selecting the large wing solid as the first set, then the 2 interior solids as the second set. Then delete the interior solids, and you have your wing solid with two voids.

Whenever I use BooleanDiff, I try to make sure that the objects I am subtracting with extend beyond the object I am subtracting from. If surfaces from the two sets are along the same plane, it tends not to actually create the 'holes' on those faces, even if the booleandiff behaves properly on the interior of the object.

Method 4-100...there are so many ways to do this in Rhino, it's a matter of finding the one that is right for you.

Hope this helps.

3. JDcam,

Thank you for your suggestions to solve my dilemma. This bit:

"Whenever I use BooleanDiff, I try to make sure that the objects I am subtracting with extend beyond the object I am subtracting from."

Seems to apply to all actions where a cut or trim will be made. That is, make the thing that is going to be cut or trimmed extend past the point that you want it to finish at.

Since it's a rainy, cold Sunday, I think I'll sit here at the computer and redo everything from the start. Once one knows what to do, the task can be completed so much quicker.

Old Man Emu

4. I find that when dealing with contours and individual surfaces, editing is pretty straightforward in Rhino, having dealt with it for about 7 years now. The only problems I run into in those areas are usually my own fault...bad curves, different planes, command options, not enough coffee, etc.

However, dealing with large elaborate open polysurfaces and closed polysurfaces (solids), the Rhino Solid Boolean operations tend to be a bit flaky, and fail often. Solids are not Rhino's strong point, and that's simply a result of the NURBS environment. Other CAD systems like SolidWorks are better in those regards.

In terms of working with complicated Organic surfaces however, including reverse-engineering shapes and such, I have yet to find anything under \$30k that comes close to what Rhino can do. It's a superior CAD system for specific applications...and acceptable for most others.

Like with any system, it takes time and practice to get used to Rhino's quirks and limitations, and those hard to find helpful tools...I've been there. In fact, 7 years later, I'm still getting my butt kicked on a routine basis by it, and still discovering some method or command I wasn't aware of before.

Best of luck on your project, we're here if you need something.

5. I'm pleased to report that, by applying the advice given, I successfully completed creating the drawings for my wing rib. It seems that the lesson here is to go large, then trim to fit.

My next step is to use RhinoCam to produce the G-Code so I can get the ribs cut on a CNC machine.

Old Man Emu