# Animation

class `cee.ug.``Animation`()

  Handles animation of a `RemoteModel`.

  With this class you can control state animations (animations across the states of the CAE analysis), particle trace animations and mode shape animations.

  To start a state animation, specify the states to animate over with the `ModelSpec.stateIdArray` property and call `runAnimation(true)`.

  To start a particle trace animation, set the `particleTraceAnimationStepCount` property and call `runParticleTraceAnimation(true)`. Note that you must first create a particle trace by calling `RemoteModel.addParticleTraceGroup`.

  To start a mode shape animation, set the `ModelSpec.modeShapeAnimationType` and `ModelSpec.modeShapeFrameCount` properties and then call `runAnimation(true)`. Note that you must first set a displacement result on the model with `ModelSpec.displacementResultId`, and that `ModelSpec.stateIdArray` must contain exactly one state id.

  You can access the animation object from the remote model with the `RemoteModel.animation` property.

Accessors

- `particleTraceAnimationStepCount`
- `targetFrameRate`

Methods

- `isAnyAnimationRunning`
- `isModelAnimationRunning`
- `runAnimation`
- `runParticleTraceAnimation`
- `setAnimationFrameChangedCallback`
- `setFirstFrame`
- `setLastFrame`
- `setNextFrame`
- `setPreviousFrame`

## Accessors

`Animation.``particleTraceAnimationStepCount`()

  The number of steps to use for the particle trace animation.

  The number of steps will be used to calculate the delta time for each step in the animation based on the total time of all active traces.

  Return type: | number

`Animation.``particleTraceAnimationStepCount`(numSteps)

  Arguments: | numSteps (`number`) – None
  Return type: | void

`Animation.``targetFrameRate`()

  The target animation speed in frames per second (fps).

  This will be the maximum animation speed, but the actual speed may be lower for large models or slow clients.

  Return type: | number

`Animation.``targetFrameRate`(framesPerSecond)

  Arguments: | framesPerSecond (`number`) – None
  Return type: | void

## Methods

### isAnyAnimationRunning

`Animation.``isAnyAnimationRunning`()

  Returns true if either a state, mode shape or particle trace animation is running

  Return type: | boolean

### isModelAnimationRunning

`Animation.``isModelAnimationRunning`()

  Returns true if either a state or mode shape animation is running

  Return type: | boolean

### runAnimation

`Animation.``runAnimation`(run)

  Arguments: | run (`boolean`) – None

  Starts a state (transient) or mode shape animation.

  The steps are configured in the `ModelSpec` of the `RemoteModel`.

  To start a state (transient) animations, set the states you would like to animate over with `ModelSpec.stateIdArray`. The order of the states in the animation will be the same as in the array. Note that `ModelSpec.modeShapeFrameCount` MUST be set to 0 for state (transient) animations.

  To start a mode shape animation, set the `ModelSpec.modeShapeAnimationType` and `ModelSpec.modeShapeFrameCount` properties and then call `runAnimation(true)`. Note that you must first set a displacement result on the model with `ModelSpec.displacementResultId`, and that `ModelSpec.stateIdArray` must contain exactly one state id.

  Return type: | void

### runParticleTraceAnimation

`Animation.``runParticleTraceAnimation`(run)

  Arguments: | run (`boolean`) – None

  Starts a particle trace animation.

  The number of steps to use for the animation can be set with `particleTraceAnimationStepCount`.

  Return type: | void

### setAnimationFrameChangedCallback

`Animation.``setAnimationFrameChangedCallback`(animationFrameChangedCallback)

  Arguments: | animationFrameChangedCallback (`AnimationFrameChangedCallback`) – None

  Sets a handler function that will be called whenever a progress indication packet is received from the visualization server.

  Return type: | void

### setFirstFrame

`Animation.``setFirstFrame`()

  Sets the first step of the animation (if any) as the current step. This will stop the animation.

  Return type: | void

### setLastFrame

`Animation.``setLastFrame`()

  Sets the last step of the animation (if any) as the current step. This will stop the animation.

  Return type: | void

### setNextFrame

`Animation.``setNextFrame`()

  Sets the next step of the animation (if any) as the current step, wrapping around to the first step if on the last step. This will stop the animation.

  Return type: | void

### setPreviousFrame

`Animation.``setPreviousFrame`()

  Sets the previous step of the animation (if any) as the current step, wrapping around to the last step if on the first step. This will stop the animation.

  Return type: | void

Conversation saved
HOOPSY BETA

### Hello! I'm HOOPSY

Your Docs generative AI assistant. Ask me anything about HOOPS Envision for Web or choose a sample question below to start a conversation:

What is HOOPS Envision for Web?
What are the latest release notes for HOOPS Envision for Web?
How do I start evaluating HOOPS Envision for Web?
How do I write my first sample application?
How can I get assistance?

HOOPSY may store conversations according to OpenAI's policy. Responses may not always be accurate.

HOOPSY is thinking...