Linderdaum Engine: clFlowSelector Class Reference
Updated: Sun Feb 5 2012 22:59:50
clFlowSelector Class Reference

Flow-motion selector. More...

#include <FlowSelector.h>

List of all members.

Public Member Functions

 clFlowSelector ()
mtx4 GetQuadTransform (float t_center, float TSize) const
 Transformation for the Quad.
virtual void QuadCoords (vec3 *Pts, float t_center, float TSize) const
 Calculate coordinates for the Quad in a given position.
virtual void RebuildCurves ()

Public Attributes

int FNumPoints
 Number of control points on the flow curve.
float FHeight
 Height of the image (distnace between lower and upper curves)
float FElevation
 "Thickness" of the curve
float FSlope
 Slopiness of the curve.
float FPeakOffset
 Symmetric displacement of curve peaks.
float FFlowMult
 Exponential falloff coefficient.
float FFlowExp
 Exponential coefficient (0.01 is OK)
float FPointStep
 Number of units between sequential control points.
float FControlExp
 Tweaking parameter for the quad points speed. Used internally.
LSpline FBaseCurve [4]
 Trajectory control points for each base curve.

Private Member Functions

vec3 BaseCurvePoint (float t, float _Y, float CElevation, float CSlope, float CPeakOffset) const
 Base curve for the point of image quad.

Detailed Description

Flow-motion selector.

This class only implements the geometrical routines to calculate each image's position. Coverflow control with dynamic image/texture loading and gesture support is a whole different story.

Created using four direction curves (points of each image move on these curves).

Coverflow requires similar arctangent-like curves. Carousel is just the same - simple another guiding curves (circles).

Remarks:

  • QuadCoords and RebuildCurves methods are declared virtual to allow overrides for some special effects

Constructor & Destructor Documentation

clFlowSelector::clFlowSelector ( ) [inline]

Member Function Documentation

vec3 clFlowSelector::BaseCurvePoint ( float  t,
float  _Y,
float  CElevation,
float  CSlope,
float  CPeakOffset 
) const [inline, private]

Base curve for the point of image quad.

mtx4 clFlowSelector::GetQuadTransform ( float  t_center,
float  TSize 
) const [inline]

Transformation for the Quad.

virtual void clFlowSelector::QuadCoords ( vec3 Pts,
float  t_center,
float  TSize 
) const [inline, virtual]

Calculate coordinates for the Quad in a given position.

virtual void clFlowSelector::RebuildCurves ( ) [inline, virtual]

Displacement is possible here. Morphing between two sets of curves is also possible


Member Data Documentation

Trajectory control points for each base curve.

Tweaking parameter for the quad points speed. Used internally.

"Thickness" of the curve

Exponential coefficient (0.01 is OK)

Exponential falloff coefficient.

Height of the image (distnace between lower and upper curves)

Number of control points on the flow curve.

Property(Description="Number of control points on the base curves", Name=NumPoints, Type=int, FieldName=FNumPoints) Property(Description="Height of the images", Name=ImageHeight, Type=float, FieldName=FHeight) Property(Description="Elevation of the flow curve", Name=Elevation, Type=float, FieldName=FElevation) Property(Description="Slope of the flow curve", Name=Slope, Type=float, FieldName=FSlope) Property(Description="Symmetric offset", Name=PeakOffset, Type=float, FieldName=FPeakOffset) Property(Description="Elevation curve amplitude", Name=ElevationAmplitude, Type=float, FieldName=FFlowMult) Property(Description="Elevation curve slope parameter", Name=ElevationSlope, Type=float, FieldName=FFlowExp)

Symmetric displacement of curve peaks.

Number of units between sequential control points.

Slopiness of the curve.


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