Extrude mesh faces to a point

I am trying to extrude mesh faces to a point. It is possible with surfaces, but not with meshes.

My another idea is to subdivide faces and move the middle vertices.
I tried to subdivide mesh faces, but I didn´t manage to do it from corners to the middle. In Wawebird there are many different subdivision methods, but not the way I need it.

Thanks a lot for your help!

Explode the mesh
Take face normals
Use it normal to move center point or whatever point you want on the face
Reconstruct 3 new face with 4 points (3 from the face) and the new from the “extrusion”

That’s all


Hello Laurent,
thank you so much for your help. It works perfectly! :slight_smile:
I was not able to come up with the last two steps - how to build a new mesh.

I have to find good tutorials about mesh construction, because it’s a big mystery for me so far :slight_smile:

Thanks a lot!

As you didn’t upload any script it is hard to know where you are (input) and what for is the output
Mesh is a complete world, and there is also some specific for the mesh in Rhinocommon. It takes a bit time. The main part are Vertex and connectivity (faces). There are many tricks, dead end, new functionality (in R6 R7) that generates bugs that were not there in R5 … The main utility of mesh is that it carries topology (connection between points, edges, faces) that is very useful for many domains/subjects.

extrude triangles.gh (7.9 KB)

A mesh is a mini database (kinda a Brep) of 3 types: Vertices (points), Edges(lines) and Faces (tri/quads). For Vertices … well … here’s the LOL part: there’s Vertices on a per Face basis (called Vertices) and Vertices on a per mesh basis (called Topology Vertices). Their indexing differs but there’s exposed RC Methods from/to. This LOL thingy means that the N of Vertices MAY be bigger than the N of Topology Vertices meaning that a Topology Vertex MAY point to more than one Vertex.

All the above are related in the so called connectivity trees (of type integer). With regard Vertices these deal with TopologyVertices. These may co-relate (by index) apples to apples (like Vertices to Vertices) or apples to bananas (like Faces to Vertices). A conn tree is something where the last index of the path is the index of the parent (in some V, E, F List/DataTree) and branch items are the indices of the childs (in the same V. E, F Lists/DataTrees).

Since we have 3 types the possible conn Trees are 9 (but some are used more than others).

Plus there’s other type of info “directly” available (derived from the conn Trees) like naked Vertices, islands (disjoined Meshes) etc.

A valid Mesh is the thing where each Edge is connected with max 2 faces (meaningg that every Edge connected with one Face is a naked Edge). A naked Vertex is the one that belongs to a naked Edge.

Hello Laurent and Peter,
thanks a lot for your advice and help! I am beginner, so it sounds quite complicated for me, but I’ll try to play with it a bit :slight_smile:

I am modelling such faceted structure:

Howewer my script is so complicated, crazy and uneffective, that is better not to upload it here :slight_smile:

Thanks a lot for your help guys!

Well … given the opportunity I have a similar thingy, so get it:

Mesh_Offset_AndVariateFaces_EntryLevel_V1.gh (125.7 KB)

BTW: It can’t teach you a thing or two if you don’t have plans to walk the other side of the fence.