OGRE-Next: Ogre::WaveformControllerFunction Class Reference

| OGRE-Next 3.0.0 Object-Oriented Graphics Rendering Engine

Loading...
Searching...
No Matches
Ogre::WaveformControllerFunction Class Reference
Core » General

Predefined controller function based on a waveform. More...

`#include <OgrePredefinedControllers.h>`

Inheritance diagram for Ogre::WaveformControllerFunction:
[legend]

## Public Member Functions
| WaveformControllerFunction (WaveformType wType, Real base=0, Real frequency=1, Real phase=0, Real amplitude=1, bool deltaInput=true, Real dutyCycle=0.5)
| Default constructor, requires at least a wave type, other parameters can be defaulted unless required.
Real | calculate (Real source) override
| Overridden function.
Public Member Functions inherited from Ogre::ControllerFunction< Real >
| ControllerFunction (bool deltaInput)
| Constructor.
virtual | ~ControllerFunction ()

## Detailed Description

Predefined controller function based on a waveform.

Remarks
  A waveform function translates parametric input to parametric output based on a wave. The factors affecting the function are:
  - wave type - the shape of the wave
  - base - the base value of the output from the wave
  - frequency - the speed of the wave in cycles per second
  - phase - the offset of the start of the wave, e.g. 0.5 to start half-way through the wave
  - amplitude - scales the output so that instead of lying within [0,1] it lies within [0,1] * amplitude
  - duty cycle - the active width of a PWM signal

  Note that for simplicity of integration with the rest of the controller insfrastructure, the output of the wave is parametric i.e. 0..1, rather than the typical wave output of [-1,1]. To compensate for this, the traditional output of the wave is scaled by the following function before output:

  output = (waveoutput + 1) * 0.5

  Hence a wave output of -1 becomes 0, a wave output of 1 becomes 1, and a wave output of 0 becomes 0.5.

## Constructor & Destructor Documentation

## ◆ WaveformControllerFunction()

Ogre::WaveformControllerFunction::WaveformControllerFunction | ( | WaveformType | wType,
|  | Real | base = 0,
|  | Real | frequency = 1,
|  | Real | phase = 0,
|  | Real | amplitude = 1,
|  | bool | deltaInput = true,
|  | Real | dutyCycle = 0.5 )

Default constructor, requires at least a wave type, other parameters can be defaulted unless required.

Parameters

  deltaInput | If true, signifies that the input will be a delta value such that the function should add it to an internal counter before calculating the output.
  dutyCycle | Used in PWM mode to specify the pulse width.

## Member Function Documentation

## ◆ calculate()

Real Ogre::WaveformControllerFunction::calculate | ( | Real | source | ) |
| overridevirtual

Overridden function.

Implements Ogre::ControllerFunction< Real >.

The documentation for this class was generated from the following file:

- OgrePredefinedControllers.h