Skip to content

Main content

Unit Step Count Index

Evaluate a unit step-end or step-start index with explicit positive count; both modes cap at the final step at progress one.

Loading tool…

Description

Evaluate a unit step-end or step-start index with explicit positive count; both modes cap at the final step at progress one.

Easing maps normalized progress to a dimensionless curve value. A slope differentiates that curve with respect to progress, while delay remapping and ping-pong phases change the input coordinate. To turn progress into position or time-dependent velocity, supply the application’s distance scale and duration separately.

Evaluate a unit step-end or step-start index with explicit positive count; both modes cap at the final step at progress one.

When to use this tool

Use this tool to evaluate a unit step-end or step-start index with explicit positive count; both modes cap at the final step at progress one.

How to use the tool and how it works

  1. Enter t, steps, jumpAtStart using the input definitions below.
  2. Run the operation. Resolve malformed-input errors before interpreting the result.
  3. Read result.index, result.value. Interpret signs, units, ordering and null values using the rules below.

Validate t in [0,1] and integer steps in [1,1,000,000]. Calculate index = min(steps,floor(t×steps)+(jumpAtStart?1:0)), then value = index/steps.1

Input fieldMeaning and unitsAccepted input
tDimensionless normalized input from 0 through 1, except the explicitly described delay-remapping coordinate.Finite number satisfying the stated comparisons.
stepsInteger step count 1–1,000,000.Finite safe integer satisfying the stated bounds.
jumpAtStartTrue adds the initial jump; false uses the step-end index formula.Boolean true or false.
Output fieldInterpretation
resultObject containing the fields below.
result.indexStep index from 0 through the supplied step count.
result.valueStep index divided by steps, a dimensionless value from 0 through 1.
json
{
  "input": {
    "t": 0.25,
    "steps": 4,
    "jumpAtStart": false
  },
  "output": {
    "result": {
      "index": 1,
      "value": 0.25
    }
  }
}

Limitations and assumptions

  • At t = 1 both modes return the final step. This explicit index model does not include CSS animation before/after flags or scheduling.
  • Curves ordinarily require normalized input t from 0 through 1; ping-pong and delay-remapping operations instead accept their explicitly stated progress coordinates. Floating-point roundoff remains possible.
  • Every declared top-level input is required and unknown fields are rejected. Ordinary strings are limited to 8,192 UTF-16 code units and lists to 128 entries, with tighter operation-specific bounds where stated. JSON text has bounded nesting and node counts.
  • Numeric outputs must be finite and within the absolute safe-integer magnitude; exact larger integers use decimal text. Source positions are zero-based UTF-16 offsets and span ends are exclusive unless a different convention is explicitly stated.

Alternative or Complementary methods

Choose the curve and parameter convention before combining operations. Use a scheduler or animation engine for playback, and apply the appropriate duration/distance factors when interpreting slopes physically.

References

  1. Tool behavior and example: Unit Step Count Index — tool.io

Similar or alternative tools

  • Unit Cubic In Out Easing Value

    Evaluate Unit Cubic In Out Easing Value on the closed unit domain; deterministic numerical curve arithmetic without animation scheduling.

  • Unit Cubic Out Easing Value

    Evaluate Unit Cubic Out Easing Value on the closed unit domain; deterministic numerical curve arithmetic without animation scheduling.