tlaukkanen / mobile-trail-explorer

Automatically exported from code.google.com/p/mobile-trail-explorer
2 stars 0 forks source link

Map texture overlay #49

Closed GoogleCodeExporter closed 9 years ago

GoogleCodeExporter commented 9 years ago
It would be great if MTE could display 'real' map textures so that I
wouldn't need to switch applications when I'm lost in the woods :)

Google Maps or Open Street Map integration would be nice. It would be even
better if we could have quite generic map texture interface so that user
could select the service for best maps.

Original issue reported on code.google.com by tlaukka...@gmail.com on 25 Jul 2007 at 8:53

GoogleCodeExporter commented 9 years ago
Such a map texture overlay feature would be a great thing for MTE and I think a 
lot 
of people are waiting for this feature.

I am watching for a long time at the "TrekBuddy" community (www.trekbuddy.net). 
This 
GPS tool already has this map texture feature and the users can create their 
own 
atlases (maps of an area in a bundle) to show it in trekbuddy as overlay. It 
would 
be very cool if MTE also understand/can read these atlas files. Accessing the 
internet for maps download from GoogleMaps or OpenStreetMap could be very 
expensive. 
So I would prefer the creation of maps before and copy it to my memory card.

There is also a simple tool available for downloading maps as 256x256 Pixel 
.png 
image tiles from google maps. You only have to specify the latitude min/max and 
longitude min/max and the zoom-level and press "create altas". Here is the 
tool, but 
you have to register in forum for download:
http://www.linuxtechs.net/kruch/tb/forum/viewtopic.php?t=464

What do you think about using this "altas"-format in MTE ? Users could also 
share 
their created altases.

Original comment by msanson...@googlemail.com on 28 Jul 2007 at 12:53

GoogleCodeExporter commented 9 years ago
I would make a support for both real-time downloading and preloaded content. 
Data
plans for mobile phones are coming more popular as they are becoming cheaper. I
already have an unlimited data plan in my N80.

Do you know any good articles about the Atlas format?

I have used Maemo Mapper on my Nokia 770 and it supports both downloading and
preloaded maps as the map tiles are cached/loaded on memory card in a simple 
structure:
/cache/<zoomlevel>/<x>/<y>.png

By using this format we could use the for example the following services:

Google Maps (street)
http://mt.google.com/mt?x=%d&y=%d&zoom=%d
Google Maps (street) (alternative)
http://mt.google.com/mt?v=ap.999&x=%d&y=%d&zoom=%d
Google Maps (satellite)
http://kh.google.com/kh?v=999&t=%s
Virtual Earth (street)
http://r0.ortho.tiles.virtualearth.n.../r%0s.png?g=45
OpenStreetMap - Traditional "Mapnik"
http://tile.openstreetmap.org/%0d/%d/%d.png
OpenStreetMap - Developmental "Osmarender"
http://dev.openstreetmap.org/~ojw/Ti.../%0d/%d/%d.png

Here is a short tutorial how to convert longitude and latitude to x and y 
coordinates:
http://wiki.openstreetmap.org/index.php/Slippy_map_tilenames

Original comment by tlaukka...@gmail.com on 29 Jul 2007 at 8:35

GoogleCodeExporter commented 9 years ago
This project is using some high-end libraries of Java ME, such as: JSR-75, 
JSR-82.
I'm sure JSR-226 (http://jcp.org/en/jsr/detail?id=226) will be popular too. It 
will
be easier for us to use native SVG support of Java ME. Google Maps already added
support for SVG. What do you think?

Original comment by khanh....@gmail.com on 30 Jul 2007 at 1:35

