- Qt 6.4
- Qt 3D
- C++ Classes
- Qt3DAnimation
- QAbstractClipAnimator
- Qt 6.4.2 Reference Documentation

# QAbstractClipAnimator Class

class Qt3DAnimation::QAbstractClipAnimator

QAbstractClipAnimator is the base class for types providing animation playback capabilities. More...

Header: | #include <QAbstractClipAnimator>
CMake: | find_package(Qt6 REQUIRED COMPONENTS 3danimation) target_link_libraries(mytarget PRIVATE Qt6::3danimation)
qmake: | QT += 3danimation
Since: | Qt 5.9
Instantiated By: | AbstractClipAnimator
Inherits: | Qt3DCore::QComponent
Inherited By: | Qt3DAnimation::QBlendedClipAnimator and Qt3DAnimation::QClipAnimator

- List of all members, including inherited members

## Public Types

enum | Loops { Infinite }

## Properties

- channelMapper : Qt3DAnimation::QChannelMapper*
- clock : Qt3DAnimation::QClock*
- loops : int

- normalizedTime : float
- running : bool

## Public Functions

Qt3DAnimation::QChannelMapper * | channelMapper() const
Qt3DAnimation::QClock * | clock() const
bool | isRunning() const
int | loopCount() const
float | normalizedTime() const

## Public Slots

void | setChannelMapper(Qt3DAnimation::QChannelMapper *channelMapper)
void | setClock(Qt3DAnimation::QClock *clock)
void | setLoopCount(int loops)
void | setNormalizedTime(float timeFraction)
void | setRunning(bool running)
void | start()
void | stop()

## Signals

void | channelMapperChanged(Qt3DAnimation::QChannelMapper *channelMapper)
void | clockChanged(Qt3DAnimation::QClock *clock)
void | loopCountChanged(int loops)
void | normalizedTimeChanged(float index)
void | runningChanged(bool running)

## Detailed Description

Subclasses of QAbstractClipAnimator can be aggregated by a QEntity to provide animation capabilities. The animator components provide an interface for controlling the animation (e.g. start, stop). Each animator type requires some form of animation data such as a QAbstractAnimationClip as well as a QChannelMapper which describes how the channels in the animation clip should be mapped onto the properties of the objects you wish to animate.

The following subclasses are available:

- Qt3DAnimation::QClipAnimator
- Qt3DAnimation::QBlendedClipAnimator

## Member Type Documentation

### enum QAbstractClipAnimator::Loops

Holds the number of times the animation should play.

Constant | Value | Description
--- | --- | ---
`Qt3DAnimation::QAbstractClipAnimator::Infinite` | `-1` | This will repeat the loop continuously until it is explicitly stopped.

## Property Documentation

### channelMapper : Qt3DAnimation::QChannelMapper*

This property holds the ChannelMapper that controls how the channels in the animation clip map onto the properties of the target objects.

Access functions:

Qt3DAnimation::QChannelMapper * | channelMapper() const
void | setChannelMapper(Qt3DAnimation::QChannelMapper *channelMapper)

Notifier signal:

void | channelMapperChanged(Qt3DAnimation::QChannelMapper *channelMapper)

### clock : Qt3DAnimation::QClock*

The clock controls the speed with which an animation is played.

Access functions:

Qt3DAnimation::QClock * | clock() const
void | setClock(Qt3DAnimation::QClock *clock)

Notifier signal:

void | clockChanged(Qt3DAnimation::QClock *clock)

### loops : int

Holds the number of times the animation should play.

The value is 1 by default: the animation will be played once and then stop.

If set to QAbstractClipAnimator::Infinite, the animation will continuously repeat until it is explicitly stopped.

Access functions:

int | loopCount() const
void | setLoopCount(int loops)

Notifier signal:

void | loopCountChanged(int loops)

### normalizedTime : float

This property holds the clips normalized time.

Access functions:

float | normalizedTime() const
void | setNormalizedTime(float timeFraction)

Notifier signal:

void | normalizedTimeChanged(float index)

### running : bool

This property holds a boolean indicating whether the animation is currently running.

Access functions:

bool | isRunning() const
void | setRunning(bool running)

Notifier signal:

void | runningChanged(bool running)

## Member Function Documentation

### `[slot]` void QAbstractClipAnimator::start()

Starts the animation.

### `[slot]` void QAbstractClipAnimator::stop()

Stops the animation.

### bool QAbstractClipAnimator::isRunning() const

Returns a boolean indicating whether the animation is currently running.

Note: Getter function for property running.

### int QAbstractClipAnimator::loopCount() const

Returns the number of times the animation should play.

The value is 1 by default: the animation will play through once and then stop.

If set to QAbstractClipAnimator::Infinite, the animation will continuously repeat until it is explicitly stopped.

Note: Getter function for property loops.

See also setLoopCount().