3
$\begingroup$

I have a basic setup with two quadrilaterals that intersect in a sample blend here to demonstrate what I think should be a basic concept, but I cannot figure it out.

For example, you can just create a couple quadrilaterals with opposing dimensions (2x4 vs 4x2) and then Join Geometry and then Fill Curve on them. It fills everything except the intersection, but I need the full union of the two.

I don't know how to attach a .blend file, but it's a super easy setup...

EDIT: The intent here is to be able to extrude the shape into a solid. The original question has been answered, with the follow-on about the solution resulting in non-manifold geometry and extrusion properly solved for what I am trying to accomplish detailed in my subsequent answer below.

$\endgroup$
4

4 Answers 4

3
$\begingroup$

why don't you make your life easier, like this:

enter image description here

$\endgroup$
6
  • 1
    $\begingroup$ Beware Mesh Boolean is designed to work for manifold geometries. However I checked on 4.4.1 and it works in this case. $\endgroup$ Commented Jun 11 at 9:10
  • $\begingroup$ I just "figured" this out from lots more googling and experimenting and came here to post this as the answer. I am 3 weeks into learning Blender and don't know what geo-nodes can do yet. Thanks! $\endgroup$
    – ChrisN
    Commented Jun 11 at 12:09
  • $\begingroup$ you are welcome $\endgroup$
    – Chris
    Commented Jun 11 at 12:35
  • $\begingroup$ Hmm... as @MarkusvonBroady said, this produces non-manifold geometry which is mucking with things when I extrude this into a "solid". I would expect Delete Geometry to do what I need here, but I can't figure that out... Thoughts? $\endgroup$
    – ChrisN
    Commented Jun 11 at 12:58
  • 2
    $\begingroup$ I said the "Mesh Boolean" works best with manifold geometries, I wasn't sure that it outputs non-manifold geometry. When I said I checked and it works, well, I didn't check it thoroughly - perhaps it doesn't quite work. Also my general experience with mesh booleans is that it may work for the most part, but then fail in some edge cases for no clear reason - it produces heisenbugs. This is why people try to avoid booleans if possible. In your case you can still easily avoid a boolean, by following normal modelling procedures. $\endgroup$ Commented Jun 11 at 13:56
3
$\begingroup$

Method suggested by quellenform, adjusted for the fact you can't extrude individual edges:

From quellenform in comments for posterity - just extrude the edges in two separate groups to force individual extrusion:

Boolean Alternative

You can still use a boolean, but I recommend starting with manifold and then flattening it back - if you even need to flatten it back (which you don't in your case):

The intersection part is perhaps a little bit too defensive, also it produces a single face (12-gon) for the "+" shape.

Fill Curve Hack

You don't need a boolean, you can just take advantage of the very thing that caused you an issue - curve filling alternating the filled/empty space:

I call it a hack because I haven't tested or reason about it thoroughly…

$\endgroup$
3
  • 1
    $\begingroup$ Thanks for the post! ...here is the variant that extrudes individual edges: i.sstatic.net/pBebHrGf.png $\endgroup$
    – quellenform
    Commented Jun 11 at 9:17
  • $\begingroup$ @quellenform ah, right, just extrude them in two interlaced groups so that they aren't connected. $\endgroup$ Commented Jun 11 at 9:23
  • $\begingroup$ What I outlined is just a contrived example, as my actual geometry is quite a bit more complex than this. Thanks for the answer though. $\endgroup$
    – ChrisN
    Commented Jun 11 at 13:00
3
$\begingroup$

After OP's clarification - revision #2:

What I outlined is just a contrived example, as my actual geometry is quite a bit more complex than this. Thanks for the answer though.

Here's the absolute correct way to do this - just clearly define the points, spawn rectangles, merge them:

You can add 4 more Vector nodes (I only used them where the coordinates are reused), which is easy when you already have the coordinates set (and setting them in the Quadrilateral node is easier, because they support units and so you can just copy-paste the coordinates from the Numbers panel in the 3D viewport) - just drag from the socket outwards and start typing "Vector":

(when doing it in bulk you don't need to type anything after the first time)

And then you can select everything BUT the Vector nodes, ✲ CtrlG and you will get a custom group:

You can name the sockets, and reuse this group for the 2nd L shape. Keep in mind you could have less numbers in inputs, depending on the general logic of L-shape spawning, but since you didn't present that logic in your .blend file and just used arbitrary inputs in Transform nodes, so do I use arbitrary inputs here:

All blue, 28 faces total, smooth boomerangs when subdivision surface is added.

$\endgroup$
4
  • $\begingroup$ @ChrisN I edited out the image, but there's no copyright reason to be afraid about sharing a logo. Not to mention no one would even realize it's a logo of anything if you haven't pointed it out! :D Also keep in mind on SE nothing is really deleted, it's just edited and visible in previous revisions. $\endgroup$ Commented Jun 11 at 15:23
  • $\begingroup$ @ChrisN also consider what you agreed to when uploading to blend-exchange: "I understand the irrevocable rights to my content (including but not limited to royalty free distrbution) I grant Blend-Exchange as defined in the Terms of Service." $\endgroup$ Commented Jun 11 at 15:31
  • $\begingroup$ Well, my mistake then. Thanks for at least pulling the image down. $\endgroup$
    – ChrisN
    Commented Jun 11 at 15:31
  • $\begingroup$ Thanks for your thorough answers, by the way. It looks like you took this as a challenge and accomplished it multiple ways. Much appreciated. Learning more every day. $\endgroup$
    – ChrisN
    Commented Jun 11 at 15:55
1
$\begingroup$

The solution posted by @chris above results in non-manifold geometry, as talked about in the comments. Here is how I've fixed that and extruded it into a solid.

Basically, once you use the Mesh Boolean to union the two shapes, you then use an extrude, in parallel with a Flip Faces, to fix the normals on the bottom. Then you use another Mesh Boolean to union those and it gets rid of the non-manifoldness.

Final node setup below:

enter image description here

And here's the .blend file:

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .