gioui.orggioui.org/internal/fling Index | Files

package fling

import "gioui.org/internal/fling"

Index

Types

type Animation

type Animation struct {
	// contains filtered or unexported fields
}

func (*Animation) Active

func (f *Animation) Active() bool

func (*Animation) Start

func (f *Animation) Start(c unit.Metric, now time.Time, velocity float32) bool

Start a fling given a starting velocity. Returns whether a fling was started.

func (*Animation) Tick

func (f *Animation) Tick(now time.Time) int

Tick computes and returns a fling distance since the last time Tick was called.

type Estimate

type Estimate struct {
	Velocity float32
	Distance float32
}

type Extrapolation

type Extrapolation struct {
	// contains filtered or unexported fields
}

Extrapolation computes a 1-dimensional velocity estimate for a set of timestamped points using the least squares fit of a 2nd order polynomial. The same method is used by Android.

func (*Extrapolation) Estimate

func (e *Extrapolation) Estimate() Estimate

Velocity returns an estimate of the implied velocity and distance for the points sampled, or zero if the estimation method failed.

func (*Extrapolation) Sample

func (e *Extrapolation) Sample(t time.Duration, val float32)

Sample adds an absolute sample to the estimation.

func (*Extrapolation) SampleDelta

func (e *Extrapolation) SampleDelta(t time.Duration, delta float32)

SampleDelta adds a relative sample to the estimation.

Source Files

animation.go extrapolation.go

Version
v0.4.1
Published
Nov 30, 2023
Platform
windows/amd64
Imports
6 packages
Last checked
1 minute ago

Tools for package owners.