9 #ifndef __flowviz__FlowControl__
10 #define __flowviz__FlowControl__
20 class ISceneGraphPart;
30 const float BorderDistance = 30.0f;
31 const float SeedingDistance = 15.0f;
32 const float SeparationDistance = 4.0f;
35 std::vector<FlowArrow*> m_arrows;
37 std::vector<DistanceMap*> m_distanceMaps;
45 void initializeDistanceMap(
FlowArrow *arrow,
int timestep);
50 void updateDistanceMap(
FlowArrow *arrow,
int timestep);
55 void updateDistanceMapToTimestamp(
int timestep);
60 bool arrowCanBePlaced(
FlowArrow *arrow,
int timestep);
61 bool arrowCanBePropagated(
FlowArrow *arrow,
int timestep);
Represents OpenGL texture.
Definition: Texture.h:21
void placeMovingArrows()
Starts the arrow placement process.
Definition: FlowControl.cpp:168
FlowControl(TimeField *timeField)
Definition: FlowControl.cpp:15
Creates and Controls the time dependened vector field.
Definition: FlowControl.h:27
void completeTimestepWithArrows(int timestep)
Seeds arrows at timestep.
Definition: FlowControl.cpp:47
Represents a timebased vector filed The vector fields are stored as.
Definition: TimeField.h:25
void propagateArrowsOneStep(int time, int deltaTime)
Moves arrows forward backwards in time.
Definition: FlowControl.cpp:220
void addArrowsToSceneGraph(render::ISceneGraphPart *graphPart)
add arrows to scenegraph
Definition: FlowControl.cpp:190
Represents part of the SceneGraph.
Definition: ISceneGraphPart.h:23
void update(float time)
updates all time dependened actions
Definition: FlowControl.cpp:246
The graphical representation of an Arrow Creates and manages position, movement and lifetime of an ar...
Definition: FlowArrow.h:27
Definition: DistanceMap.h:16
~FlowControl()
Definition: FlowControl.cpp:21