easing-function 0.1.1

A Rusty implementation of easing functions for animation tweening
Documentation
  • Coverage
  • 100%
    103 out of 103 items documented0 out of 70 items with examples
  • Size
  • Source code size: 49.7 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 11.49 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 11s Average build duration of successful builds.
  • all releases: 11s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • khonsulabs/easing-function
    4 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • ecton

easing-function

easing-function is considered alpha crate version Documentation for v0.1.1

A Rusty implementation of easing functions.

What is an Easing Function?

An easing function is a function that describes how to apply a change of a value over time. This library's easing functions expect input values between 0.0 and 1.0 and will return values corresponding to that range but may be outside of the range depending on the function.

Easing functions are typically used in animation systems to customize values produced between keyframes (tweening).

Why another easing functions crate?

When creating Cushy, no maintained library seemed to offer a trait-based solution to allow for custom easing functions in addition to the standard ones inspired by Robert Penner's original collection.

Using this crate

The EasingFunction type is the central type of this crate. It allows defining an easing function in two ways:

This crate also provides the standard set of easing functions in the [easings][easings] module (e.g., EaseInOutSine). Finally, the StandardEasings enum provides access to the standard easing functions through an enumeration. This enum also supports serde when enabling the serde feature of this crate.

Open-source Licenses

This project, like all projects from Khonsu Labs, is open-source. This repository is available under the MIT License or the Apache License 2.0.

To learn more about contributing, please see CONTRIBUTING.md.