This program was developed as a prototype to experiment with different methods and techniques. For demo purposes, we have added a number of preset buttons to make a quick start. Here we will not describe all features, just give an overview of the main options such that the results shown in the paper can be reproduced.
Select for instance cow.ply. An ugly image appears. Press the Run button (below the image). The ugly image starts to animate. No flow field has been defined yet, so no moving texture is visible. On the right a control-panel is shown, with five tabpages. The General tabpage is the most important. Press now the Dirty button. The cow turns into dirty bronze. Try the other style buttons. Their meaning is:
Changing the view can be done simply
with the mouse. Put the cursor in the image,
press:
The quality of the results can be improved strongly by using a more fine and smooth mesh. To this end, enable the Subdivide when read checkbox (General tabpage), select a subdivision level (1-4), press Load mesh... and reread the current ply file or read in a new one. Beware that the number of polygons depends exponentially on the subdivision level... We typically use 1-2 for the cow, 2-3 for the torso, and 0 for the bunny.
With this, it should be possible to reproduce figure 9, 10, and 11 of the paper. For curvature flow the results can be improved sometimes by selecting a different alignment of the flow. For this, go to the Flow tabpage, and press the Align X, Y, or Z buttons. To produce the other examples, the following can be done.
To produce user defined flow (figure
5), load a geometry (for instance the cow) and press Run. Switch
to the Flow tabpage. A linear flow field can be defined with the
three values behind Linear. To add a flow source, press Add flow.
Line sources can be dragged interactively, either via the end-points or
via the cylinder. Motion is constrained to a plane, rotate the object to
activate another plane. Note that line sources extend infinitely. The flow
strength can be set with the three items Strength (attract, repulse),
Rotational
(around
the line), and Tangential (along the line).
For a more colorful picture, go
to the Data tabpage, and enable Overlay with data (with Velocity
selected). Adapt the range Min-Max if needed, either by entering
values, or with the >, <, <>, and >< buttons.
If other PLY files are read and strange results appear, the following can be tried. Enable Swap orientation (General tabpage) and reread the file. The orientation of all triangles is reversed, hence front side turns into far side Furthermore, by default we assume that the Z-axis points to the viewer and the Y-axis up. This can be changed on the Shade tabpage by selecting a different Up axis..
3.4 Contrast. The balance between texture and shading can be varied with the parameter Alpha shade on the Texture tabpage. The number gives the percentage of shading to be used (i.e. reverse of beta in the paper). A value of 0 gives an image of Ft, a value of 100 gives Fs.
3.5 Boundaries and silhouettes. The background color can be changed on the Shade tabpage. Press the grey rectangle behind Background, select bright red, and see what happens. The effect depends strongly on the value of alpha. This can be set on the Texture tabpage (Alpha texture). Change it for instance in unit steps from 0 to 20 to see the effect. For values higher than 5 (= 0.05), the inflow of red ink decreases rapidly.
3.7 Projected texture. By default we use the mode to drag the textures Ft and G along with the mouse. To see the effect, disable Drag texture when changing view on the Texture tabpage. Especially for panning (middle mouse button) the effect is strong: Now the texture appears to stick to the screen. Also, locking can be enabled and disabled with the two checkboxes Lock texture and Lock texture when changing view.
3.8 Non surface-aligned flow. By default, velocities are projected on the surface. This can be disabled with the checkbox Project velocity on surface on the Flow tabpage.
3.9 Texture interpolation.
Zoom in on a side of the cow. At some point, the stationary flow gets distorted
in a strange way, the closer, the stronger. The mesh can be shown by enabling
the Mesh checkbox in the Shade tabpage. The weird patterns
are related to the mesh. Next, enable isometric in the Shade
tabpage.
The strange patterns disappear.
(The clipping planes are set in
a slightly different way for isometric mode. Hence, recentering can be
necessary. Also, the depth shift for the mesh is not implemented full proof
:-) ). Another way to get rid of the texture interpolation artifact is
by using extra subdivision, leading to smaller triangles.