Hello Blender Community,
I’m new to Geometry Nodes, I’m working on a project where I need to create a cube system that automatically adds a mesh (like a plank) over the top face of a cube whenever I extrude it. The objective is to have this plank appear over both the original cube’s top face and the newly extruded part. I’m using geometry nodes .
I have the above cube which has been extruded to the given design, now I want to add some planks over the top face of each cube according to its length and width.
Plank Image
How can I add the above planks over each top face of the extruded cube, separately? I really appreciate any help you can provide.
Ok, so assuming that by “top face” you mean the face pointing up, and assuming that you are working with a solid mesh with a wireframe modifier added afterward…
Off the top of my head I would say:

select the top faces of the mesh by comparing the face normal with the vector (0, 0, 1) (I would use dot product for this.)

mesh to points, using the faces you selected.

make the plank an instance, and then instance on points.

somehow set the rotation and scale of the instances based on the orientation of the faces (I am on holiday at the moment, so I don’t have blender to check.)
Alternatively, after selecting the top faces you could just do another extrusion of only those faces, and then that would become the plank. But of course that would only work for the simple case of a plank, it wouldn’t work for an arbitrary mesh.
I hope that is helpful
1 Like
Thank you very much for your response! Your solution worked wonderfully, but I’m facing two issues:
 To increase the number of planks on the top face, I have to subdivide the mesh, which adds subdivisions along both axes. However, I only want to add subdivisions along the axis I’m extruding.
 Regarding the rotation of the planks, I’m still having trouble figuring out how to correct it.
Geometry Node
Your assistance has been incredibly helpful so far! I would greatly appreciate it if you could help me with these two points, as I’ve been stuck on this problem for quite a while and haven’t been able to find a solution.