Jump to content

Subdivide the result of a boolean. Issues.


Gio SP

Recommended Posts

(Hello! first post, been learning H for a month, this forum is amazing)

What I'm doing: a boolean between two polygonal circles produces a flat ring, I polyextrude it into a solid ring (Fig. 2), then polybevel the side edges (Fig. 3).

1) Problem is, when I try to subdivide it I get weird meshes like the one in Fig 4. It looks like the mesh coming from the boolean SOP is not 'joined/consolidated'.

2) How can I end up with edges where I drew the red lines on the beveled ring screenshot? 

I tried many combinations of join/fuse and other nodes, checked forums and docs but I can't figure out how to avoid ending up with a cheese wheel shape.

Hip attached.

cheers

network.png

ringbase.jpg

edge highlight.jpg

sub1.jpg

boolean issues.hipnc

Link to comment
Share on other sites

wow. both solutions work. thanks, this was so helpful! 

Saving here here screenshots of the two solutions in case anyone bumps into similar problems.

@Atom
the OpenSubdivLoop Subdivide option works without further workarounds, it does generate messy topology 

@vicvvsh
topology is perfect by setting Sliced arc on the Circle sop and fusing post Boolean
 

Screenshot 2020-08-29 at 11.43.45 AM.png

Untitled5.png

Link to comment
Share on other sites

  • 3 weeks later...

Also:

circle --- polyextrude: Distance 0, inset some value -- polyextrude --  polybevel 

Set some value greater than 1 in the divisions in the polyextrude SOP so that the quads have roughly the same size.

It will result in a correctly quadrangulated geometry that will be subdivided as expected, and the subdivided result will have a nice topology, which you will appreciate downstream.

subdiv.png

Link to comment
Share on other sites

  • 2 weeks later...

Thanks @AntoineSfx, I just tried your method and it's quite neat. Haven't thought about it. 

Here I am with the noob frustration of the day, I can't possibly figure out a way to procedurally generate a mesh that will behave nicely while beveling the outer edges, in the gif you see the issue.
Any suggestion would be greatly appreciated!
 

Sep-23-2020_02-04-25.gif

Link to comment
Share on other sites

On 9/23/2020 at 2:13 AM, Gio SP said:

Thanks @AntoineSfx, I just tried your method and it's quite neat. Haven't thought about it. 

Here I am with the noob frustration of the day, I can't possibly figure out a way to procedurally generate a mesh that will behave nicely while beveling the outer edges, in the gif you see the issue.
Any suggestion would be greatly appreciated!
 

Sep-23-2020_02-04-25.gif

If you can't design the mesh for polybeveling that specific edge, i.e get rid of the edges between the adjacent planar primitives, then do one of those:

group the ring primitives and the larger primitive together, the do a divide / uncheck convex polygons, check remove shared edges. This will be much more polybevel friendly.

or: group the larger primitive, then group expand SOP it with: flood fill + restrict by normal = 0 

The trick is .. polybevel can somehow slide on ring edges to hide small asymmetry problems in meshes, but it can't do magic. It doesn't somehow recursively slide on adjacent primitives until the target curvature radius is reached.

So it's up to you to make sure there is no other edge too close to the edge you're trying to polybevel. At least that's how I see it.

 

Edited by AntoineSfx
Link to comment
Share on other sites

  • 3 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...