Grasshopper

algorithmic modeling for Rhino

Hi All

I'm guessing there's a quick answer to this, but I can't find it...

How do I extract the normal of a plane from a surface box component? Or, otherwise said, How do I get the normal of a surface at the same u,v location as the surface box origins?

I've tried 'plane components' and 'evaluate surface'. Either one would seem to work, but the difficulty is recomposing the x,y,z vectors of the plane components into the correct vector (I got some different results but not the correct one), and/or inputting the correct u,v for the evaluate surface.

Any suggestions?

Thanks!

Rob

Views: 1908

Replies to This Discussion

Any suggestions?

I'm still getting all the planes with +z vectors when they should be responding to the curvature of the surface.

If you provide an image, its usually easier to help...is this something like what you need?
Yep! Much thanks, Luis. The 2d slider was the missing piece.

Below are a couple screen shots of what I got to work. Just a part of a larger def.

It still seems like a lot of work to arrive at a value that is already in the srfbox component: the vector giving the surface box its height. Is there not a simpler way to extract that value?


Well, you could get the normal from the center of some SrfIsotrims (the face of the srf box that lies on the surface)

Nice, Luis, and that's a bit cleaner.

Still feels like a bit of a work around, though. And when you work through the srfbox you can locate the origin of the vector at the top of the box, which is equal to the H variable. For panelization that could also be useful. I think this is a question for David... David, is there a direct way to get the H value--vector with amplitude--out of the srfbox component?

If you're using the srfboxes, then the next question is how to equalize the number of vectors/orgins and surface boxes. Check out the image below and the attached def (use any two crvs to make the loft). The exploded brep should be giving an F value of 7200 (900 boxes * 8 faces/box), but it only gives 900. And that causes problems for the circle component.

Attachments:

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