The BandObjView3D application creates a simple Java 3D world - a checkboard floor, stormy background, a giant humanoid, and assorted ground cover, mostly borrowed from the ObjView3D example in chapter 7. The first picture on the right shows a view of the scene.
The novelty is that navigation through the scene is achieved by the user moving and rotating their left arm; no keyboard or mouse manipulation is required.
This magic is made possible by the user wearing a wrist strap containing three coloured bands (blue, yellow, and red), as shown in the second picture on the right.
Wrist strap is a rather fancy name for a sheet of paper with three coloured rectangles printed on it. It's taped around the user's wrist, as in the third picture.
The blue band is the lower-half of the visible strap, yellow is at the top, and red is hidden on the other side of the user's arm.
A web camera is positioned close to the user on his left side, and takes pictures of the wrist strap (the third picture is such a snap). A new picture is processed every 0.1 second on average.
The largest visible band and its position in the image are converted into navigation commands inside the 3D scene. The yellow band triggers forward movement, the blue band turns the user's viewpoint to the right, and the red band to the left. The rotations match the way that the user's arm needs to turn so that the coloured band is in front of the camera.
If the center of the band in the current image is far enough to the right compared to the center of the band in the previous image, then forward motion is stopped. This corresponds to the user moving their arm backwards.
The fourth picture shows the user from a short distance away. The webcam is on the left of the monitor, partially hidden by the user's left arm.