# AnimationBinding class

Namespace: [Grasshopper2.Animation](https://developer.rhino3d.com/api/gh2/namespace/grasshopper2.animation.md) · Assembly: [Grasshopper2](https://developer.rhino3d.com/api/gh2/assembly/grasshopper2.md)

```cs
public sealed class AnimationBinding : IStorable
```

A single binding between an animation and one animatable object in the document.

Bindings reference their object by instance id rather than by reference, so a binding survives a document reload and tolerates an object which has been deleted and restored by an undo.

## Constructors

- [AnimationBinding](https://developer.rhino3d.com/api/gh2/type/grasshopper2.animation.animationbinding/ctor.md): (2 overloads) Create a new, enabled binding targeting a specific object.

## Properties

- [Enabled](https://developer.rhino3d.com/api/gh2/type/grasshopper2.animation.animationbinding/enabled.md): Gets or sets whether this inding takes part in the animation.
- [End](https://developer.rhino3d.com/api/gh2/type/grasshopper2.animation.animationbinding/end.md): Gets or sets the state this object holds on the last frame, or null to end at the highest state it can reach.
- [ObjectId](https://developer.rhino3d.com/api/gh2/type/grasshopper2.animation.animationbinding/objectid.md): Gets the instance id of the animated object.
- [Start](https://developer.rhino3d.com/api/gh2/type/grasshopper2.animation.animationbinding/start.md): Gets or sets the state this object holds on the first frame, or null to start from the lowest state it can reach.

## Methods

- [Resolve](https://developer.rhino3d.com/api/gh2/type/grasshopper2.animation.animationbinding/resolve.md): Resolve the animatable object this binding targets.
- [ResolveLimits](https://developer.rhino3d.com/api/gh2/type/grasshopper2.animation.animationbinding/resolvelimits.md): Work out the two states this binding actually animates between. A limit which was never set falls back to the far end of whatever range the object can reach, so a new binding animates everything without having to store anything.
- [ResolveName](https://developer.rhino3d.com/api/gh2/type/grasshopper2.animation.animationbinding/resolvename.md): Resolve the display name of the animated object, for use in user interfaces.
- [SeedLimits](https://developer.rhino3d.com/api/gh2/type/grasshopper2.animation.animationbinding/seedlimits.md): Give this binding concrete limits, taken from the range its object reports, unless it already has them. Done when an object joins an animation, so that the limits stop being a live reading of the object and become a decision. An object with no range of its own — a colour, say, which reports its current value for both ends — would otherwise have one limit follow it around while the other was being set, and the two would always agree.
- [Store](https://developer.rhino3d.com/api/gh2/type/grasshopper2.animation.animationbinding/store.md): This method is called whenever the instance is required to serialize itself.
