Best approach allow 2mm wingsheet for rib make and why a boolean fail?


I need to create 15mm thick ribs inside my now drawn aerofoil section wing outer surface shape which has a 2mm rad trailing edge.
The ribs must allow for a 2mm skin thickness laid over them in construction so that the resulting shape is back to the aerofoil wing size/shape in Rhino…
The wing skin is currently a surface, not a solid

what is best approach here ?

  1. OffsetSrf 2mm the wing inwards (as is done on the attached file) then create ribs from solid 15mm thick making sure such go beyond the wing and use it to cut them (pastry cutting in effect), They need to be solids and their outer edge faces will slope a little as the wing slopes to the wingtip. Can they be capped etc ? I try for this and capping fails.

  2. keep wing original size and cut the ribs, then reduce their size around the edge by 2mm somehow.

  3. any other ideas.

I had seen myself using Shell (not available in V4) but no need, OffsetSrf 2mm would suffice methinks :wink:

I dont even manage this though, as the wing fails to work in booleanSplit. Its been formed of many sweeps from root to tip, the sweeps sharing the rails so they should join together, and the profiles for the main wing and the extensions on the ends were the same, so again they should all join fine, and in fact the join command worked with no complaints from it. The shorter sweeps inboard of rib1 were done after extending the lines that had been created from rib1 to wingtip rib as the wing goes beyond the face of rib 1. These were extended beyond a trim line then trimmed. Thus the end should be planar. I then selected all the surface pieces from the sweeps using select all for the layer and used Join.

Is that the best way of joining them, I see a few slivers/gaps and they are causing causing boolean fail. If I trim that end off then the wing works so it has to be the fact that the cutting shape has flaws through the joins of the end pieces . Display bad objects doesnt show anything though.

Now that its joined, how can I fuse these together better ? Is there a healing tool !!! ?? I could do with one. If I trim off the 30mm extension pieces it then will act as cutter. Why have they not joined well enough to satisfy boolean. Booleans fails often for me as if they are hyper fussy.

It acted ok as cutter though when using trim commandon the solid rectangle, but I then couldnt cap the now separate surfaces. Why did it succeed with trim and why did cap fail ?

BooleanSplitFail_Wing.3dm (758.9 KB)

(Pascal Golay) #2

Steve, you have many duplicate surfaces in the wing. Explode the wing, SelDup, Delete, and then Join the remaining bits together.



Cheers. :blush:
was this why the parallel aerofoil shapes wouldnt cap ?
If I see slivers of light or something not quite pure in render, what can be done to improve such ?

or was that also due to the dupes ?



file attached.
with no dupes the wing shape will now booleansplit the rib. However as this has a 2mm rad trailing edge, when I OffsetSrf it 2mm, in theory it should now end with a sharp closed edge, IT DOESNT…upon very close zoom in I see a gap.
Very odd as in fact our tan lines went beyond circle chord so the upper/lower surfaces should have crossed !

Boolean split fails.

I need the ribs to allow for a 2mm thick skin and this is the logical way to creat solid ribs. (I have only 1 test rib at the moment !)

Why has it created a gap as in theory the upper and lower surfaces should have met !

How can I treat this, create a surface sweeping a line along 2 rails using the two gap edges ?

Forget the OffsetSrf 2mm and instead trim the ribs then chop 2mm off their edges and if so how do I then keep them SOLID ? I cannot seem to fill their open edges back in easily.

BooleanSplitFailsOffsetCrv2mm.3dm (1.2 MB)

and here the wing prior the OffsetSrf command 2mm inwards.
WingPrior2mmOffsetSrf.3dm (626.7 KB)

(David Cockey) #5

“Slivers of light” in render frequently are due to the coarseness of the render mesh. Refine the mesh and he slivers of light will usually either vanish or be reduced in size.


You did not provide the original curves with the file so i had to extract them from the borders of your loft.

Every operation in rhino adheres to tolerance. The railing edge of the loft actually turns out to be a circle-like curve with a radius varying between 2.01 and 2.03 mm. So offsetting the surface by exactly 2 mm is not a good solution. In general it is never a good idea to try and do any “just about” operations. If you want the edge radius to vanish, offset so the result will work well within tolerance. That is: well above 2mm.

