# HalfEdgeVertexList class

Namespace: [Grasshopper2.Geometry.HalfEdges](https://developer.rhino3d.com/api/gh2/namespace/grasshopper2.geometry.halfedges.md) · Assembly: [Grasshopper2](https://developer.rhino3d.com/api/gh2/assembly/grasshopper2.md)

```cs
public class HalfEdgeVertexList : IEnumerable<HalfEdgeVertex>
```

Provides access to the vertices and [HalfEdgeVertex](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertex.md) related functionality of a Mesh. Derived from Plankton, (c) 2013 Daniel Piker and Will Pearson, licensed LGPL v3 or later.

## Properties

- [Count](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/count.md): Gets the number of vertices.

## Indexers

- [this[]](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/item.md): Returns the [HalfEdgeVertex](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertex.md) at the given index.

## Methods

- [Add](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/add.md): Adds a new vertex to the end of the Vertex list.
- [AddVertices](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/addvertices.md): Adds a series of new vertices to the end of the vertex list.
- [CullUnused](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/cullunused.md): Removes all vertices that are currently not used by the Halfedge list.
- [EraseCenterVertex](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/erasecentervertex.md): Erases a vertex and all incident halfedges by merging its incident faces.
- [GetEnumerator](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/getenumerator.md): Gets an enumerator that yields all faces in this collection.
- [GetHalfedges](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/gethalfedges.md): Gets the halfedges which originate from a vertex.
- [GetHalfedgesCirculator](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/gethalfedgescirculator.md): (2 overloads, obsolete) Traverses the halfedge indices which originate from a vertex.
- [GetIncomingHalfedge](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/getincominghalfedge.md): Gets the first incoming halfedge for a vertex.
- [GetIncomingHalfedges](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/getincominghalfedges.md): Gets the halfedges which end at a vertex.
- [GetNormal](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/getnormal.md): Gets the normal vector at a vertex.
- [GetNormals](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/getnormals.md): Gets the normal vectors for all vertices in the mesh.
- [GetPositions](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/getpositions.md): Gets the positions of all vertices.
- [GetValence](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/getvalence.md): Gets the number of edges incident to this vertex.
- [GetVertexFaces](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/getvertexfaces.md): Gets faces incident to a vertex.
- [GetVertexNeighbours](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/getvertexneighbours.md): Gets vertex neighbours (a.k.a. 1-ring).
- [IsBoundary](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/isboundary.md): A vertex is on a boundary if its outgoing halfedge has no adjacent face.
- [MergeVertices](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/mergevertices.md): Merges two vertices by collapsing the pair of halfedges between them. [HalfEdgeList.CollapseEdge(int)](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgelist/collapseedge.md)
- [NakedEdgeCount](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/nakededgecount.md): Gets the number of naked edges incident to this vertex.
- [SetVertex](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/setvertex.md): (2 overloads) Sets or adds a vertex to the Vertex List. If [index] is less than [Count], the existing vertex at [index] will be modified. If [index] equals [Count], a new vertex is appended to the end of the vertex list. If [index] is larger than [Count], the function will return false.
- [SplitVertex](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/splitvertex.md): Splits the vertex into two, joined by a new pair of halfedges.
- [IEnumerable.GetEnumerator](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/system-collections-ienumerable-getenumerator.md)
- [TruncateVertex](https://developer.rhino3d.com/api/gh2/type/grasshopper2.geometry.halfedges.halfedgevertexlist/truncatevertex.md): Truncates a vertex by creating a face with vertices on each of the outgoing halfedges.
