Grasshopper

algorithmic modeling for Rhino

Hi all,

I have subdivided a single dome surface into numerous small 4-sided (quad) and 3-sided (triangular) surfaces. I want to extract the x,y and z coordinates of vertices of each small surface. Does anyone how to implement this in Rhino?

Best regards,

Sushant

Views: 8418

Replies to This Discussion

Hi Sushant, if you want to use Grasshopper to do this then you can reference the Surfaces in Rhino and then extract the Vertices.

BRep Param = Set Multiple Breps

BRep Param --> Deconstruct BRep

Deconstruct BRep (V) --> Panel

If you give me an example of the MACRO layout for Ansys and an example of the model you want translated into this format I can be more helpfull

Here you go.

hi Sushant,

have you considered extracting the coordinates and write them in (csv) file or (xml) file ? 

you can then read the file in any text editor, and you can also read it as a table in excel, like this:

Attachments:

If my understanding is correct the tricky bit here is identifying unique nodes. 

For instance in your example above panel 3 node 2 is the same as panel 4 node 0. Therefore when defining the elements it would have the same id in each.

I'm at home now using my Tablet so will have to make do with GDL

Brep --> (S) Iso Trim

Brep --> (I) Divide Domain 2

Divide Domain 2 --> (D) Iso Trim

Iso Trim -->  Deconstruct Brep

Deconstruct Brep (V) --> Create Set

(L) Create Set: Flatten = True

Deconstruct Brep (V) --> (D) Find Similar Member

Create Set (L) --> (S) Find Similar Member

Deconstruct Brep (V) --> (P) Point to Numbers

(P) Point to Numbers: Graft = True

Find Similar Member (i) --> (D1) Merge

Find Similar Member (i): Simplify = True

# The (i) output is the N in the macro

(D1) Merge: Graft = True

Point to Numbers (N) --> (D2) Merge

Point to Numbers (N): Simpify =True

# The (N) outputs are the x,y,z components of the macro

Create Panel[1], Panel[2], Panel[3]

Panel[1] = ,

Panel[2] = E,

Panel[3] = N,

# start to combine all the parts together

Panel[1] --> (J) Text Join[1]

Find Similar Member (i) --> (T) Text Join[1]

Merge --> (T) Text Join[2]

Panel[1] --> (J) Text Join[2]

Panel[2] --> (A) Concatenate[1]

Text Join[1] --> (B) Concatenate[1]

Panel[3] --> (A) Concatenate[2]

Text Join[2] --> (B) Concatenate[2]

Concatenate[2] --> (D) Shift Paths

Shift Paths --> Tree Statistics

Tree Statistics (C) --> (C) Series

Series --> Int

Create Panel[4], Panel[5]

Panel[4] = "! Panel #"

Panel[5] = 0

Panel[5] = 1

# make sure Panel[5] is set to not multi-line

Panel[4] --> (A) Concatenate[3]

Int --> (B) Concatenate[3]

(B) Concatenate[3]: Graft = True

Concatenate[3] (R): Simplify = True

Shift Paths --> (L) List Insert

# make sure the next hooks are in order

Concatenate[2] --> (I) List Insert

Concatenate[3] --> (I) List Insert

Panel[5] --> (i) List Insert

List Insert (L): Flatten =True

List Insert --> Panel[6]

Panel[6]: Stream Contents =True

Here's the definition

Attachments:

It might have something to do with The fact that I am dividing up the surface into a 10 x 10 grid as an example!

Just remove everything up to the Deconstruct Brep component which gives you the vertices of your referenced surface(s)

Does this fix it?

Otherwise upload a 3DM for me to look at where the issue occurs

Attachments:

No problem

Change the start of the Series Component

(S) Series = 1

Sorry I'm with you now.

#Set the output (i) to add 1 to its value by right clicking on it and selecting Expression 

Find Similar Members (i): Expression = X+1

 

RSS

About

Translate

Search

Photos

  • Add Photos
  • View All

Videos

  • Add Videos
  • View All

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service