CSE5910 : Multimedia Programming in Java
Interactive Mapping
Assignment Specification PageSemester 2, 2008
Task: Design and implement a map-drawing and route-planning system for cyclists.
Maps and plans are useful in a wide range of activities. They have been produced by humans for thousands of years and there is a lot of information about their history and principles for their design. Choose an outdoor bicycling activity that interests you and your group members from the following list: bicycle commuting (e.g. to university or to work), off-road mountain bicycle riding (on tracks in forests or national parks), bicycle road racing, bicycle messenger/courier delivery, bicycle touring (e.g. around Melbourne CBD, in the country-side or even around the world!)
Design some map-making software that meets the specifications listed below. Your software must be for making maps that bicycle riders can use to plan their routes. For instance they might wish to create a map that shows them how to avoid heavy traffic at different times of the day, to visit Melbourne's tourist attractions, to deliver a package to a particular address or to just have a fun ride around a park. Please note, you need to create map-making software, not a map.
Be imaginative and do some research to find out what kinds of maps and plans are around and how people use and create them. The best assignments will fill a genuine need or open a new direction that has not yet been addressed by exisiting map-making software. The only way you will achieve this is by doing research into exisiting cartographic techniques and the uses to which people (in particular people making maps for cyclists) have put maps.
Specification: Your system must allow a cartographer (map-maker) or designer to do the following:
- Save and load maps or plans in a file format of your choosing
- Draw and label static forms and large features: mountains; valleys; cliffs; lakes or perhaps building outlines and features; staircases, ramps, streets and alleys etc.
- Place static icons and labels representing important features: mountains; forests; cities; hospitals; trees; campsites or perhaps drinking taps; traffic lights; train lines, public toilets, hotels etc.
- Place labelled static paths representing roads or rivers, old rail tracks or bicycle tracks etc.
- You must write appropriate user documentation explaining how your software works.
- You must write a simple tutorial that new users can follow in less than ten minutes to become familiar with the basic features of the software.
- (Advanced) Allow users to place dynamic elements on thier map or automatically specify the way in which such data changes. These changes may be updated according to a simple formula that changes over time, based on a sequence of data that is specified in a file or downloaded from the internet or in some other way of your choosing. For instance, thier map may monitor and display the changes in the weather (rainy days might make some rides difficult, hot tempratures might make it better to ride past a drinking tap etc.), or it may just visualise a changing value such as the number of cars passing over an intersection at particular locations. You will need to think carefully about what you can (and can't) achieve with the time and resources available to you.
Consult the assignment submission details for information on how to complete you work.