Both would be interesting !
Maybe if you could get me some starting points at which commands to look, I would be really grateful !
And maybe because I know Grasshopper from Rhino quite well, how would I translate/move points of the circle according to the normal vector on the circle ? So that for example every second point would move outwards according to the center of the circle ?
For moving entire circles randomly, best would be to look into instancing
This would allow taking a single circle, instancing it and transforming it with CHOPs for example.
For animating each point of a circle with a noise, there are 2 options - both might not be the most performant depending on how many points your circles have but:
You could make use of the Copy SOP and its stamping feature:
For example using the Copy SOP’s .copyIndex member, you could set a different seed for each circle’s noise.
You could also convert the merged circles to CHOPs and multiply the resulting channels with Noise values before reassigning the channels to the geometry using the CHOP To SOP:
The normals of a default circle are pointing towards z, hence you see when applying a noise that the points are offset only in z direction. To make them point outwards, you can recalculate recalculate the normals in a CHOP chain and apply noise to them, first multiplying the noise channels with the channels derived from the Circle geometry and then adding them onto them.
If you want that to only be applied to every second point, you could also create group using the Group SOP, setting the Entity parameter to “Points” and the Operation parameter to “Group by Range” (by default this will select every second point). Now in the SOP To CHOP, specify the group created in the Group SOP, adjust the channels and when applying back to the geometry again specifying the group.