Grasshopper

algorithmic modeling for Rhino

Hi forum,

 

The "decompose mesh" component outputs "mesh normals" but what do these normals correspond to: Are they normal to the mesh faces at their centre or at a specific vertex?

 

How would you then extrude mesh edges using the mesh normals?

 

Hope this makes sense,

Many thanks,

 

Arthur 

Views: 5847

Replies to This Discussion

The normals from "decompose mesh" are the vertex normals, not the face normals.

There is a Face Normals component, which might be from [uto]'s Mesh Tools

Thanks Benjamin and Danny!

 

If I use the "mesh normal" output as direction for a Line SDL and the Vertices as start points for the line, shouldn't I get perpendicular lines to the mesh vertices?

Right now I get vertical lines:

 

 

UTO's mesh normal works great for the center of the mesh but how could I extrude the edges of the mesh perpendicularly (without overlaps) ?

 

 

Can you post your mesh or send it to me? As its working at my end as expected.

Thanks Danny!  

That's weird,  I just tried again and still getting vertical lines (mesh attached)...

 

Attachments:

Those normals need rebuilding.

Either do it in Rhino (RebuildMeshNormals)

or use the attached C# script in Grasshopper

Attachments:

Thanks so much Daniel !  It works fine now :)

 

Well there you go, you learn something new every day. If anyone else comes across this problem, you can check the Object Description in the Properties toolbar, click on Details.

Before RebuildMeshNormals:

mesh

ID: 2e7ea634-5b7b-45a5-90f0-d25c01bb9cd5 (108)

Layer name: Lights

Render Material:

source = from layer

index = -1

Attribute UserData:

UserData ID: B0EE2168-8EC6-42ed-A962-26DEB8CC8F9A

Plug-in: Rhino Render

description: Rhino Renderable Object UserData

saved in file: no

copy count: 1

Geometry:

Valid mesh.

Open polygon mesh: 391 vertices, 427 polygons

bounding box: (-23377.3,-17801.2,8850) to (-13700.8,-6203.83,10115.9)

After command:

mesh

ID: 2e7ea634-5b7b-45a5-90f0-d25c01bb9cd5 (111)

Layer name: Lights

Render Material:

source = from layer

index = -1

Attribute UserData:

UserData ID: B0EE2168-8EC6-42ed-A962-26DEB8CC8F9A

Plug-in: Rhino Render

description: Rhino Renderable Object UserData

saved in file: no

copy count: 2

Geometry:

Valid mesh.

Open polygon mesh: 391 vertices, 427 polygons with normals

bounding box: (-23377.3,-17801.2,8850) to (-13700.8,-6203.83,10115.9)

 

Indeed ! thanks Danny but came another problem...

Simply tried to loft the two mesh edges and got the following.

Both list have the same amount of lines and no null value but can't figure out how to loft correctly.

 

 

 

Self Solved using WB mesh polyline instead of edges :)

 

I was just putting together something to show you along those lines. Before the two Meshes don't have the same order of edges.

Some are the same some are not. Maybe ask Giulio why this is.

Daniel,

I'm having a problem with your script. It seams easy enough (two lines of code!) but it isn't working for me (See screenshot). Although there are no errors with the script, the normals are not rebuilt as they are with the Rhino command RebuildMeshNormals. 

Any idea on why the normals are not being computed to begin with? The mesh was made using Kangaroo and Weaverbird. I can provide the whole Gh file with Kang and Wb if needed.

On a related question, I wasn't able to find a similar method in rhinoscript, rhinocommon, or python. Has it not been added yet or am I just missing it?

Thanks,

Andrew

Attachments:

RSS

About

Translate

Search

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service