Show: Delphi C++
Display Preferences

FMX.Types.TInterpolationType

From XE3 API Documentation
Jump to: navigation, search

Delphi

TInterpolationType = (itLinear, itQuadratic, itCubic, itQuartic,
itQuintic, itSinusoidal, itExponential, itCircular,
itElastic, itBack, itBounce);

C++

enum class DECLSPEC_DENUM TInterpolationType : unsigned int { itLinear, itQuadratic, itCubic, itQuartic, itQuintic, itSinusoidal, itExponential, itCircular, itElastic, itBack, itBounce };

Contents

Properties

Type Visibility Source Unit Parent
enum public
FMX.Types.pas
FMX.Types.hpp
FMX.Types FMX.Types

Description

The type of the Interpolation property of an animation.

Determines how the rate at which the current value (or StartValue) of a property is changed to the destination value (StopValue) over time. On a graph plotting the value of a property the animation is applied to (using the TAnimation PropertyName property) one endpoint is represented by the start value at t=0. The other endpoint is the stop value at t=Duration seconds. Many different paths can connect these two points. The only requirement is that time keeps moving forward! TInterpolationType provides a variety of paths to choose from.

With a TInterpolationType of itLinear, the value of the property changes linearly over time, and the path between our start and stop points is a straight line. This and other values for TInterpolationType are described below.

See the AttachTAnimation (Delphi) code example referenced at the bottom for the visual demonstration.

TInterpolationType can take one of the following values:

Value Meaning

itLinear

A linear interpolation. The property value this animation applies to changes constantly over time.

itQuadratic

A quadratic function is applied to the path between the start and stop points. The slope of the path is zero at the start point and increases constantly over time. A scalar is applied to the function to make the endpoint fall on the path.

itCubic

The interpolation is of the form y = x**3. The slope of the path is zero at the start point and increases much faster than the quadratic function over the path.

itQuartic

The interpolation is of the form y = x**4. The slope of the path is zero at the start point and increases much faster than the quadratic function over the path.

itQuintic

The interpolation is of the form y = x**5. The slope of the path is zero at the start point and increases much faster than the quadratic function over the path.

itSinusoidal

The interpolation is of the form y = sin(x). The slope of the path is zero at the start point and places the first inflexion of the sin curve (x=pi) at the stop point.

itExponential

The interpolation is of the form y = e**x. The slope of the path is one at the start point and increase much faster than the quadratic function over the path.

itCircular

The path between the start and stop point for this interpolation is a quarter of a circle. The slope of the path is zero at the start point and verticle at the stop point.

itElastic

The path does not follow a geometric interpolation. The value (y coordinate) may decrease, moving back toward the Start Value, but time (x value) must always move in a positive direction.

itBack

The path does not follow a geometric interpolation. The value (y coordinate) may decrease, moving back toward the Start Value, but time (x value) must always move in a positive direction.

itBounce

The path depicts a bouncing ball. The path is made up of circular curves with curvature away from the straight line that connects the start and stop points. These curves are connected by sharp points.

Several properties of the TAnimation and TFloatAnimation can effect the path specified by the interpolation. The descriptions above are for:

  • StartFromCurrent = True
  • AnimationType = atIn

Setting the AnimationType to atOut causes everything said above about the start point to apply to the stop point. See documentation for these animation properties for their effect.

See Also

Code Examples

Personal tools
Translations