Grasshopper

algorithmic modeling for Rhino

Hi all,

I have a Brep environment and 2 sets of points in space.

I currently construct an all-to-all set of lines between the 2 sets of point and than test the collision of the lines and the set of Breps. Its really slow though... it can take hours of grasshopper being frozen before you get a result.

If I build a C# component, can I use the collision and line construction objects internally? Will it be faster?

I _dont_ need to keep any grasshopper history related data. My export is just text (the boolean result).

Thanks

T

Views: 775

Replies to This Discussion

Hi,

Is the description wrong? or its hard to implement in C# via grasshopper? 

You may be able to get some speed increase by looping it all in Grasshopper, but I'm guessing that performing a large number of curve|brep intersections is what's slowing you down here. So unless you have a way of reducing the number of intersections, the benefits will not be phenomenal.

Can you tell me a bit more about the number of points on either side and why you need to find all the intersections?

--

David Rutten

david@mcneel.com

Tirol, Austria

I do 'visibility' testing. One point in 3d space can see another one, so all point need to be test with all the rest.

Any obvious speedup in Grasshopper?

Thanks

T

If it's just for visibility, would it make more sense to perform Mesh|Ray intersections? I think they are significantly faster than Brep|Curve.

--

David Rutten

david@mcneel.com

Tirol, Austria

Attachments:

Hi, Thanks,

Ill check your GH file but the problem I had with grasshopper rays is that the "semi-inf" only option will not work for me.

I need something like "origin-destination" rays.

If you can see the example in the image: in the D1 case the semi-inf ray will not work correctly. You will get a "hit".

Attachments:

Ray intersections give you a parameter along the ray. It would then be fairly trivial to figure out whether the parameter is beyond the 'end' of the ray.

--

David Rutten

david@mcneel.com

Tirol, Austria

hm... i didnt know that :) I remember that my first test was with rays and I remember getting "T/False" results...

Thanks Ill check.

The return value is a ray parameter or a negative value if there was no intersection.

--

David Rutten

david@mcneel.com

Tirol, Austria

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