# MeshFaceNormalList class

Namespace: [Rhino.Geometry.Collections](https://developer.rhino3d.com/api/rhinocommon/namespace/rhino.geometry.collections.md) · Assembly: [RhinoCommon](https://developer.rhino3d.com/api/rhinocommon/assembly/rhinocommon.md)

```cs
public class MeshFaceNormalList : IResizableList<Vector3f>, IList, IReadOnlyList<Vector3f>
```

Provides access to the Face normals of a Mesh.

## Properties

- [Capacity](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/capacity.md): Gets or sets the total number of face normals the internal data structure can hold without resizing.
- [Count](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/count.md): Gets or sets the number of mesh face normals.
- [ICollection<Vector3f>.IsReadOnly](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-generic-icollection-rhino-geometry-vector3f-isreadonly.md)
- [ICollection.IsSynchronized](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-icollection-issynchronized.md)
- [ICollection.SyncRoot](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-icollection-syncroot.md)
- [IList.IsFixedSize](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-ilist-isfixedsize.md)
- [IList.IsReadOnly](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-ilist-isreadonly.md)

## Indexers

- [IList.this[]](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-ilist-this.md)
- [this[]](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/item.md): Gets or sets the face normal at the given face index. The index must be valid or an IndexOutOfRangeException will be thrown.

## Methods

- [AddFaceNormal](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/addfacenormal.md): (4 overloads) Appends a face normal to the list of mesh face normals.
- [Clear](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/clear.md): Clears the Face Normal list on the mesh.
- [ComputeFaceNormals](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/computefacenormals.md): Computes all the face normals for this mesh based on the physical shape of the mesh.
- [Destroy](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/destroy.md): Releases all memory allocated to store face normals. The list capacity will be 0 after this call. Subsequent calls can add new items.
- [GetEnumerator](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/getenumerator.md): Gets an enumerator that yields all normals (vectors) in this collection.
- [SetFaceNormal](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/setfacenormal.md): (4 overloads) Sets a face normal vector at an index using three double-precision numbers.
- [ICollection<Vector3f>.Add](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-generic-icollection-rhino-geometry-vector3f-add.md)
- [ICollection<Vector3f>.Contains](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-generic-icollection-rhino-geometry-vector3f-contains.md)
- [ICollection<Vector3f>.CopyTo](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-generic-icollection-rhino-geometry-vector3f-copyto.md)
- [ICollection<Vector3f>.Remove](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-generic-icollection-rhino-geometry-vector3f-remove.md)
- [IList<Vector3f>.IndexOf](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-generic-ilist-rhino-geometry-vector3f-indexof.md)
- [IList<Vector3f>.Insert](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-generic-ilist-rhino-geometry-vector3f-insert.md)
- [IList<Vector3f>.RemoveAt](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-generic-ilist-rhino-geometry-vector3f-removeat.md)
- [ICollection.CopyTo](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-icollection-copyto.md)
- [IEnumerable.GetEnumerator](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-ienumerable-getenumerator.md)
- [IList.Add](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-ilist-add.md)
- [IList.Contains](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-ilist-contains.md)
- [IList.IndexOf](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-ilist-indexof.md)
- [IList.Insert](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-ilist-insert.md)
- [IList.Remove](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-ilist-remove.md)
- [IList.RemoveAt](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/system-collections-ilist-removeat.md)
- [UnitizeFaceNormals](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.collections.meshfacenormallist/unitizefacenormals.md): Unitizes all the existing face normals.
