Grasshopper

algorithmic modeling for Rhino

Creating topography surface to export .STL file from XYZ .csv?

Hello All,

I am very new to Grasshopper and have traditionally used QGIS for creating topography but am trying to do it in Rhino.  I have a list of xyz points in a .csv attached.  I would like to interpolate a smooth surface based on these points.  Any suggestions are greatly appreciated.  I have tried the Delaunay Mesh but now need to smooth it and create a file in Rhino that can be exported as a .stl.

Thank you,

Anya

Views: 3042

Attachments:

Replies to This Discussion

Looks more like a cloud of points than a surface?  Are X, Y and Z mixed up?  (not that that would help)

Thank you, Joseph, for your quick reply.  The points are centroids for each county in the continental US.  If you look at it from the top you will see the US.  In QGIS I would use Grid Interpolation using an Inverse distance to a power algorithm to create the topography.

Ah, yes...  missed that.  Looks a little distorted? 

Might want to 'ReMap' the Z values to something less extreme?  Oh, is that what this means?

an Inverse distance to a power algorithm

P.S.  Just saw this yesterday - depends on a boundary curve though:

http://www.grasshopper3d.com/forum/topics/delaunay-triangulation-in...

Hello Joseph,

The Z is a metric - in this case missing meals per year / 100,000 per county (as opposed to using elevation) to create an alternate topography of the US. so the Z should look very off. :-). With the drape in Rhino, it actually looked pretty interesting as below.  Still,I am looking for a way to interpolate the surface and be able to export it as a .stl file.

Anya

 

I'm not a "mesh guy", just hacking here...  Trying to trim out the extraneous faces/edges.  Just as I was about to post this, I realized that my filtering effort would be more effective and stable (not influenced by height scaling) if I project the mesh face boundaries to a plane before measuring them.  I'll try that next.

This one was "done" so I'll post it anyway.

Attachments:

I realized that my filtering effort would be more effective and stable (not influenced by height scaling) if I project the mesh face boundaries to a plane before measuring them.

That was easy and much more effective.  Still not a perfect "convex trim", maybe one of the mesh experts here can do that better?

Then I decided to throw in this bit from a thread ~2 weeks ago, to make it a "solid":

http://www.grasshopper3d.com/forum/topics/expand-extrude-a-mesh-and...

Attachments:

Very cool!  Thank you so much for your help!

Do you have a twitter handle so I can thank you when I post the visual result?

Anya

Nope, thanks anyway.  It could be better.  You're welcome.

Why does it look stretched East <--> West?

I believe it got stretched when the projection changed to a flat earth.

Thank you again!  I am having fun digging in and figuring out each step.

Anya

Why does it look stretched East <--> West?

I used a trimmed copy of this image to determine a 'W/H ratio' and used that to compute a scale X factor for the field of points.

https://wall.alphacoders.com/big.php?i=687665

Looks a little more as expected, but these points are county seats(?) and don't define any real perimeter curve, so it's still approximate.  You can plug a 0..1 slider into the 'Scale NU (X)' input instead of the 'BBox/Edges' calculation.

Viewed from high above Canada:

Attachments:

This is the outline of that same map image, superimposed on the mesh (Rhino 'PictureFrame').  Still not a great match.

Thanks!  To start, I created a centroid of each of the county shapes and used that as the XY.  That would be why the outline is not the same as if I just used the county shapes.  I will play with the projection conversions to get a slightly better fit if possible.  Again, thank you!  I really appreciate your help and realize there is a lot of learning ahead, as well as really exciting applications! 

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