Grasshopper

algorithmic modeling for Rhino

So I am working on a grasshopper/python script that will generate a stadium. I have gotten pretty far, but right now I am stuck. I currently have the 3 sets of data below that I want to use to take my existing bowl sections and align them to various planes around the stadium. I will explain what each group is:

Polylines - Each section {0 - 7} is made up of multiple seating deck polylines (n=4)

Existing Planes - These deck polylines currently live 1 plane for each sections{0-7}

New Planes - I need to copy each of those decks onto each of the planes(N=6) in each  section

So the problem is, how can i get the 4 decks copied form the existing plane onto the new planes in each section? I think the orient component is the correct answer but I cant get the data trees to behave correctly.

You can download the example file here:

DataTreeProblem.ghx

Views: 663

Replies to This Discussion

So I had thought this was the answer originally too, but if you look at the output, you can see that the poly lines in each sector don't match the original 4. I can post an example showing the differences tomorrow.

I noticed you have 32 initial geometries and 40 initial planes.  It seems to me that these should match.

There also seem to be asymmetries that don't make sense for a typical stadium layout.  It's difficult to grasp where you're going with this from the given data.

Can't see the where you get the 32 geometries and 40 planes.

Anyway, there are overlapping target planes so at eth ent of each sector, you will get two results. Maybe that's what you want.

Here's a version that works with cross referencing all the section lines with the target planes

Attachments:

32 geometries from 8 branches with 4 items each but I had the target planes swapped with the initial planes.  Your result definitely makes sense.  Thanks.

This result is perfect! It makes me mad it was so easy, I was almost pulling my hair out yesterday.

Chris - We are developing the generic bowl generator that can be used to evaluate various bowl configurations for all of the sports venues that we do. This will include the ability to vary the bowl configuration by sectors, and deliver some real time feedback how the changes impact the performance of the bowl.

We don't have it finished yet but we will show it off some time in the near future.

Thanks for everyone's help. I really appreciate it.

Actually your logic was not too far off. With a two input component you get a cross reference behaviour, if you graft one of the inputs.

First, I expected your solution to work. It would if you expect lists on the same level (G and A) to be combined as longest lists and applied to the (grafted) higher level (B). Obviously this doesn't happen, so you'd have to force it. I tried some variations but couldn't come up with a solution... so I sacrificed the tree structure to funtion.

RSS

About

Translate

Search

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service