Grasshopper

algorithmic modeling for Rhino

Hi,

I'm creating astructure that intersects with itself. in fact it did intersect in two diferent areas and I have solved one ( I'm sure that there must be an easier way different of what I did,,, but it works in the end ), but I do not know how to solve the second.

Attached are both of the files, 3dm and gh.

Could someone suggest how could I solve it ?

Thanks,

Joan

Views: 1823

Attachments:

Replies to This Discussion

Any suggestions ?

Including inline screenshots would get you more attention so users don't have to download and load files just to see what the question really is.

The new beta test Rhino 6 WIP ("Work In Progress") version similarly fails a Boolean union of this ridiculously simple system but they add insult to injury by now adding little exclamation points where it's failing.

Your system uses simple tubes so my recent parallel processing Python script to do robust Booleans of balls along a curve will work. The trick is simply to slightly jiggle each pair if the Boolean fails.

http://www.grasshopper3d.com/photo/boolean-union-1200-balls?context...

Granted your long system required 900 balls so will be a complicated polysurface, but it's nicely smooth with enough balls and doesn't slow Rhino down much.

I hadn't tried my script on a closed curve, as was surprised it worked. Single closed NURBS polysurface! No end overlap. Results may vary.

You may get away with just separating your endpoints a bit. At least you seem to understand the kissing surfaces issue that McNeel up and out refuses to put in the manual at no cost to themselves. Here is their lie of omission in the manual, in which they only mention the simple case of boxes that don't overlap not being able to do an intersection or difference, while leaving out the fact that the union only works there since the kissing surfaces are planar and perfectly coincident, a special case. Untold hours of pain I could have avoided, early on, had the manual included even mention that Booleans fail since their algorithm sucks in a specific way that can be troubleshooted by grabbing the intersection curves in Rhino via the Intersect command, to see where they are getting wild instead of being simple closed loops. For years I didn't even have a clue why it just didn't work. The new Rhino 6 manual is exactly the same:

http://docs.mcneel.com/rhino/6/help/en-us/index.htm#information/tro...

Attachments:

The Rhino 6 WIP error text dots also include an error message in their property panel:

If I view the Intersection command curves in red, the algorithm is simply retarded, working on one side along a perfectly nice intersection but peters out on the other. I can see that joint well as I move the view around.

Now Rhino relies on a tolerance setting (Settings>Units) too that affects commands in black box fashion, so always try that too, way less or way more. Here, no effect, except to show three instead of one error marker when I turn the tolerance from 0.001 to 0.00001.

This should work. The side that works says the other side should work too.

This is a effectively a decade long bug.

A robust algorithm might fill the solids with points, find where they overlap point-wise, between collections, then run a curve through the smoothed paths of those points and project the curves onto the surfaces. Instead, the McNeel tower worships pure NURBS math so when that fails it's *your* fault for not adopting good modeling practice.

Attachments:

Geomagic Freeform Plus has simple NURBS polysurface manipulation tools including Booleans and has no problem immediately joining your system pairwise but reimporting to Rhino shows failure, so it's no better behaved.

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service