algorithmic modeling for Rhino
Hey all,
So.... I've got a little issue that I could do with some pointers on.
I want to make a pattern within two concentric circles - both controlled by sliders. Let's call them Inner & Outer diameter. Within those circles I'd like to control via a slider the creation of more circles, each of these smaller by a percentage than the one before it which is dependent on the ratio between the ID and OD and the number of circles made
So far I've used a compounding formula to give me the percentage I want each circle to be smaller by but I can't figure out a strategy for referencing each circle to the last.
Once this problem is figured out there's more to my pattern but I've fallen at the first hurdle.
I'll upload an image of where I've got to in the morning.
Thx,
JT
Tags:
If I understand you correctly you want the Outer Diameter Circle to be replaced each time with the new circle. Simplest way would be to create a loop. You can't do this with native components (other than a scripted component which would probably be pretty simple, but my c# skills are lacking) but if you download the anemone or hoopsnake plugin you can create a loop that can do it.
Simple version in python:
radii = [outer_radius]
tween_radius = step * outer_radius
while tween_radius > inner_radius:
radii.append(tween_radius)
tween_radius *= step
if len(radii) > maximum:
break
radii.append(inner_radius)
I would do it like this:
- Create a domain for your two main radii
- create a range of numbers from 0 to 1, reflecting the number of circles you want
- use a graph mapper to manipulate the numbers on domain 0 to 1
- remap the values from the graph mapper to your circle domain
The path mapper component also has other curves available so you can really start to play visually instead of having to program a function...
Welcome to
Grasshopper
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
Added by Parametric House 0 Comments 0 Likes
© 2024 Created by Scott Davidson. Powered by