Grasshopper

algorithmic modeling for Rhino

Moving vertices according to the normals of a base surface

Hi everyone

I feel like this should be a fairly straightforward problem to solve. Help is MASSIVELY appreciated. In the attached files you'll see I've divided base surfaces (from spheres) and broken them down into parts to create triangular panels. Originally their vertices were set to move with the z vector, (which is why you'll see that component left in the file), but now I'm trying to use the surface normals as the direction. To do that I've divided the base surface in the same way as for the other panels and used that to get the points for the normals, to input back as the translation vector.

Problems occuring: 1. The vertices all seem to be moving in one direction, not with their respective normals. 

2. I actually need the resultant position of the vertices to decided the form of the panels, rather than what's currently occurring which is the vertices moving with the vector but the panels staying the same size, and therefore the panels split from each other. (When changing the amplitude.)

I'm aware this adds another layer of complexity and I don't know if I'm up for the challenge. However it's done, I just need those central vertices to bulge straight outwards, in a controllable way.

Views: 1425

Attachments:

Replies to This Discussion

Try this - it uses surface closest point and Evaluate surface to find and use the true normal at each point, rather than one for each subsurface.

I'm not sure what version of GH you have, but I've also dropped in the new "List Item" component (with zoomable UI so you can add indices to the output and de-clutter the canvas a bit) and the "Point on Curve" component. I thought about but quickly decided not to rewire all the 4pt Srfs! Hope this helps.

Attachments:

Thank you so much! This makes such a massive difference to my day.

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