I’m not sure about the inner decision process that lets the two short segments at the tips exist but not the long one. Anyway, where existent, the result is an edge with a radius of about 0.8 to 0.01 mm. Compared to the document tolerance of 0.01mm this is very likely to create unpredictable results, if any.


Hi Halo, original also now uploaded in previous post.

The extended edges were a result of the fact that rib plans are drawn up but wing surface extends out to the edges of the ribs flanges. Its how the original was built. One has to place the profiles of the rib faces in their correct places then skin to them and beyond to their flange edges.

The Offset was not to try and lose the 2mm rad trailing edge, but to make ribs that are then clad with 2mm sheet.

The trailing edge was the result of the three aerofoil profiles having their last curves brought down to blend tangent into the 2mm rad circles. Pascal in another thread assisted with best approach.
I am surprised the 2mm rad circles have grown when swept to two rails. the rails were a constant 4mm apart and parallel the whole way. The variable is that darned tangent to circle line I had a thread on as to how to make in a mathematical perfect way, I just knew it…with folk saying it can vary, well its gone and varied the sweeo rails !!!

It illustrates my call for a sealant command, where Rhino can make a meal of something that is unavoidable given the task yet some microscopic gap wrecks booleans. to fill it with some electronic filler would see me able to progress. I am not interested in the gap being technically perfect, taking technically perfect steps to wards that phase. The whole build has been to accurate profiles placed accurataley apart and with a constant 4mm blunt end, given a constant rad circle to swing the aerofoil arc down to, and thats where the issues arise, as I tried to point out, the finding of the geometrically correct point on the circle for the interpCrve line to start from, else when it comes to OffsetCrv a varying line creeps in and things fall over. I just know from experience that Rhino and its tolerances is unforgiving and that is why I sought for a mathematically correct start point for the tangent on the circle. Maybe to have created the same start point so many mm above and below circle centre would have been better so giving the same parallel lines as we had in the blunt end.

Is there no way of filling in the microscopic gap though, thats all I need. Else I have to start over, but the entire build is many hours of work, start all over again, as if I can go altering aircraft wing profiles to suit rhinos hyper fussy fail boolean due to microscopic gap. Why not insteadpatch the gap ? and move on. Its so minute it wouldnt be seen by the human eye and is not of any significance in the item being built.

I am stuck, unable to boolean, just what can I do to that edge to fill its microscopic gap ?

Should I use an extend srf command and let the upper and lower surfaces intersect and how would I fuse them together etc and snip off the overlap ?



I’m not sure I get what you are finally qoing to do with all your modelling. Maybe you should start thinking about building that thing in real life before starting to model at the computer.

a) trailing edge
Your original profile had a 4mm long cuttoff at the trailing edge. This is perfectly okay if you would want to clad the foil with a 2mm sheet material. You would join both top and bottom sheet than maybe take off the sharp edge.
From an aerodynamic point of view, round or straight doesn’t matter as most of the flow will not be laminar at that point anyway and neither the profile nor the shape of the wing would suggest that you need every last bit of drag reduction.
From a manufacturing point of view, you simply cannot bend a 2mm sheet at a 2mm radius. Now in reality, you would have two 2mm sheets meet on top of each other and you’d start rounding off the edges. That’s what fillets are for. You might notice, that a 2mm radius can only happen if both Sheets meet for at least 2mm without any rib between them.

b) tolerances in general
If you intend to build something in real life, you should be aware of the tolerances involved in manufacturing. It is certainly a good idea to model as exact as possible and even model with a higher precision than the machines can produce bu you should keep those in mind.

Now what am I getting at?

  1. Just for a second, please ingore the trailing edge. In your original curve, just leave out the copped off line or extend both top and bottom curves with the “Connect” command.

  2. If you offset the profiles at the fuselage and wingtip, then loft those, you might find that this is a very good approximation of your inner cladding surface. You can either connect the curve ends with a straight line or use the Connect command again to create closed curves.

  3. Now do you really need the exact angle of the ribs circumference? If you are going to mill them with anything less than a 4axis mill, you don’t. In that case, all you would need is a called down version of the profile. Since your wing is straight, there really is no need for any 3d geometry at all.

  4. Back to the trailing edge. You probably won’t be able to manufacture the trailing edge of the ribs. Those very thin edges will either snap off or injure anyone handling the ribs. It is good practice to just chop them off a bood measure…

Is there anything I missed, justifying all the trouble, you put yourself into with that trailing edge?