GetTopologicalVertices Method

Can someone explain what returned indices from GetTopologicalVertices Method refer to? I get some indices but they are not corresponding to the mesh vertices index.
I thought that obj_ref.Mesh().Faces[faceNumber] and obj_ref.Mesh().Faces.GetTopologicalVertices(faceNumber) were supposed to return the same indices result.

Hi Raf

they refer to the “logical” amount of vertices of a mesh. Meshes can have more vertices for two reasons: some vertices can be unused, and some vertex-points can be repeated so that different normals can be assigned to the (for example, along the sharp edge of a cube). TopologicalVertices gives a single index for each of these. You can then trace back to which “normal” mesh vertices the topological vertex refers. Please also note that TopologicalEdges refer to these indices, rather than the other Vertices.

To compute this information, once a mesh is constructed and until it’s edited, Rhino caches topological information regarding vertices.

I hope this is helpful


Giulio Piacentino
for Robert McNeel & Associates

1 Like

Hi Giulio, Ok it sounds clear now. Thank you for you explanation.