Grasshopper

algorithmic modeling for Rhino

I am not quite sure,but it seems that the FlipSurface component doesnot work??see below,fliped surface have a same normal direction as the original one.

Views: 388

Replies to This Discussion

Hi Alpha,

Actually, it does work,. It's the Surface Normal evaluator in Grasshopper that is buggy. All surfaces have a Boolean flag on them that can reverse the orientation. The Flip component toggles this flag, but the Normal evaluator in Grasshopper doesn't take it into consideration. (I wrote the evaluator early on, back when I didn't know this flag existed).

If you bake the surfaces, Rhino will probably treat them as flipped.

--
David Rutten
david@mcneel.com
Poprad, Slovakia
Thanks for this explanation David. I right now tested Flip using a SurfaceBox component ,and it works fine.However the SurfaceMorph component seems a little buggy:I remember once I flip the original surface,then the morphed geometry flip to the other side of the surface too ??Will you(or someone else) check it? Picture follows.

It's most likely the same bug manifested in another way. I'll fix all Surface Normal evaluators everywhere so we can see what problems remain. I cannot do this very quickly though, I'm still having problems just getting Grasshopper to start at the moment.

--
David Rutten
david@mcneel.com
Poprad, Slovakia
Never mind David,I will wait for Gh v0.7 .
By the way,you have done a great work and good luck!!
David, do you know if this boolean flag exists for meshes? When i export to Ecotect, sometimes some faces are reversed. The Ecotect documentation says that the face normal will depend on the order of the points that generate the face (counter clockwise means normal points out).
I wonder if its that boolean flag screwing things up.
No, meshes don't have this flag. But they can be even more complicated than Nurbs surfaces when it comes to normals.

Meshes have Normal vectors for vertices and for faces. Typically these can be computed from the geometry, but how they are computed is not very well defined.

A naive algorithm might compute face normals based purely on the rotation of the face corners. I.e., if the face normal is pointing towards you, the corners of the face are always going counter-clockwise around the normal.

A more advanced algorithm might take adjacent faces into account and make sure that aberrant normals are flipped when they are amidst normals pointing in the opposite direction.

When you call the Flip function on a Mesh in the Rhino SDK, you have the option to flip vertex normals, face normals and face orientations.

If Ecotect recomputes mesh normals in a different way from Rhino (rather than reading them from the file), you may well end up with weird effects. But I don't know if this is truly the problem.

--
David Rutten
david@mcneel.com
Poprad, Slovakia

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