Trouble with Boolean Difference when using hearts produced by Heats script

Next
 From:  Mike (MGG942)
6547.1 
I'm trying to design a double wall bracelet with heart cut outs all around for 3D printing.
I've already modelled and printed one with circular cut outs and thought I'd try hearts using the Heart script.
All goes well until I try to Boolean difference an array of heart solids (Object name 'outer hearts) from the outer frame of the bracelet (Object name 'outer').
The calculation doesn't fail but nothing appears to happen.

If I choose 'outer cylinders' instead of 'outer hearts' all works as normal.

What am I doing wrong?

Mike.
Attachments:

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Michael Gibson
6547.2 In reply to 6547.1 
Hi Mike, it's because of the way the hearts are constructed - they don't actually come to a sharp point at the top and bottom point spots, instead the curve is extremely tightly bent in those spots, basically bending back on to itself in a super tight 180 degree turn.

That essentially makes the side walls of the heart to be self intersecting surfaces, meaning the surface pushes through its own self. Usually self intersecting surfaces will cause problems in surface/surface intersection calculations.

You'll probably need to reconstruct the hearts to instead be made up of 2 segments that meet each other at a sharp top and bottom point rather than one long single curve that has such a super tight internal back-tracking bend in it. The easiest way might be to cut the heart curve in half by a dividing line with the Trim command, and then maybe use the Rebuild command on it (set up a shortcut key with Rebuild as the command name) to reconstruct it to get rid of any remnant of tightly bent areas...

Let me know if this is not clear.

- Michael
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  bemfarmer
6547.3 In reply to 6547.1 
Hmm, I did this script 2.5 years ago, based upon Wolfram equations, when I was even more of an amateur than now :-)

Maybe I could split the script into two curves, to avoid the hairpin curves.

- Brian

EDITED: 3 Mar 2014 by BEMFARMER

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
Next
 From:  Mike (MGG942)
6547.4 In reply to 6547.2 
Michael,

Worked like a magic trick!

Many thanks,

Mike.
  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged

Previous
 From:  bemfarmer
6547.5 In reply to 6547.3 
Edit: I Revised Heart script. It only does half of the heart. Rebuild and Mirror would be nice.

- Brian

  Reply Reply More Options
Post Options
Reply as PM Reply as PM
Print Print
Mark as unread Mark as unread
Relationship Relationship
IP Logged
 

Reply to All Reply to All