Hi guys, pretty new to grasshopper but am wondering if anyone can help me on this one.

I’m looking to create a list of random points and then populate each point with a specific curve I have drawn. Id like to be able to control the percentage of total points that have been populated with each curve. So say there were 100 points in total, Id like there to be 78% curve A, 20% Curve B, 2% curve C

Im hoping to create a script with a result similar to what i have uploaded.

when you say to “populate each point with a specific curve”, you mean that the points are the black circles, and the connection curves are the lines between those circles?

or by “populate each point with a specific curve” you mean that each of the following outline entities will be oriented over each random point?

sorry I should have been clearer. So the second one! Each of those groups of circles joined by the lines are the curves I would like to populate on each point.

The way I was trying to do it was by creating a grid, adding a point to the centre of each cell and trying to spawn each of these on the points. But I’m not sure I was using the correct container for the geometry, because it wasn’t working.

And as for the scaling issues, i know it looks a bit off but surprisingly its all correct haha. I am designing some trials for a perforated cladding in my Uni project. What you are looking at are molecules, the radius of the circles are the mass of the atoms. Not completely sold on the idea yet but we shall see!

populate a rectangle of given sizes with n points (1) then create a XY plane on each point and random rotate it (2), then partition this list of points into 3 different lists depending on the amounts of curves per type A, B, C
then orient the initial three curves A, B, C on those points (4) using their area centroid (5) and preview them in different colors (6)

so in case of intersection the only way to solve -at the moment- is to change Random Point seed, or Rotation Seed, or make the rectangle bigger (so the points will be more distanciated, because Populate 2D is not a random population, it has a certain degree of equal distribution embedded in it)

best solution, but maybe it’s an overkill as in your original image shapes look a bit sparse, circle packing inside the rectangle area, then assign each circle a shape, to be sure that each shape will have its own “private circle space”

That’s perfect! thankyou very much there mate! and thankyou for taking the time to explain it. Im looking forward to learning more on grasshopper! seems like it can do so much!