PDA

View Full Version : fictional Google street maps



töff
05-30-2008, 11:44 AM
Does anybody know of the Google maps API or some similar system would be useable for me to create a fictional city map?

I kinda thought I could create a text-based datasource of street names, positions, hiways, maybe parks or other sites ... and then feed it into the Google Maps proggy and get a nice city map. In other words, I give it data, and it does the drawing.

It must be possible but I can't find where to start.

ravells
05-30-2008, 11:54 AM
I have no idea, toff. This may be worth cross posting on the Cartotalk website.

Sigurd
05-30-2008, 12:25 PM
Don't know but would love to hear a solution if you can find one.

You might be able to achieve a similar result with Ilwis but it would take work and a learning curve. Might have some benefits as training though.


-Sigurd

thebax2k
05-30-2008, 02:28 PM
I have no idea either Toff, but I know who does--talk to the folks who wipped up this (http://mapwow.com/) site. If they can use the Google Api for mapping the regions and zones of fictional Azeroth, than it can be done with a street map.

SeerBlue
05-30-2008, 04:08 PM
Hey Toff, here are a few links to google map related info.
There are several routes to get custom maps into google maps, the easiest being Global Mapper, which will cut the tiles for you at several zoom levels, write the basic html for serving/fetching the custom tiles from the server and overlaying them in Google Maps, and place all the tiles in the appropriate zoom level folders. If you don't need your map geo-referenced to a specific location it is as easy as open the image file, and export tiles. Global Mapper costs 269.00 dollars, but if you join the forums you get 15% off http://www.globalmapperforum.com/

If you plan on doing alot of maps this is a good route, there is a global mapper demo, which has limited export options, to try out. Global Mapper does alot more than google map tiles,like heightfield import/export, vectors, shape files and so on.

The mapki, or google map wiki, has alot of info/examples, and even links to free tools for cutting tiles in a few different apps (like photoshop, via script).

This site here, GmapUploader, http://gmapuploader.com/ , and its wiki http://gmapuploader.com/wiki/index.php/Main_Page
will do all the work for you, cut the tiles and make a page, but the tiles are on their server, and Kyle Mulka, the site owner, no longer does google map related blogging, so the site may not remain. It gives you just a basic page, but with a little cut and paste you can jazz it up, even in free google pages, as this old example site I fiddled with shows, http://seerblue.googlepages.com/middleearthgmap


These next 2 links are Mike Williams example site and the google maps forum. http://econym.googlepages.com/index.htm

http://groups.google.com/group/Google-Maps-API/

Lots of info there, everything from java script to tutorials.

and this site is where you would get the api key for your site, http://code.google.com/apis/maps/signup.html, which lets you do pretty much anything google map related, within there terms of use.


Then of course there is this site, where you may recognize some work, http://maps.me-dem.org/InsCarto/, the gmaps page is where the maps reside.

The best thing to remember is size matters, the bigger the image, the more zoom levels you will have.

Of course, if you just want one large map done( I can tile up to 16k by 16k easily, larger can be a strain on my laptop), and you have some where you could upload the image, I could download it and tile it for google maps for you, then I could upload it to the ftp at me-dem for you to download, It would give you the basic webpage html and all the map tiles, and I could answer some, but not all questions you may have about different aspects of google maps, as I have not fiddled with it extensively, as 2 small kids tend to rule my time most days

I don't have much experience with php or databases, so my help there would be limited, I am still learning that aspect of putting information into google maps.
But if you have a good grasp of html , and at least an inkling of java script (not java) you can really have a great new way to showcase your work.
SeerBlue

SeerBlue
05-30-2008, 04:24 PM
I just reread your post a little closer, google maps won't draw a map exactly, it WILL overlay polylines and shapes, place markers, create info bubbles, link to other pages, and things like that, all created via jscript via lat long coordinates. The custom maps are all imagery that is either tiled on the fly from a larger high resolution image or pre tiled into 512x512 tiles.
A database can be used to add markers, polylines/shapes, info bubbles and so on, so the information is not in the html/jscript itself, but for either route ( in the page html/jscript or database)there are limits to how many of each can be displayed at one time without some lag. If you could create an entire map entirely out of poly lines and shapes it would look like a vector illustration, if it would load.
Pre cutting tiles is the easy route, just load them to your server and point your html at them, as cutting on the fly at the server would require gd/imageMagick (or equivalent) and a database.

SeerBlue

töff
05-30-2008, 05:13 PM
I don't have any "tiles."

All I have is some info about streets.

In other words, I have 1st Street going from here to here to here, ending there. I have 2nd Street looping around from there to here, etc. ... I want to map the streets in a fictional city. Maybe I will have a park or a reservoir or an airport, random sites or blocs.

I don't have any tiles, no satellite-type JPGs, no pictures or drawings. No pushpins either.

I just want to feed in some street data and get a street-map drawn for me.

It's either a map API, or new tricks in Illustrator. I'm pursuing both for now.

You gave some great links and I will dig through them. Thanks!

SeerBlue
05-30-2008, 07:34 PM
hmmm, the only routes I know are all based on latitude/longitude coordinates for lines and polygon extents, as in a map, or pixel coordinates from an image, or image space.
I thought OpenLayers might support what I think you are after, but the vector formats I found on a quick look are geo lat long based,,for example http://www.openlayers.org/dev/examples/vector-formats.html, if you change the drawing styles and then click on the map to draw it will update with the code used to draw the line on the right hand side.

There may be others I did not catch. SVG may draw lines and shapes from a database but it would still need a reference to pixel space, as in first street, pixel x345,y546, and so on from where it starts, turns and stops, and of course line width,color, and so on. Does your data source annotate the streets in this way.

I will keep an eye open as I think this is an interesting route to city map creation.
SeerBlue

RobA
05-30-2008, 09:22 PM
I would think that any GIS software would do what you want, assuming (as stated) you have the information in lat/long. Some of the GISers her might be able to provide more information.

-Rob A>

töff
05-30-2008, 11:18 PM
first street, pixel x345,y546, and so on from where it starts, turns and stops, and of course line width,color, and so on. Does your data source annotate the streets in this way.It could. It will all be mde up out of my head.

I will keep an eye open as I think this is an interesting route to city map creation.Me too but it might be more work than I was hoping. I can't spend a dollar to save a nickel.

I would think that any GIS software would do what you want, assuming (as stated) you have the information in lat/long. The city, although fictional, is in New Jersey, so lat/long would not be so tough.

Illustrator is looking better than Google, at this point. I am developing a single-bezier method of representing named, intersecting streets. That is the primary hurdle, I think.

SeerBlue
05-30-2008, 11:40 PM
this page http://maps.huge.info/trace.htm would give you all the coordinates, but it would involve clicking alot to draw a city map, and then the data would have to be modified to put into an xml (or other file format) to include names for the specific line, and change colors, and so on. and keeping track of which line was which street would be difficult.
Illustrator is probably the better route.
I am really curious now, as your fictional city has a real world location, were you intending to display it in google maps, or just looking to see if it could be leveraged to draw it.

As far as saving a nickel, Qgis is free, and with plugins will allow digitizing shape/vector files. And you could load your area of New Jersey from a WMS server to trace over,,,,I am sure someone has mapped New Jersey by now;)

