How do I model this?


I am having a LOT of trouble with this seemingly simple object.

I have an image of the cross section which I traced using a Bezier Curve. I then converted the curve to mesh, filled it and extruded it. All of that worked fine for the most part. However that gives me a flat face on the top and I need it to be profiled the same as the side.

I was told to use Boolean modifiers to do that with one object in that orientation and another rotated 90 degrees. I did that but I got very odd results. I even watched some Boolean modifier tutorials and it still doesn’t make sense. I tried the actions with simple objects to make sure I understood the concept, worked just fine. But with this it is pure chaos.

Someone please help, I am getting so frustrated.

If there is another way to modify it or perhaps even another way to model it altogether, I am open to suggestions.

By the way, the tutorial mentioned bmesh which is coming out in 2.63…I currently have that version, what is bmesh and how do I use it?

Thanks!

Can you post the reference image you’re using ?
It would make it easier to see how you want it to be, instead of only how it is currently (and that is giving your trouble)

Some suggestions. Not by any means the way of doing that since there are lots of ways in modeling but might give you some tips.


From left to right:

  • Profile made of bezier curve
  • Another curve to outline the side
  • Profile added to that curve
  • Converted to a mesh
  • Since the side is different, another profile with a curve
  • Yet another curve to make the side profile, but this is a bit larger on the edges and doesn’t have that cut
  • (next ones in more detail in the next pic)


  • Mesh side vertices are assigned to a vertex group. Not all of them but relevant that are projected to a new shape
  • That projection is done with a shrinkwrap modifier. Target is that new shape including only vertices in the vertex group and projected on the x-axis.

That could be then refined and the inside cut is easy to add afterwards.

You could also make the whole right side and add it to those 3 other sides. Connecting them cleanly takes some manual work but you can use mirror modifier to do it just in one corner.

profile_tips_ja12.blend (441 KB)

Well the image above is what I am trying to achieve. But here is the reference image for the curve:



Thanks for helping me :slight_smile:

My difficulty is more about understanding the actual problem, because what is puzzling me in fact is what follow this :

I then converted the curve to mesh, filled it and extruded it. All of that worked fine for the most part.

So you modelled the profile and extruded it, so far i see.
Probably something like this, right ?

But i don’t understand what is next :

However that gives me a flat face on the top and I need it to be profiled the same as the side.

That’s why i asked to see a reference so i could understand how the final product is supposed to look like and so maybe understand better what is your problem exactly there.

Thanks to JA12 posting some screenshots of his model using a profile, i’m wondering if what is giving you problem is the shearing at each angle ?
If it is this, select all the vertice of one side of your model

Go into a view that show the top of the model like this :

Important : notice the axis and the orientation i gave there , it’s important because the Shear tool while very usefull is completely limited by working on a specific axis, unfortunate but it’s like so many tools in Blender, powerfull but not really finished and complete.

Click on Mesh -> Transform -> Shear
Instead of modifying the shear by the mouse, just type 1 (the number) to make the shear at an angle of 45 degree

Now you can extrude to obtain the same shearing at the side as in JA12 screenshots

Remember that Shear is being a limited implementation in Blender (i really hope it will be improved to work on every axis one day), you’ll have to rotate your model everytime into the correct orientation for it to work.

Oh okay, well yes that works perfectly if I want a mitered connection, but sadly in this case that is not what I want. Thank you very much for making that part crystal clear! I will need that later.



You see, I need two pieces to connect like that. Is there a way to do that? To get the edge I have on the outside along the top as well? Does that make more sense now?

Sorry for the confusion

Well, it’s still a bit confusing, but could it be something like that ?
http://i.imgur.com/9KSO9.jpg

Okay you have the right idea as to how the pieces would fit together. But the outside edge is still missing.
That first photo I gave, just so you know that is ONE piece. I know it looks like a mitered connection at the top but it is really all one piece. If I can’t do it that way and have to make a mitered one instead well I guess I’ll have to.

Why not try booleans ?

An example, i have the 2 pieces as separate objects
http://i.imgur.com/iGb2q.jpg

I move one of the object where i need/want
http://i.imgur.com/T8Mdg.jpg

In Object Mode , on this piece, i add a Boolean Modifier set to Union and at Object i select the name of the other piece.
http://i.imgur.com/7qEH0.jpg

