# TickLayout class

Namespace: [Grasshopper2.UI.Numberline](https://developer.rhino3d.com/api/gh2/namespace/grasshopper2.ui.numberline.md) · Assembly: [Grasshopper2](https://developer.rhino3d.com/api/gh2/assembly/grasshopper2.md)

```cs
public sealed class TickLayout
```

A numberline layout for a specific portion of the number line.

## Constructors

- [TickLayout](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/ctor.md): Create a new numberline layout. Note you would almost never do this yourself, as the [TickLayout.Create(LineF, decimal, decimal, Properties)](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/create.md) and [TickLayout.Create(RectangleF, decimal, decimal, Properties)](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/create.md) methods do all the heavy lifting. You only need to populate your own numberline layout if you want non-standard things such as custom formatting or non-linear mapping.

## Properties

- [Axis](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/axis.md): Gets the visible portion of the numberline.
- [Bounds](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/bounds.md): Gets the bounds of all layout elements.
- [T0](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/t0.md): Gets the numeric value at the left end of the axis.
- [T1](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/t1.md): Gets the numeric value at the right end of the axis.
- [TickCount](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/tickcount.md): Gets the number of ticks in this layout.

## Indexers

- [this[]](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/item.md): Gets the tick at the given index.

## Methods

- [Clip](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/clip.md): Create a new layout with all ticks outside of the given range removed.
- [Create](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/create.md): (3 overloads, static) Create a number line layout with an explicit finest tick class. Unlike [TickLayout.Create(LineF, decimal, decimal, Properties)](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/create.md) the visibility of ticks is not derived from their spacing. Every power-of-ten class is either drawn or not, and its tick length is supplied by the caller, which allows the caller to animate classes in and out over time. Labels are organised in rungs, from coarse to fine: all labels of a class, then the halfway labels between them, then all labels of the class below, and so on. A rung fits when its label pitch exceeds the widest label visible at that rung.
- [Draw](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/draw.md): Draw this layout to a graphics context.
- [Evaluate](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/evaluate.md): Evaluate a parameter and return its point on the number line.
- [FormatLabel](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/formatlabel.md): (static) Format a tick label. Round values of a hundred thousand and up use an SI prefix (k, M, G, T) so that 10,000,000 reads as 10M. Tick values are small multiples of a power of ten, so the mantissa is always short.
- [Project](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/project.md): Project a point (y-coordinate is ignored) onto the number line.
- [SmallestTickExponent](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/smallesttickexponent.md): (static) Compute the power-of-ten exponent of the smallest tick class that would be laid out along an axis of the given range and pixel width.
- [ToInfiniteSnapSpace](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/toinfinitesnapspace.md): Create a snapping space based on this numberline. Snapping will occur on the infinite line, based on some subdivision of the smallest visible ticks.
- [ToSnapSpace](https://developer.rhino3d.com/api/gh2/type/grasshopper2.ui.numberline.ticklayout/tosnapspace.md): Create a snapping space based on this numberline. Snapping will only happen at visible ticks, not implied ticks outside of the bounds.
