Given is a map in form of an image with in average between 100 and 500 small separate areas. These areas are split by little borders in the background color. With the help of an custom image program it is difficult to find an x/y position of each area and add some additional data for it like an unique identifier and a name.
The main problem is to enter the x and y position read in the image/graphic program in a spreadsheet and therefore switching between two programs.
The opportunity of this project is to work in one program/place. A list of identifiers and names of each area on the map is given or typed in. The table could be easily added with data of the x and y position of one pixel of each area with just pointing the mouse pointer to it.
The program shall include the following functionality (and more):
* The program will be able to load images in formats PNG and GIF which are used to point to the areas.
* The program will be able to work on images larger than the screen size (needed for still printable maps). Therefore a zoom function is needed. Pointing to areas will be able even while zooming in or out. It's not necessary to work in zoom “100%??, e.g. “75%?? is possible. (400%, 200%, 150%,100%,75%,66%,50%,25%,10%)
* The program will provide a table with rows and columns to enter the data. The columns provided will be 5:
1. .'no' is handled automatically by the program and could even be used as an internal id. It is just an integer numbered starting with 1 (2,3,4,5....).
2. 'id' is a manually entered id for each area (alphanumeric)
3. 'name' is an (optional) clear text name or description for each area
4. 'x' is the x position of one pixel of the described area (measured from upper left corner).
5. 'y' is the y position of one pixeö of the described are (measured from upper left corner)
## Deliverables
1) Complete and fully-functional working program(s) in executable form as well as complete source code of all work done.
2) Deliverables must be in ready-to-run condition, as follows (depending on the nature of the deliverables):
a) For web sites or other server-side deliverables intended to only ever exist in one place in the Buyer's environment--Deliverables must be installed by the Seller in ready-to-run condition in the Buyer's environment.
b) For all others including desktop software or software the buyer intends to distribute: A software installation package that will install the software in ready-to-run condition on the platform(s) specified in this bid request.
3) All deliverables will be considered "work made for hire" under U.S. Copyright law. Buyer will receive exclusive and complete copyrights to all work purchased. (No GPL, GNU, 3rd party components, etc. unless all copyright ramifications are explained AND AGREED TO by the buyer on the site per the coder's Seller Legal Agreement).
## Platform
Windows XP Linux - KDE suggest Java environment