I apply the modifier
http://i.imgur.com/2wIii.jpg

That ugly thing outlining display is because the other object still exist (it is not removed by applying the modifier), so select it and delete it.
Go to Edit Mode
http://i.imgur.com/eVIkx.jpg

Yes, ugly topology now indeed, booleans triangulate things a lot to keep merging precision.
But again no worry, Bmesh introduced a feature named Limited Dissolve.
Make sure the whole model is selected and click on Mesh -> Dissolve -> Limited Dissolve
http://i.imgur.com/LNDYj.jpg

Result , some “clean” looking ngons :
http://i.imgur.com/p97Zr.jpg

In the Operator (or press F6) just after using the Limited Dissolve, you can change the angle the function is using, if you see that the dissolving has simplified the shape a bit too much.

You are brilliant!

I was trying to use booleans but it was NOT working…but I think that’s because I already had applied a Solidify modifier. It didn’t like that. Kept giving me weird results. I tried it again using fresh models and the booleans worked perfectly. And I love that dissolve thing, I’ve been looking everywhere for that command. So thank you, ALL of you for your help!
Do you think if I use Solidify after the boolean it’ll work?

I don’t think you need the Solidify modifier as the solidify is for working with geometry when you need to give it depth.
And in those case, both objects have a depth already (they’re “solid” by themselves)

Okay thanks,
one last thing…
When I overlap two objects and apply a boolean modifier to the one, choosing union. As soon as I click on the object I want it to overlap with Blender crashes. If I select a different object its fine, but if I select the one I want…fail.
Any idea why this happens?
I have a pretty fast computer, I’ve never had any problems with Blender or other complex software.

Blender is not supposed to crash when using the Booleans.

Try this :

1 - download Blender 2.64 Release Candidate 2 , Blender 2.63a is old and much more full of bugs than this release candidate, then try again the booleans to see if they crash with this version of Blender
http://download.blender.org/release/Blender2.64/

2 - Make sure that every parts you want to merge with the booleans are solid (i don’t think booleans would work with a plane, you would need to make the plane solid, extruding it to give it depth by example) , try to see if the model has the normals correct (go into Textured View, if you notice holes , it’s then because some faces have their normals inverted) in case they’re not, select the whole model and press CTRL+N (or click on the “Recalculate Normals” button in the T panel, to the left
Check if there’s no internal faces that you could have made by mistake (it would prevent correct recalculation of the normals)

How would I check for internal faces if my object is supposedly solid? I checked my normals and they look good as far as I can tell, but I think the problem is probably a hole somewhere. I did a lot of manually editing the mesh, deleting and creating faces, etc. Now I guess it’s just a painstaking process of trying to find the needle in the haystack. Oh joy. lol

Usually a sure way to see if you have internal faces is when you recalculate the normals, you will -always- have some faces with them inverted in textured mode, if CTRL+N (recalculate normal) have the good desired result, it’s because you do not have any internal face (and so the model is correct)

If your model has internal faces, to detect where they are if the model is a bit too complex to see them “by eye”, always in edit mode first unselect the whole model then click on Select -> Non Manifold.
Blender will select the vertices that are boundaries of a hole (it can be legit if you intended a non solid hole) and that are boundaries of an internal faces.

Okay wow, that helped so much, thank you!

However, now when I try to union that object (with NO holes) with another, it gives me a warning sign saying “Can’t execute boolean operation”. Any ideas why that would be happening?

If those both objects have no internal faces , have correct normals and no hole, i don’t know (you tried in 2.64 RC2 too ? )
Can you upload your blend as an attachment here, or at least on http://www.pasteall.org/blend/ so someone can give a look on what is wrong ?

74 Boolean 4.blend (1.6 MB)
This is the file I’m using right now. Sorry it’s a bit of a mess, but I want to union Bezier Curve.009 with either Bezier Curve.013 or Bezier Curve.014

Thanks.

Some non-manifold in Curve.014 (probably loose vertices) that you can delete

But lots of non-manifold in Bezier Curve.009 , that model is really a mess indeed and that’s why the boolean can’t work.

Okay, silly mistake. I had done select -> Non manifold with only edges selected. Then it didn’t give me any of the vertices that were loose. Fixed that and now the union worked. Thanks!