COMP153A – 2005 – Practical 9
Final Project
You have two options for the final project. A: The Blink Comparator; and B: The Photo Album Page.
Goals: To exercise the programming skills you have learned. To work on a problem that is not closely specified, so that you have the opportunity to design something of your own.
Issues: If you design a user interface you will almost certainly reach points in the implementation where you need to know more about VB and its libraries – ie: you don’t know how to do something. We will be available to assist during lab and tutorial times and at as many other times as possible.
Requirements:
· Write a VB .Net program following the project outline.
· Demonstrate your program to staff in a “show and tell” session during study week.
· Hand in a brief report (between two and three pages of text, plus one or more pages of screen shots) explaining what your program does; and how you have designed it for ease of use; and what implementation problems you encountered.)
·
Put a copy of your VB .Net
project into a folder called ‘Submissions’ on your account.
You should expect staff to access that folder.
Project
A: The Blink Comparator
A device called a blink comparator has been used in Astronomy for many years, to look for objects moving against the fixed background of stars. The idea is to take two pictures of the same area of sky, a few days apart. The pictures are then set up in an optical arrangement that rapidly flicks between the two images. If the images are carefully aligned, fixed stars appear in the same place when each image is viewed. Anything moving appears to blink. The blink comparator is most famous as the device that Clyde Tombaugh used to search for Pluto in 1929/30. Two modern pictures taken 24 hours apart show Pluto moved slightly against the background stars (arrow). (Photos from http://www.astrosociety.org/education/publications/tnl/10/10.html#illus)
A web site that shows Tombaugh, with his original sky pictures and equipment is:
http://ircamera.as.arizona.edu/NatSci102/lectures/pluto.htm (scroll down quite a way).
A blink comparator is also useful for comparing digital photographs and designs. In fact, an way to test your program will be to take an image – make a small change using a Paint program and compare with the original.
The task:
Design a program to do Blink comparison.
It should use an OpenFileDialog to allow someone to load two images and
blink them. You will need to
experiment. Your user interface might show
both pictures and then have a third picture box in which you ‘blink’ one or the
other; it might only have one picture
box.
You might blink automatically, using a timer, or you might provide a ‘blink’
button. The design is up to you.
Improvements: You might allow drawing on the image to note differences; you might provide help in aligning images (look at Tombaugh’s originals to see what the issues might be; Anything else you can think of.
Project
B: The Photo Album Page
In the old days of print photography, people organized their photos in photograph albums. A page in an album held several photographs. Some albums have pages with plastic pouches for photos, some have frame areas, others are just sheets of paper on which photos can be stuck. Two interesting examples follow.


Your task is to design a program that will manage a page of photos. Assume that photos are rectangular – you don’t need to deal with the more complex shapes shown in the examples above.

A minimum requirement is for a page that allows at least six pictures to be loaded (using the open file dialog) and displayed. You must provide some way of giving at least limited control of layout to the person using the program. The program design is up to you. Please discuss ideas with us before trying implementation.
Improvements: Can you allow the user to move and/or resize images interactively with the mouse? What about saving a page and its layout to a file (don’t save the images themselves – you need only record the file names). What about captions? When one image partly overlaps another is it possible to decide which is on top? Do you respect aspect ratio?
FOR BOTH PROJECTS – FOR BOTH PROJECTS – FOR BOTH PROJECTS – FOR BOTH PROJECTS
Something you will need to know: If you have obtained a file name, and have a picture box, to get the file loaded into the picture box you write:
PictureBox1.Image = New Bitmap(OpenFileDialog.Filename)
(Not … = New Image(…) as one might reasonably expect!