But that would be back to drawing.

töff
05-31-2008, 12:44 AM
as your fictional city has a real world location, were you intending to display it in google maps, or just looking to see if it could be leveraged to draw it.It's been 2 flippin' years since I did any werk on this particular backburner project :( ... http://www.cityofsupers.com/cgi-bin/discus/show.cgi?tpc=51&post=52236#POST52236 ... but yeh, I thought a Google map would neat. The wet dream, of course, would be to hack GoogleMaps itself (or integrate my custom map into their basic US streetmap site), so it's a seamless match between Prodigy, NJ and the rest of the country.


As far as saving a nickel, Qgis is free, Sorry, I meant in terms of learning curve and werktime investment.

Alistair
06-02-2008, 07:07 PM
Well what you want can be done if you have the resources at your disposal. At work I make regular use of Mapserver (http://mapserver.gis.umn.edu/) to generate map layers that create roads maps based on US Census Bureau Tiger Shapes (http://www.census.gov/geo/www/tiger/tgrshp2007/tgrshp2007.html). This could be mimicked with ease if you can export your roads as a shape file. Alternatively you could generate them using a postGIS database containing the geographic lines for your roads and the names. If going from the database method you'd want to break your roads into chunks so that the labels will appear more than once on a given map.

With MapServer you can then load your layer into OpenLayers (http://openlayers.org) as a WMS layer.

If you can't get MapServer and are willing to give up the names on the roads I can help you out with loading the roads into OpenLayers as vector layers and even using OpenLayers to generate the WKT (well-known text) that you'd need to import the data into OpenLayers by default. I've only just begun to touch OpenLayers for RPG mapping, but recently finished implementing it where I work for mapping farm fields. The nice thing about OpenLayers is you can sign up to use Google Maps and make use of its background imagery in your own mapping applications or use Yahoo's or even Microsoft's mapping data. I've already implemented maps pulling data from NASA directly (very low resolution there unfortunately) and the US Navy for sailing charts.

If enough people are interested OpenLayers may be worth having its own thread here.