grass distribution

Rhino 3D (Export script developed by SamPage; Integrated Plugin developed by Paul Kinnane)

Moderator: face_off

User avatar
v-cube
Licensed Customer
Posts: 491
Joined: Fri Jul 22, 2011 11:02 am
Location: Aachen, Germany
Contact:

Hello,

I am trying to evaluate a good way to do grass with the rhino/octane combination.

I succeeded in creating 1m X 1m grass panels which I created with the help of the harmonize script
to add jitter and randomness (scale + / - 20%, random rotate 360 deg, xy move +- 0.01m) to a 6400 (800x800) array of grass elements each consisting of 3 single leaves in a polar array of 120 degrees .
The geometry is than saved as an object file and reassigned to a simple block, which is then arrayed as necessary.

However there are different disadvantages to this approach:
1. The 1X1 grass panels cannot be placed precisely, structures under 1m are not possible.
2. When placed on large areas some kind of tiling can occur
3. for 3 dimensional structures this does not work.


So right now I think the best approach would be as follows.

1. create a surface the grass will be applied to
2. distribute Points to the surface by defining a density / sm (e.g. 6400pt / square meter)
3. replace the points by an user defined object or a block
4. apply random transformations to the objects (scale,rotate,displacement)
5. transform the objects to a csv file (separators have to be “real” commas not just “space” )
6. select a grass element (3polar arranged grass leaves) block it and apply the csv file to it.

Right now there are several tools to (partly) archive these functions (harmonize script, csv export scripts, apply points to surface scripts...) however the hole process is quite cumbersome and during some parts very slow. Since my knowledge of grasshopper and other scripting methods is very limited I would like to ask the community if someone can do a script which combines all or at least some parts of the process. Maybe I would be a better approach to create the csv file with the transformations directly from the information of the surface topology?

Any feedback would be really appreciated

best regards

Andreas
Attachments
grasstest-04.jpg
Architectural Rendering Services
1 x 4090 GTX, 1 x 3090 GTX
http://www.v-cube.de
User avatar
v-cube
Licensed Customer
Posts: 491
Joined: Fri Jul 22, 2011 11:02 am
Location: Aachen, Germany
Contact:

... here are a few links:

the great harmonize plugin by Thomas Anagnostou

http://www.rayflectar.com/Rhino/RhinoSc ... allery.htm


very interesting plugin from Cam Newham

http://www.camnewnham.com/rhinogrow-0-25/ (csv export to the rhino octane plugin does not seem to work, point distribution seems to give unexpected results with my tests...)

there are a few csv export scripts floating around here but I cannot find them right now...
maybe someone can find them...



some grasshopper stuff which i cannot get to work with my grasshopper version:

http://www.grasshopper3d.com/forum/topi ... rass-proxy

and here:

http://render.otoy.com/forum/viewtopic. ... er#p103111

best

Andy
Architectural Rendering Services
1 x 4090 GTX, 1 x 3090 GTX
http://www.v-cube.de
newske
Licensed Customer
Posts: 126
Joined: Sat Nov 03, 2012 11:51 pm

Hi Andy,
I will update RhinoGrow shortly - which is intended to follow the workflow you mentioned
1. create a surface the grass will be applied to
2. distribute Points to the surface by defining a density / sm (e.g. 6400pt / square meter)
3. replace the points by an user defined object or a block
4. apply random transformations to the objects (scale,rotate,displacement)
5. transform the objects to a csv file (separators have to be “real” commas not just “space” )
6. select a grass element (3polar arranged grass leaves) block it and apply the csv file to it.
I would note, though, that for grass the recommended way to do it is to create three or four clusters, which might have 50-100 blades each, and scatter those. With proper rotation and scaling you won't be able to tell them apart, and you'll save a great deal of trouble.

I'll post here again soon once it's updated, should be sometime this week.

Newske
Octane for Rhino | Windows 8.1 x64 | i7-3820 OC | GTX970 4GB OC & GTX 560 Ti 1GB OC | 32GB DDR3
newske
Licensed Customer
Posts: 126
Joined: Sat Nov 03, 2012 11:51 pm

Hi Andy,

I have updated the content here: http://www.camnewnham.com/rhinogrow/

Let me know how that works for you.

Newske
Octane for Rhino | Windows 8.1 x64 | i7-3820 OC | GTX970 4GB OC & GTX 560 Ti 1GB OC | 32GB DDR3
User avatar
v-cube
Licensed Customer
Posts: 491
Joined: Fri Jul 22, 2011 11:02 am
Location: Aachen, Germany
Contact:

newske wrote:Hi Andy,

I have updated the content here: http://www.camnewnham.com/rhinogrow/

Let me know how that works for you.

Newske
Thank you Newske, I will test it immediately when I am done with my daily duties ;-)

best

Andy
Architectural Rendering Services
1 x 4090 GTX, 1 x 3090 GTX
http://www.v-cube.de
User avatar
Daniel79
Licensed Customer
Posts: 451
Joined: Tue Jan 26, 2010 3:53 pm
Location: Italy

I am not able to create my 1x1 floor with grass, with rhinogrow.
Can anyone create a mini tutorial to understand how it works?

thank you very much
SORRY, MY ENGLISH IS BAD!
2 Xeon quad core E5440_8gb Ram_Nvidia GeForce 2GTX 780ti 3Gb/Nvidia Quadro K2000_Win10 64bit_Octane 3.02_Rhinoceros3D
newske
Licensed Customer
Posts: 126
Joined: Sat Nov 03, 2012 11:51 pm

Daniel - What's going wrong?
If you're quite literally trying to just make a 1x1 floor of grass (and you're modelling in metres) you'll want to set PPU as something like 5,000 or more.

So, you'd make a 1 unit x 1 unit surface (or mesh)
Click on it, run the script and set ppu to 5,000 or so (as in, there'd be 5000 blades of grass in that region).

Regards,
Newske
Octane for Rhino | Windows 8.1 x64 | i7-3820 OC | GTX970 4GB OC & GTX 560 Ti 1GB OC | 32GB DDR3
User avatar
Daniel79
Licensed Customer
Posts: 451
Joined: Tue Jan 26, 2010 3:53 pm
Location: Italy

I tried, but I just get the points, as instances of the block
Now try again and I'll show you the result
SORRY, MY ENGLISH IS BAD!
2 Xeon quad core E5440_8gb Ram_Nvidia GeForce 2GTX 780ti 3Gb/Nvidia Quadro K2000_Win10 64bit_Octane 3.02_Rhinoceros3D
User avatar
Daniel79
Licensed Customer
Posts: 451
Joined: Tue Jan 26, 2010 3:53 pm
Location: Italy

this is my result
Attachments
Errore.jpg
SORRY, MY ENGLISH IS BAD!
2 Xeon quad core E5440_8gb Ram_Nvidia GeForce 2GTX 780ti 3Gb/Nvidia Quadro K2000_Win10 64bit_Octane 3.02_Rhinoceros3D
User avatar
Daniel79
Licensed Customer
Posts: 451
Joined: Tue Jan 26, 2010 3:53 pm
Location: Italy

solved...thanks
SORRY, MY ENGLISH IS BAD!
2 Xeon quad core E5440_8gb Ram_Nvidia GeForce 2GTX 780ti 3Gb/Nvidia Quadro K2000_Win10 64bit_Octane 3.02_Rhinoceros3D
Post Reply

Return to “Rhinoceros 3D”