# MeshUnsafeLock class

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

```cs
public sealed class MeshUnsafeLock : IDisposable
```

Permits access to the underlying mesh raw data structures in an unsafe way.

**Remarks:** This lock object needs to be disposed before using the Mesh in other calculations and this can be achieved with the using keyword (Using in VB.Net).

## Methods

- [FaceNormalsArray](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.meshunsafelock/facenormalsarray.md): Retrieves a pointer to the raw mesh face normals array, which uses vectors defined with single precision floating point numbers, or throws an exception if none is available.
- [FacesArray](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.meshunsafelock/facesarray.md): Retrieves a pointer to the raw faces array, which uses 4 integers for each face. [MeshFace](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.meshface.md).
- [NormalVector3fArray](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.meshunsafelock/normalvector3farray.md): Retrieves a pointer to the raw mesh vertex normal array, which uses vectors defined with single precision floating point numbers, or throws an exception if none is available.
- [Release](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.meshunsafelock/release.md): Releases the lock and updates the underlying unmanaged data structures.
- [IDisposable.Dispose](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.meshunsafelock/system-idisposable-dispose.md)
- [VertexColorsArray](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.meshunsafelock/vertexcolorsarray.md): Retrieves a pointer to the raw mesh vertex colors array, which uses RGBA integers or throws an exception if none is available.
- [VertexPoint3dArray](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.meshunsafelock/vertexpoint3darray.md): Retrieves a pointer to the raw mesh vertex array, which uses coordinates defined with double precision floating point numbers, or throws an exception if none is available.
- [VertexPoint3fArray](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.meshunsafelock/vertexpoint3farray.md): Retrieves a pointer to the raw mesh vertex array, which uses coordinates defined with single precision floating point numbers, or null if none is available.
