A1: Vector field representation (Due Sept 16)

Interactive Data Visualization Course

The purpose of this assignment is to learn something about how to use color and shape in representing a vector field. You will accomplish this by developing a particle system.

Goals: Optimally show :the direction of flow, the strength of vector field, features such as fronts, inward spirals, outward spirals.

The vector field is defined by the differential equationsprovided in the example code. You can change all the rest of the code, but do not alter the getVec function.

 void getVec(float X, float Y, float &dx, float &dy);

The input is a position in the flow field. The output is the flow direction and magnitude.


This is all about mapping velocity magnitude and direction to a variety of perceptual variables.

Your input variables are (dx,dy) = f(x,y) , that is, the specification of a vector field. Starting positions should be random

Display variables at your disposal are

1. The number of particles

2. The amount each particle moves on each iteration as a function of age

3. The size of the particle as a function of age

4. The background color (can be locally defined)

5. Particle starting points

Note: you can continuously seed the space or do it in one shot; e.g. with 1000 particles.


Provide a written description of the way you have used visual variables to display at least three aspects of the data (approx 300-400 wds). Visual variables include such things as line width, contrast, background color, streak color, etc.

Comment on effects. E.g. how does gray scale change affect the presentation of direction in relation to the background value. Difficulties and possible solutions may also be mentioned.

Provide a code listing. Your code need not be sophisticated but it should be clear.

Illustrate with your best image (you can use <alt, PrintScreen>.

Do not get too involved. This should not be a major project.