We recently had to develop a small demo using custom imagery in Google Maps - using the Google Maps interface to navigate around a map we provided.
This map could potentially not directly relate to the world - for example, the classic London Tube Map would be useful if zoom and scrollable, but it bears no relation to where the lines actually go in real life!
There are lots of resources aimed at version 2 of the Google API, but not so much aimed at v3. However, there's enough out there to put it all together.
The main hurdle with creating your own custom maps is generating all of the imagery at different zoom levels - each zoom level splits the image into "tiles" which Google then loads as it needs.
There are various tools out there for cutting tiles, of which MapTiler seemed the most promising. However, it generates the tiles in a directory structure for version 2, which complicates the map display a bit, and more importantly it was squashing the image.
As we had very simple requirements - we didn't need any geographical location handling or anything to change the map projection - we decided to write our own tile cutter, which we are providing as a free download to help anyone else struggling with similar needs!
You can download the application from here. We will also soon release the source code, once it has been packaged into an easy to compile form.
Here's a demo showing an interactive map of Bas Lag, the world in the very amazing China Miéville Perdido Street Station series (view in a new window):
Image credit: JenJenRobot, http://jenjenrobot.deviantart.com
Application screenshot:
Test Message via Big Blue network