# Unroller 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 class Unroller
```

Represents the operation of unrolling a single surface.

## Constructors

- [Unroller](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.unroller/ctor.md): (2 overloads) Initializes a new instance of the [Unroller](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.unroller.md) class with a brep.

## Properties

- [AbsoluteTolerance](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.unroller/absolutetolerance.md): Gets or sets the absolute tolerance for the unrolling operation. Absolute tolerance is used in the evaluation of new entities, such as intersections, re-projections and splits. In the current implementation, absolute tolerance is used in tessellating rails, fitting curves and pulling back trims.
- [ExplodeOutput](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.unroller/explodeoutput.md): Gets or sets a value determining whether geometry should be exploded.
- [ExplodeSpacing](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.unroller/explodespacing.md): Gets or sets a value determining whether spacing should be exploded.
- [RelativeTolerance](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.unroller/relativetolerance.md): Gets or sets the relative tolerance for the unrolling operation. Relative tolerance is used in the evaluation of intrinsic properties, such as computations "along" the surface or brep. In the current implementation, relative tolerance is used to decide if a surface is flat enough to try to unroll. That helps ease the scale dependency. The surface has to be linear in one direction within (length * RelativeTolerance) to be considered linear for that purpose. Otherwise smash will ignore that tolerance and unroll anything.

## Methods

- [AddFollowingGeometry](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.unroller/addfollowinggeometry.md): (9 overloads) Adds a curve that should be unrolled along with the surface/brep.
- [FollowingGeometryIndex](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.unroller/followinggeometryindex.md): (2 overloads) Given an unrolled curve, returns the index of the source, or following curve.
- [PerformUnroll](https://developer.rhino3d.com/api/rhinocommon/type/rhino.geometry.unroller/performunroll.md): (2 overloads) Executes unrolling operations.
