Grasshopper

algorithmic modeling for Rhino

Hi All,

I have created a script that populates 2d on surfaces as well as randomly around the edge of the surface. I want to evaluate distances between all of these points and basically create lines between points whose distance is below a particular value. I ran the point list into both a and b of the "distance" button and grafted b. That gave me all of the distances between each. 

So the next step is to create the lines and I am a bit lost on the way to do this. Let me know if this is unclear or not. Thanks

Views: 1618

Attachments:

Replies to This Discussion

You can use the Proximity3D component to find all point pairs in a list of points that are less than X units apart:

Attachments:

Do note there may be many duplicate lines, and they depart from the surface when the points exist on different faces...

Some pretty tricky stuff, but I removed all duplicate lines and make the remaining lines wrap around the shape.

Attachments:

The wrapping will definitely be useful for my project. In my original script I had the outer edge of the surfaces have x amount of points. This helped define the rectangle further. Will this script be able to add that in? I am not on the school computers right now to test it real fast. What is the best way of adding these extra points to the frame?

Thanks again for all of your help!

Yeah sure, I recommend getting the wireframe or edges of the brep so you only have single lines, then dividing those lines either by count or by length. This will give you an initial population of points which can be fed into the [Populate] component as a 'pre-existing population', which prevents other points from getting too close to them. Once you've added your random points, merge it all into a single list and do whatever happens now with the points.

Wow that is incredibly useful! Thanks David much appreciated.
Got it all to work correctly.

Thanks David!

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service