# PointCloudUnsafeLock 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 PointCloudUnsafeLock : IDisposable
```

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

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

## Methods

- [ColorArray](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.pointcloudunsafelock/colorarray.md): Retrieves a pointer to the raw array of colors, which are represented as 32-bit integers in ARGB format, or null if none is available.
- [NormalArray](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.pointcloudunsafelock/normalarray.md): Retrieves a pointer to the raw array of point normals, or null if none is available.
- [PointArray](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.pointcloudunsafelock/pointarray.md): Retrieves a pointer to the raw point array, which uses coordinates defined with double precision floating point numbers, or null if none is available.
- [Release](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.pointcloudunsafelock/release.md): Releases the lock and updates the underlying unmanaged data structures.
- [IDisposable.Dispose](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.pointcloudunsafelock/system-idisposable-dispose.md)
- [ValueArray](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.pointcloudunsafelock/valuearray.md): Retrieves a pointer to the raw array of point values, or null if none is available.
