algorithmic modeling for Rhino

Hi Peeps,

I am having trouble using the "surface from points" command. 

I have a rectangular grid of points. I moved them up in the z direction. I want the moved points to make a surface.

I input the points in the 'P' input parameter in the Surface component. 

What goes in the 'U' input?

I thought it was an integer, the number of points in one direction. 

The component turns RED when I input the number of points (20). I have 380 grid points. They should be 20 in the U direction, 19 in the Y, and 1 in the Z. 

What am I doing wrong? What goes in the U input? Please help!

Views: 25944

Reply to This

Replies to This Discussion

make it 21. U+1.

because you have 20 divisions in the U direction, but 21 points, because of the end points on the surface edge. 

20 is my U+1. Anyway, I tried 19, 20, and 21-- I tried everything and all I see is red. I'll try to upload it again. Do I need to include some sort of vector conversion?

Hi Ivy,

Flatten the point list at the surface input.


That worked, but now I have a flat plane. I would like my plane to conform to the grid points as they are set after I moved them. This is why "flattening" does not achieve the final product I'm looking for. I would like the surface to curve... How else can I manipulate the points of a nurbs surface?

thank you! 

You could interpolate a curve through each row of your grid of points and then loft the curves. The surface would then update as the points move.


Could you please tell me how to make a NURBS curve through each row of a grid of points? or through a list of points?


Sure, it would be easier if you could upload a file you are working with - just because I'm not sure exactly how you are generating your points.

In general it's just list management. You can do this a few different ways (using series + list items, sublists, path mappers...)


I have for example a text files, like the file I uploaded, these are a series of numbers generated randomly, I want make a NURBS curve for each row. 

Thanks for your help:)

This is a text file


I thought you were just stuck on getting the surface to generate.  Here it is with unique Z-vectors.  If you need more help it would be good if you posted your definition.  Guessing is the hard part.



Chris T has described the solution you are looking for.  

Here is a very minor variation on that theme, using the good old image sampler.  Attached are the example files with some notes on what is going on.  

if you want, you can read through the notes.  They are intended to explain a few things, as well as pose a question or two!


Hi Chris, 

I am also working with a similar issue.  I have a list of points (in text format), and i'd like to make a surface with them, ensuring that i can change the z value as needed.  I'm looking at your gh file at the moment and I am confused by the image sampler and its role in the script.  Basically, I'd just like to do what I've stated above.  With this script is it possible to change it so that each point can be assigned different values in the z direction?  Seems simple, but I'm unsure how to make it happen.  Any advice would be helpful!  

Thank you, 







  • Add Photos
  • View All

© 2018   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service