GoogleCodeExporter commented 9 years ago
It would be great if we could support JSR-226 but it seems that it is quite 
rarely
supported by majority of phones (http://www.svg.org/special/226_phones). Even 
none of
the developers has a phone with that support (or do you?). JSR-75 and JSR-82 are
quite "standard" nowadays.

There are some open source SVG libraries for phones without JSR-226 but they 
might be
too large or too slow for the MTE. Does anyone have any experience of those?

Original comment by tlaukka...@gmail.com on 30 Jul 2007 at 9:10

GoogleCodeExporter commented 9 years ago
I have looked into this a little myself today. My main interest in maps is to 
have
contours under my trails.

http://www.smc.org.uk/ContourMaps.htm

That site publishes some high quality free contour maps. However, the files are 
in a
proprietary format for Garmin GPS units. 

I have acquired a copy of GPSMapEdit which lets me view this format and export 
the
data in bmp tiles which I can then convert to png tiles. The export also gives 
nice
easy longitude/latitude co-ordinates for the corners of each tile.

I was thinking that it should be relatively straightforward to add support for
loading a text index file which allows MTE to load the correct png tiles 
indexed by
the current gps position.

The work I would need to do for this would be:
- Command line java tool to parse a batch of .map files to a single MTE 
readable file
containing quintuples of the 4 corner points and the filename of the tile for 
that patch.
- Support in MTE for drawing these tiles behind the trail

This biggest drawback of this method is it relies on GpsMapEdit for access to 
the
Garmin format and this is a shareware tool. However,even the limited version 
allows
export to OziMap format (i.e. export to BMP tiles with .map tag files)

Original comment by mch...@gmail.com on 26 Sep 2007 at 12:09

GoogleCodeExporter commented 9 years ago
note that requesting google tiles directly - without the js api - is a 
violation of
the usage license. see maemo-mapper for details. OSM is free (and the 
Netherlands is
already complete :)

Original comment by zorre...@gmail.com on 12 Oct 2007 at 9:47

GoogleCodeExporter commented 9 years ago
Yes, I noticed that too. 
To do it legitimately we'd have to give users the ability to type in the 
exceedingly
long api keys into their phones, which is doable,
but not a pleasant user experience. Also I see now the keys are tied to a 
specific
'web directory'. I don't know if this would complicate matters.
Alternatively, we could ask explicit permission from Google to use the maps in 
the
application. You never know, they might say yes...

Better still, OSM was created to avoid this kind of copyright uglyness, So I've
implemented some code that uses it.  

It's a long way from 'release' ready, specifically the scale for the tracks 
does not
match the map scale, so I've had to separate the zoom controls temporarily. 
So 1-3 zooms the track, while 7-9 zooms the map display. I don't intend that it 
is
left like this, once the scales are fixed, the 7-9 controls could be removed. 
Also the caching is buggy, I get an occasional unhandled exception which I 
haven't
pinned down yet. 

Still, it does draw the map, so I've committed it. 
You can test it by turning on the 'Draw OSM Maps' option under display settings.

Original comment by gdjo...@gmail.com on 18 Oct 2007 at 10:46

GoogleCodeExporter commented 9 years ago
That is excellent Gareth! I'm really looking forward on using OSM map drawing 
in MTE. I think that this support 
will boost up the whole OSM mapping atleast in my location (Tampere, Finland) 
which is currently not very well 
mapped at all. 

I tried to run the latest build but I got runtime exception that shuts down the 
app. 

Have anyone else tried out the latest build with the OSM map drawing?

Original comment by tlaukka...@gmail.com on 18 Oct 2007 at 6:38

GoogleCodeExporter commented 9 years ago
Tommi, 
Does the runtime exception happen immediately on starting the app, or after 
some usage?
I am able to run the build on my N80. It does draw the map, but eventually 
fails with
an unhandled exception. This only stops the map drawing from working, the rest 
of the
app continues to operate.
I'm pretty sure I committed all the relevant code, but perhaps I missed 
something.
Maybe you could email me the build you have made and I can see if it runs on my 
device?

Original comment by gdjo...@gmail.com on 19 Oct 2007 at 8:21

GoogleCodeExporter commented 9 years ago
I was now able to run it and it even loads and displays the map tiles. It 
throws the
exception when randomly after some usage or after I try to zoom the map. It 
feels
like it is Out of Memory exception. N80 has quite large resolution so those 
tiles
could take quite amount of memory(?)

Original comment by tlaukka...@gmail.com on 19 Oct 2007 at 7:02

GoogleCodeExporter commented 9 years ago
Yep, that's the same error I've been trying to track down for a little while 
now. It
seems to occur when saving the tile image, so is most likely an out of memory
exception. I would expect that to get caught in one of the try/catch blocks, 
but I
just get 'unhandled exception' which doesn't give any clues as to what the 
problem is.

Original comment by gdjo...@gmail.com on 19 Oct 2007 at 7:26

GoogleCodeExporter commented 9 years ago
I'm marking this as fixed as it seems to work pretty well. We can improve it 
later on
in the next releases.

Original comment by tlaukka...@gmail.com on 3 Dec 2007 at 9:39

GoogleCodeExporter commented 9 years ago
Dear all,

I'd recommend to support also the Open Geospatial Consortium specification for 
the
Web Mapping Server (WMS, http://www.opengeospatial.org/standards/wms). If MTE 
would
support this interface, the user could simply add its favorite WMS server. 
There are
hundreds if not thousands of WMS servers around these days. 

Paul

Original comment by smit...@gmail.com on 14 Feb 2010 at 3:54