Jessi, this is difficult because it is a logical impossibility. If you want to distribute 100 points on a 10mm long curve so that no two points are closer than 1mm, there is no possible solution. Whenever you want to achieve something that might not have a single possible solution, you have to jump through a number of extra hoops.
In this particular case, the algorithm would look a bit like the following: - For each 2 neighbours in your collection, measure distance between them. - If they get too close, move them both away from each other until they have a valid distance The problem is, that when you move your points, they might suddenly get too close to the neighbour on the other side. Hence, you have to run the loop again, and keep on doing so until all distances are valid or until you've reached a stable set. This requires lot sof looping and conditionals, neither of which are possible in Grasshopper. It's possible to write a script for this (or even a component if it sounds like a very useful operation), but you cannot do it visually. -- David Rutten [email protected] Robert McNeel & Associates On Mar 18, 10:21 am, Jessi <[email protected]> wrote: > hi david, > thank you very much for your reply, the curve worked really well.. > i have one more question: now that i have the arrangement of the > points on the curve as i want them, but now i want to control the > maximum and minimum distance between them; without presetting the > number of points on the curve, i want to fill the curve with denser > and looser arrangements of points, that dont go above or below certain > values of distances between them. is there a way to insert something > into the graph arrangement that i already have? > thank you! > > jessi > > On Mar 17, 1:43 pm, David Rutten <[email protected]> wrote: > > > Replacing a Graph Mapper object with a Rhino curve: > > > Create a curve in Rhino within an easy domain (x = 0.0->1.0; y = > > 0.0->1.0;). > > > Make sure it only has a single intersection point with every vertical > > line. > > Generate a bunch of vertical lines, I used the [Range] + [Line SDL] > > components. > > Intersect the curve with the lines using the [Curve|Line] component > > and limit the intersection to the first hit. > > If you extract the y-coordinates of those intersection points, you'll > > have your 'mapped' values. > > >http://groups.google.com/group/grasshopper3d/web/CustomGraphCurve.png > > > -- > > David Rutten > > [email protected] > > Robert McNeel & Associates
