Offline Maps

21 Februari 2012:

I removed this project because I got asked by Google to remove the functionality which made it possible to download the tiles from Google Maps. May be sometime in the future I might re-iniate the project to provide the possibility to use openstreetmaps, but currently I have no such plans.

13 Februari 2010:

I will NOT be answering any more remarks or questions posted on the bottom of this page. Somehow they get completely mixed up and the order of questioning and answering is no longer coorectly maintained.

For any questions or remarks you can use the Discussions page on the Codeplex project page

We all wanted to do this at some time: be able to save the tiles of google maps on your computer for offline viewing.

I was first planning on implementing an Internet Explorer plug-in which would capture the URL’s of all the images in the page your viewing and then allow you to download selected images. But then I read this codeproject article explaining how to get the tiles by using the longitude and lattitude of a world-location.

And then it started expanding…

The GUI provides following functionality:

  • Tile viewing functionality
    • Navigate to a certain point by providing a name
    • View tiles served by Open Street Maps (thanks to Michael Collinson)
    • View tiles served by Google Maps
    • Set the type of tile you want to view
    • Zoom in and out of this point
    • Drag the map to reveal neighbouring tiles or simply put: panning functionality.
  • Ripping functionality
    • Set a ripping radius
    • Set a ripping zoom level
    • Set the tile-type you want to download
    • Provide a path along which to download all the tiles
  • GPS functionality
    • Find your position using a GPS
    • Trace a route on the map and save it
    • Display a previously saved trace
  • Import functionality
    • Import a bitmap and split it in tiles
  • Following is a small manual on how to use the desktop application.

    Starting a new project

    When you open the application you must first start a new project. You do this by selectinh the “New” menu item under the “File” menu. After selecting this a new Tile Explorer window is opened. This window allows you to view the tiles from a source. It will be explained in more detail later on. But first, you must select a source for your tiles.

    application.gif
    Click the image for a full view.

    Selecting a source for your tiles: the Servers tab

    availableservers.gif
    Click the image for a full view.

    When you select the Server tab you have the chance to select the source for your tiles by adding a tile server of your choice. Just click the Add-button and a window will show with the available servers. Select a server by it’s name and press the Select button.

    Depending on the type of server selected, on the Server tab some controls will be added allowing you to configure the server of your choice.

    Viewing tiles from online tileservers: the Online Maps area

    Viewing tiles from Google maps and OpenStreetMaps requires no additional data.

    For viewing files downloaded to your computer you must provide following data:

    folderserver.gif

    1. The name of the folder where the tiles are saved.

    For viewing tiles you must provide following data

    1. First, select the type of tile and the zoomfactor of those tiles.
    2. Second, type in a location in the “location” textbox and hit the Enter key
    3. If multiple locations correspond with the text you gave, the combobox is filled with those locations and you can select one of them.

    If everything went right, you should see the tiles served by the selected server in the viewing area. Depending of the type of tile selected, these will be Map or Satelite tiles. You have to be a bit patient if the user interface locks up because the retrieving of the tiles is done in the user interface thread.

    Next you can hold the left button mouse down on the viewing area and drag the mouse to pan the tiles. Again, the interface might block so be patient.

    For viewing tiles you downloaded, you must provide the exact same type of tile and zooming level as used for downloading them (see further). You must also provide an inital location. If you are completely offline you can use the Geocoder menu item for this. While you are online type in a location and save it by selecting the Geocoder -> Set as home menu item. To provide an inital location use the Geocoder -> Goto Home menu item. This will initialize the view on the previously saved Home location.

    The Window menu allows you to expand the tileview to fullscreen mode. Pressing the Escape key switches back to normal view.

    Additional functionality: the Layers tab

    availablelayers.gif
    Click the image for a full view.

    If you look at the Layers tab you will also see the ability to add layers to the application thus providing additional functionality.

    Currently following layers are provided:

    • Ripping layer: adds the ability to download tiles to of selected folder
    • Routing layer: adds the ability to trace a route on the maps and save or load that route
    • GPS Layer: adds the ability to show where you are using a GPS antenna

    Downloading tiles from Google Maps to your computer: the Google Ripping layer
    This is actually why I started this project: to be able to enter a path along which the tiles from Google Maps are downloaded.

    rippinglayer.gif

    For entering the path you do the following:

    1. Select a Ripping radius for the path. The path will have a width of twice this radius.
    2. Press the “Start Recording” button.
    3. Double click inside the viewing area on the points that you would like on the path.
    4. Press the “Stop Recording” button.

    You will see a visual cue in the form of a transparent red line covering the area that will be ripped.
    Ripping path

    Now that you have entered the path, you can specify the parameters to use for ripping the tiles on the path:

    1. Enter the type of tiles you want to download.
    2. Enter the Ripping Zoom Factor of the tiles
    3. Enter the folder into which to download the tiles.

    You can now press the “Start ripping” button and the downloading of the tiles will start. As a visual cue you will see transparent green squares appear for each tile that was downloaded. If a tile for some reason could not be downloaded a red square will appear.

    To see the tiles available in a certain folder you can select a folder as explained above and click the “Show Folder Content” button.
    Ripping active

    Tracing a route and follow it with your GPS: the Routing and GPS layers

    The application does not allow to calculate the route between two points. To be able to follow a route using the further explained GPS I implemented the possibility to trace a route and save it on your local drive.

    routinglayer.gif

    For entering the path you proceed as follows:

    1. Press the “Start Routing” button.
    2. Double click inside the viewing area on the points that you would like on the path.
    3. Press the “Stop Routing” button.

    When adding points you will see them being connected by a green line.
    Routing

    Now you can save this route:

    1. Select a file to which you want to save the route
    2. Hit the “Save route” button

    To recall a saved route:

    1. Select a file from which you want to restore the route
    2. Hit the “Load route” button

    Because the route is saved as a gpx file, you can load any gpx file as a trace file. And thanks to this site you can save a the route description from google maps as a gpx file. This aleviates the need to trace the route yourself.

    And now the GPS functionality.

    gpslayer.gif

    There are three main functional areas for this:

    1. Reading from a gpx file
    2. Reading from a raw NMEA file
    3. Reading from a NMEA server atached to the serial port

    In the case of the file reading you must enter the path to the file from which to read. The controls with the Navigating button allow for selecting a gpx file, while the controls around the File button allow for selecting a raw NMEA file format, that is the direct output of a gps antenna. In case of the serial port reader you must select the name of the serial port. In my case this is “COM5”. If everything went right the map should position itself with the longitude and lattitude provided by the GPS reader in the center. A red circle marks this point with a line at it’s center showing the direction you’re moving.

    GPS

    Combining the routing and then starting the GPS should make it more or less clear where to drive.

    GPS routing

    Importing another map as a bitmap and calibrate using Google Maps

    With this layer you can split bitmap which has the image of a map into tiles, save them to a folder on your harddrive and then view them using the Folder tileserver.

    Here are the main steps you’ll have to take:

    1. Go to the area with the server of your choice
    2. Open the Import layer
    3. Select a bitmap
    4. Select two points to stretch the bitmap over the server tiles, thus calibrating the bitmap
    5. Select the tiles you want to create and the zoomlevel they should have
    6. Select a folder and import the created tiles

    In detail this gives:

    Step 1

    Select a server you will use for calibrating the imported bitmap. This will typically be the Google Maps server but could be any supported server which covers the area of the bitmap.

    Then type in the location your bitmap covers in the “location” textbox and hit the Enter key.

    Step 2

    On the Layers tab, click the Add button and select the Import layer in the dialogbox. Hit the Selct button and you should now see the following controls on the Layers tab.

    step2.png

    Step 3

    Click the “Select File” button and select the bitmap you would like to import. The selcted bitmap will be drawn on top of the tiles served by the selected server. It will initaly be drawn with a transparency of 50%, but with the “Bitmap transparency” slider you can adjust it.

    step2.png

    Moving the slider to the left will make the bitmap more transparent, thus showing more of the tiles underneath it. Moving it to the right will make it less transparent, thus hiding the tiles underneath it.

    step31.png

    step32.png

    step33.png

    Select a transparency which allows you to identify certain key-points in the bitmap and there corresponding point on the bitmaps

    Step 4

    Click the “Add Point” button.

    Now be carefull: click on a point in the bitmap and drag it to the corresponding Google Maps point and NOT THE OTHER WAY AROUND !! There are still some usability issues here which, if you make a mistake, you have to start allover again.

    step4a.png

    Click on the “Add Point” button again.

    You have now added your first mapping point. You will see a small blue circle on the point where you made the connection. Also, if you now drag the tiles, the bitmap will ove with them.

    step41.png

    Click the “Add Point” button again.

    Again, drag a point from the bitmap to a point on the tiles and make no mistakes: you will not get a second chance !! You will see that while dragging, the bitmap is scaled and not moved: you allready mapped a first point and that point will stay fixed. To map the second point the bitmap must be stretched.

    step4b.png

    Click the “Add Point” button again.

    By adding these two points, you mapped the bitmap onto the tiles and have thus calibrated the bitmap. You will see a small blue circle on the point where you made the connection. You will also see a raster of lines appear. These are the tiles that will be created aventually using the zoomlevel that is selected by default.

    step42.png

    Step 5

    The default Zoomlevel for downloading tiles is 15, but if you would like to download them using another zoomlevel you can adapt it by clicking the “Import Zoom Factor” up-down control. If you do this, you will see the raster change.

    When having mapped a bitmap onto the tiles you will see that the edges of the bitmap will not always map to a complete tile. You can prevent these tiles from being created by clicking the “Exclude Tiles” button and clicking inside the tiles you want to exclude. If you made a mistake, click the “Include Tiles” button and click inside the tiles you want to create anyway. Tiles that will be excluded have a red border and tiles that will be included have a green border.

    Step 6

    Finally click the “…” button to select a target folder in which the imported tiles will be created and hit the “Import” button. The bitmap will be split in the requested tiles. You can view them using the “Folder” server and selecting the folder you selected for importing the bitmap.

    Hope you enjoy the application.

    Google Maps base url table

    I’ve noticed that Google sometimes updates the base-url it uses to get the various tiles from their servers. Allthough nothing fundamentaly changes in the application, this used to result in tiles saying you have a web-error, which was correct because the application could not get at the tiles.

    Prevously this resulted in small application updates that just changed the base urls. But now I updated the application so that you can update the base urls yourself, or you can automaticaly retireve them from the below table.

    URL release date Map base URL Transparent map base URL Satelite base URL
    28/09/2009 vt/lyrs=m@107&hl=nl
    07/03/2009 mt/v=w2.92
    12/01/2009 mt?n=404&v=w2.88 mt?n=404&v=w2t.88 kh?n=404&v=15
    18/10/2008 mt?n=404&v=w2.86 mt?n=404&v=w2t.86 kh?n=404&v=15
    24/08/2008 mt?n=404&v=w2.80 mt?n=404&v=w2t.80 kh?n=404&v=15
    27/07/2008 mt?n=404&v=w2.75 mt?n=404&v=w2t.75 kh?n=404&v=15
    Before 27/07/2008 mt?n=404&v=w2.74 mt?n=404&v=w2t.74 kh?n=404&v=15

    If you use the Google Server tab to obtain tiles you will see the following screen:

    You have two possibilities:

    1/ You can figure out the base urls yourself or copy them from the above table in the appropriate textboxes and save them in the configuration file by hitting the Save button
    2/ You can obtain the last update available in this table by hitting the Retrieve button.

    Known problems

    I’ve noticed that reading from the serial port doesn’t always succeed. I sometimes need to start the application several times before connecting succeeds. I’m using a TomTom bluetooth GPS receiver. If anyone knows about the problem and has a solution I’d be happy if you would share it with me.

    The Import layer does work but has some user interface issues. So if you make a mistake you will have to start allover again.

    The Mobile version has been stabilized a lot but is still a little bit slow.

    What’s next?
    Next on my list of whiches is (in no particular order):

    • Export to one or multiple bitmaps
    • Print an area
    • Have the possibility to save the route you followed to a GPX file, thus providing the possibility to contribute to the OpenStreetMap community
    • Stabilize existing functionality
    • Streamlining the buildprocess and provide more code documentation

    Downloads Version 1.4.2
    Source and binaries are provided under the following license:

    Copyright (c) 2007 – 2009, Serge Desmedt
    All rights reserved.

    Redistribution and use in source and binary forms, with or without
    modification, are permitted provided that the following conditions are met:
    * Redistributions of source code must retain the above copyright
    notice, this list of conditions and the following disclaimer.
    * Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in the
    documentation and/or other materials provided with the distribution.
    * Neither the name of “Serge Desmedt” or “Hungry For Knowledge” nor the
    names of any other contributors may be used to endorse or promote
    products derived from this software without specific prior written
    permission.

    THIS SOFTWARE IS PROVIDED BY Serge Desmedt “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

    The code
    The binaries

    Updates
    23 december 2007: Original article
    8 february 2008: Version 1.1.1.3

    • Change in google url for map-tiles

    16 march 2008: Version 1.2.0.0

    • New user interface
    • Added the ability to view in full screen mode
    • Added the ability to view the covered area of tiles in a folder
    • Change in google url for map-tiles
    • Version for Windows Mobile
    • Binaries are wrapped in an installer

    1 june 2008: Version 1.3.0.0

    • Added Import layer
    • Stabilized Mobile version

    8 june 2008: Version 1.3.1.0

    • Corrected bug in caching algorithm

    27 juli 2008: Version 1.4.0.0

    • Added view for Google Maps Server to correct the base-url’s for retrieving tiles
    • Added retrieve functionality to get the latest base-url’s from teh table under heading “Google Maps base url table”

    12 januari 2009: Version 1.4.1.0

    • Corrected bug which made it impossible to download tiles

    12 januari 2009: Version 1.4.2.0

    • Updated code to construct the map URL
    • Temporarily inactivated downloading of satellite tiles
    • Release sourcecode on Codeplex

    86 thoughts on “Offline Maps

    1. Hi! My name is Victor, from Spain.

      Asking google about using google maps offline, i reached your blog. I
      have read your Offline Maps entry and I can say it is brilliant,
      fantastic idea, perfect! The only problem I see it’s… my SO. It’s
      not windows, it’s mac. So I want to ask you if you are planning to
      port your application to linux or mac. That would be a good new for me
      and many more no-windows-users, really… You could use java+swing or
      java+swt instead having to use specific guis for each platform…

      Congratulations!! This is a VERY useful app 🙂

    2. hey victor,

      thanks for the positive response to my application. 😉

      I’ll have to disappoint you as i have no knowledge of java and do not have the intention to port my application to the java platform. I might port it to the mono .net platform which would enable linux and mac-os users to use it.

      But i have some other features (WPF and 3D views) and platforms (Windows Mobile and the .NET Compact Framework) that i would like to support first.

      Best regards,

      Serge

    3. Hey Serge,
      This is an awesome tool and is obviously the next step for Google Maps – here’s hoping they buy you out for millions of dollars 😉

      Quick question – do you know of a way that the tiles that are ripped could be called in a local HTML file via the Google Maps API?

      I’m trying to create a regular Google Map that can be used offline, so while I obviously need to be able to see the tiles offline, I also need to be able to add the javascript for the markers that will be on the map. This also precludes using your amazing piece of software, unfortunately.

      Any suggestions are appreciated! Hopefully you as the owner of this site can find my email address (otherwise I can provide it to you privately). Good luck on the continued development; I’ll definitely keep up with it.

      Best,
      Jake

    4. Hi Jake,

      I’m still waiting for their offer but haven’t received any news yet. 😉

      What you want is be able to use their javascript offline? I do unfortunately not know if this is possible. But I don’t think so. I haven’t experimented with their API yet allthough I have an idea for an application. But then I have more ideas than time… but I’m sure we all know the feeling.

      Regards,

      Serge

    5. Hi,

      thanks for this excellent work! It’s realy beautiful. Only thing I miss is export to some bitmap (jpg) file. Could you please add it?

      Thanks

    6. Hi Shark,

      What is it exactly that you want?

      Exporting to a bitmap can be a memory expensive operation. Do you want to export the area selected to one big bitmap (the resulting bitmap could become huge and unmanageable) or do you want to be able to divide it over several bitmaps (But then, how will you view them?).

      If you want to divide it over several bitmaps, how do you select those bitmaps? Specify a grid? Save the original Google tiles? Other…?

      Please give some more info on what exactly you would like. What would you eventually like to do with those bitmaps? Print them maybe, but then I’d better provide the possibility to print an area, something I was allready considering.

      So, a bit more info please.

      Regards,

      Serge

    7. Hi Serge,

      I thought about one “big” bitmap of selected area. You’re right, that this is memory-expensive, but I didn’t expect to create huge areas but just part of (small) city. Creating google tiles as bitmaps doesn’t make sense to me since it’s in your’s XML files as mime encoded string anyway.

      Furthermore I’ve heard about some applications for mobile devices with GPS, that takes bitmap file with some possition info and display appropriate part of your map on screen. But I haven’t seen any and don’t know limits nor required format.

      Regards,

      Shark

    8. Hi,

      Hat off to you Serge. This is wonderful.

      I came to reads this blog will searching through codeproject article “How Google Map Works” by Pascal

      Is it possible to add Mapserver as server source to this as well??

      Rgds.
      Abhay..

    9. Hi Abhay,

      I’m currently in the process of implementing the Compact Framework version. I recently bought myself a smartphone and tried running the released version and came to the aastonishing conclusion dit it doesn’t work.

      After that I’ll implement some more functionality I’d like to have because holidays are ariving and I’d like to use my application for navigation during our holiday.

      And after that I’ll implement the “Save As Bitmap” functionality requested by Shark.

      But then it will allready be around juli.

      Then I can make some time to implement the MapServer as server source.

      Of course, the sourcecode is available so your free to implement it yourself. If you do it, I would appriciate if you could share the source as Mike Collinson did with the OpenStreetMap implementation.

      Regards,

      Serge

    10. Whenever I try to load a map it takes a really long time and stops responding. I’m not even sure i’m doing it right.

    11. Are you ever going to make something like this for java phones. I am going to try to convert it to .jar but I do not know if it will work.

      1. @radioman

        I noticed some weeks ago that you started this project at codeplex. Haven’t looked at it yet but from reading the comments and watching the download count it looks like you’re doing a great job!!!

    12. thanks for this powerful program.
      but there is aproblem with me.
      i couldn’t download maps form Google to work offline, i need youre help at this point pleas contact me.

      1. Hi sam,

        Could you describe your problem please. I’ve just tried it and it still works for me.
        When you downloaded the application, did you update thye base-urls, because that might be the problem.

      1. Hi Alves,

        From the available servers form, select the “folder” server and then enter the folder where you saved the files.
        See the section “Viewing tiles from online tileservers: the Online Maps area” in the documentation

    13. thanks for your reply
      the problem which i mean is that after i select the area for ripping by double click on it , the circle of the radius which i select is viewed in a transparent form on the map and then the program stop (no response)i mean there is no downloading……???????
      so what should i do?

      1. Sam,

        Because of the current implementation for calculating which tiles to download you need to give a minimal of two points. They can be close together but you need two of them.

        Hope this helps.

        I’m currently busy in adapting the current version and I’ll adress that issue. So keep looking for updates.

        Serge

    14. Hi Serge,

      My name is Iúri and I saw your web site when I was searching for offline maps.
      Your application works already to PDAs? I know that I need to read more about it but I was so excited that I needed to ask.

      Best regards from Portugal,
      And continue the good job!

      1. Hi Iúri,

        It should work on PDA’s. I’ve tried it on my mobile phone (Windows Mobile 6.0) with a GPS antenna connected and it worked. I must however honestly say that it has been a while that I’ve tried it. If you’re not sucessfull, just let me know and I will try again and see what I can do.

        1. Hi Serge,

          I only tried to install it on a emulator of PDA yesterday, but I had one error you may check it in here (http://srefty.no.sapo.pt/ErrorInstall_offlineMaps.bmp).

          I tried to make deploy of the source code to the emulator.
          (this was the version that I used : this source files offlinemaps-17258.zip)

          Best regards from portugal and continue the good work!

        2. Hi Serge,

          I was able to deploy with the version offlinemaps-15170.zip

          Best regards,

          Iúri

        3. Hi Iuri,

          I had a look at it and could reproduce the error. I’ll correct it together with your previous remark (about the zoom factor) and make a new version. Check again around end of this week.

          Serge

    15. Hi Serge,

      I started to try it in my laptop, but I had some problem when I tried to Rip the maps I had the System.OutOfMemoryException (with google and open maps).

      I’m using this version Offlinemaps.Binaries.V1.4.2.zip.

      Is there any known issue with this version?

      I tried to rip one map of Lisbon with Ripping Radius = 1 and Ripping Zoom factor = 1.

      Best regards,

      Iúri

      1. Hi Iúri,

        I was able to reproduce the error. I’ll have a look at it and fix it as soon as I can.

        In the mean while, you should know that a zoom factor of 1 means looking from out of space at the earth: lisbon will only be a very small spot. If you want to see anything of the streets you have to go for a zoomfactor of 13 or more. So 1 is looking from a high altitude, while higher numbers mean looking closer and with more detail. I suppose you want to look with more detail.

        I’ve tried it with a ripping zoom factor of 13 and it worked fine.

        Of course, your remark is still a valid one and the application shouldn’t crash when using a zoomfactor of 1, so I will certainly have a look at the problem.

        Thanks for reporting the error and keep checking for updates

    16. Hi Serge,

      I didn’t know that 1 was from space, I thought that 1 it was closer.

      I will continue to check this and try it.

      Best regards,

      Iúri

    17. Hi Serge,
      My name is Iúri and I was trying to use your application in a PDA (I sent you come comment in March)
      today finally I had time to try this!
      I used the emulator of windows mobile 6 and but when I tried to install it I had this error OfflineMapsMobile.exe NullReferenceException (and it others) in this link ( http://srefty.no.sapo.pt/ErrorInstall_offlineMaps.bmp ) I put the image (its a bmp file with the print screen of my emulator).

      I tried to install this file OfflineMapsMobileDeployment.Cab that was inside off this file offlinemaps-17258.zip

      I hope that you may help me.

      Best Regards from Portugal

      Iúri

    18. Hi Serge,

      I need to make some PDA application to my studies and one of the requisites is to have the possibility to show maps.

      Since I saw your application I thought that I could use your framework to do this part, my idea it was to use your desktop application to generate the labels and after read them in a PDA with the new application that I will try to develop.

      I’m starting to program in C# and if some of my expressions aren’t the correct don’t take it bad.

      One more thing, you are thinking to make some tutorial about “how to use the mobile offline maps” like you did to the desktop version.

      I would like to see it working if it will be like you desktop it will be amazing!

      Best Regards,

      And one more time congratulations for your work!

      Iúri

    19. Hi Serge!
      Great program, and I really want to try it out. I’ve downloaded the latest version but for some reason I’m getting an error message when I try to “retrieve” a google map. It asks me if I want to continue or quit, if I quit it closes the program. If I click continue, it doesn’t do anything.
      Just wondering what I’m doing wrong and how to fix it.

    20. Hi Serge.

      This seems to be a very handy application you came up with but I’m having some problems.

      Is the latest desktop application Vista compatible?

      Somehow I can’t get it to work on Vista and I can’t find an uninstaller as well.

      In case it isn’t Vista compatible could you please tell me how to uninstall it or which folders and registry entries to delete.

      Thanks in advance for your help.

      Tommy

      1. Tommy,

        I have only tried it on Windows XP, but can see no reason why it would not run on Vista. Can you provide some more detail please.

        There is indeed no uninstall. Simply delete the installed files. There are no registry entries made.

        Serge

    21. Hi Serge.

      Thanks for your reply.

      I tried everything to make it work, like installing and running the application as an administrator but when I choose the Google server nothing happens and when I click retrieve after a while nothing happens except that the application freezes if I try to click retrieve again after a while.

      It seems that the application isn’t Vista compatible as yet or I’m doing something wrong but I can’t imagine what.

      Or could it be an IE8 issue?

      Thanks again for your support,

      Tommy

      1. Hi Tommy,

        I think you are mistaken by the expectations you have from the application. This application does not use any browser for showing the tiles. So, even if you have no browser installed, the application will still function.

        The retrieve button is not for getting the tiles. You can read about it in the manual (see section “Google Maps base url table”). To view the tiles you must first give the name of the location which you would like to see in the window. You can do this by typing the name of the location in the dropdownbox on the lefttop of the projects window (The one that says “Kortrijk, Belgium” in this image) and then hit the enter button. This is indeed not clearly explained in the manual so I will adapt it. Executing these actions should show a map of the location you entered in the projects window.

        As for the problem with hitting the “Retrieve” button twice, I’m currently working on a new version of the program involving a complete rewrite. I will solve it there.

        Hope you enjoy the application,

        Serge

    22. Hi Serge.

      Thanks for the explaination.

      I’ll give it another try and let you know if it worked.

      Thanks again.

      Tommy

    23. hi serge,

      I’ve installed offline maps ver. 2.1.04 for iphone 3g (os3).
      the problem is that when i’m trying to load a map (ex.athens 58mb) offline maps apllication blinks and then terminates. if i go to maps and deactivate wifi, nothing happens. is this a bug or i need another version?

      thanx in advance..

    24. Hi.

      Program function sounds good but I can’t get it going.

      When I type in the location, the map window goes black and the program terminates.

      I am running xp-sp3 with the latest .net framework

      any ideas?

    25. Hi, I love the concept of your program, and hope that I can get it working on my HTC Touch Diamond.

      I’ve got 1.4 installed (even though the top bar says 1.3). The main screen, which is the servers tab, has all empty boxes, and the select button. From what I gather, Google Maps (which is installed) should be listed here, correct? Or am I supposed to browse for a file on the phone?

      I’m running Windows Mobile 6.5, by the way. Thanks, Mike

      1. Mike,

        I’m afraid i’ll have to disappoint you: the only functionality in the mobile version is viewing tiles stored on the filesystem. You can not access google maps or download tiles from google maps. This is only possible with the desktop version.

        Regards ,

        Serge

        1. OK, I can handle that. I assume ripping and routing must happen on the desktop as well. But does GPS work with the pre-saved maps?

          Thanks, and thanks for the quick response. Mike

        2. @Mike

          It does indeed work with the downloaded images.

          My use case was the follwoing:
          – download some tiles with the desktop application along a route which you want to follow
          – create a route you want to follow
          – put the tiles on you mobile application
          – display the route you created with the desktop version
          – use the gps functionality on your mobile phone or whatever

    26. hi
      i have great time with your application thanks for your hard working but i want to ask you how to open the maps offline
      folder which i saved from ripping i try to open it by clicking server and select folder , take tile as map , then zomming factor , then type location and click enter but i didn’t see any thing
      is these steps is right if it is wrong could you explain to me how to work offline
      you also said when i save page in geocoder (set as home) i can get it when i am offline by clicking go to geocoder but programme didn’t go to page i saved please help me at these points
      also i want to ask how i can get bit map

        1. yes and the programme give me error message and give me choice for closing the program or checking for solution on net and closing programme

        2. @doly

          I just tried it and it all worked fine for me.

          Did you use the Add and Remove buttons when changing from the google server to the folder server, or did you close the rpoject and create a new project. In my test I did the last. The first effectively didn’t work.

          However, the funcionality with “set as home” and “goto home” works fine for me.

          Could you please give me some more information? What location did you use, what zooming factor, other…

          Try all the steps again and use a new project or restart the program after each use case.

          If you still have problems, do not hesitate to post here.

          Regards,

          Serge

    27. Hi,

      Trying to run the “OfflineMapsDesktop” app in the offline folder… File>New>Add>Google>Retrieve>Melbourne displays black screen and creashes program with “Sorry, encountered problem need to close… send / don’t send message box.

      1. @Chris,

        You do not need the retrieve button to go to a location.

        The retrieve button is to update the base-url’s used to get tiles.

        To go to a location, select a zoom factor (slide the zoom slider to somewhere in the middle), type the name of the location in the dropdown box of the viewer and hit enter. I tried it with “Melbourne” and it worked.

        Regards,

        Serge

    28. I just got this app and I’d like to use it. Read the documentation and I can’t get it to work? I’ve had some errors pop-up but did NOT record them, sorry. The problem is more basic than those errors though. I just can’t get GOOGLE to show me maps?

      I’ve loaded GOOGLE as the server, retrieved the map URL (vt/lyrs=m@107&hl=nl) and nothing shows. On the LAYERS tab is nothing as well?

      What am I doing wrong?

      For what it is worth, I’m on Vista Home Prem. 64 bit, on Cable modem behind a router and my system is protected by McAfee’s Total Protection suite. In the firewall the app has FULL ACCESS.

      Thanks,
      Irv S.

      1. @irv

        I suggest you read teh manual very carefully:

        You MUST type a location in the dropdown box and press enter, otherwise the application will indeed do nothing

        Serge

        1. OK, I guess I missed that?

          I entered my home address (send me e-mail if you want to try using it).

          These are the steps I did :

          – Opened app.
          – FILE->NEW
          – ADD
          – Select GOOGLE
          – Entered my address in the form of :
          xxxx STREET NAME, State abrev., Zip code.
          – Pressed Enter

          Got the app to close and this in my Event Viewer…

          ———————
          Log Name: Application
          Source: Windows Error Reporting
          Date: 10/9/2009 5:41:58 PM
          Event ID: 1001
          Task Category: None
          Level: Information
          Keywords: Classic
          User: N/A
          Computer: Irv-XPS435
          Description:
          Fault bucket 611643318, type 5
          Event Name: CLR20r3
          Response: None
          Cab Id: 0

          Problem signature:
          P1: offlinemapsdesktop.exe
          P2: 1.4.3.34825
          P3: 4a032682
          P4: System
          P5: 2.0.0.0
          P6: 49cc5ec9
          P7: 1f6d
          P8: 1c8
          P9: System.Net.WebException
          P10:

          Attached files:
          C:\Users\Irv\AppData\Local\Temp\WER227D.tmp.version.txt

          These files may be available here:
          C:\Users\Irv\AppData\Local\Microsoft\Windows\WER\ReportArchive\Report0bc13745
          Event Xml:

          1001
          4
          0
          0x80000000000000

          28197
          Application
          Irv-XPS435

          611643318
          5
          CLR20r3
          None
          0
          offlinemapsdesktop.exe
          1.4.3.34825
          4a032682
          System
          2.0.0.0
          49cc5ec9
          1f6d
          1c8
          System.Net.WebException

          C:\Users\Irv\AppData\Local\Temp\WER227D.tmp.version.txt
          C:\Users\Irv\AppData\Local\Microsoft\Windows\WER\ReportArchive\Report0bc13745

          ——————–

          Irv

        2. Hi Irv,

          try your steps with just the text “los angeles” and see if it works.

          I just tried it with this text and everything worked fine for me. The search function for location isn’t perfect yet and I am aware their are still some bugs there.

          If the above works, then try with your address but don’t specify to much detail, like a street or house number.

          If you still experience problems just post a comment here. I will then e-mail you to have a closer look at your problem.

          Regards,

          Serge

        3. Serge, tried both GOOGLE and OPEN STREETMAPS. Entering Los Angeles gives slightly different results. In both cases, Los Angeles CA. appears in the search box and the map area is black, but both give the same Event Viewer error,

          Log Name: Application
          Source: Windows Error Reporting
          Date: 10/11/2009 9:18:56 AM
          Event ID: 1001
          Task Category: None
          Level: Information
          Keywords: Classic
          User: N/A
          Computer: Irv-XPS435
          Description:
          Fault bucket 611644904, type 5
          Event Name: CLR20r3
          Response: None
          Cab Id: 0

          Problem signature:
          P1: offlinemapsdesktop.exe
          P2: 1.4.3.34825
          P3: 4a032682
          P4: System.Drawing
          P5: 2.0.0.0
          P6: 49cc5f38
          P7: 17e
          P8: 4a
          P9: System.ArgumentException
          P10:

          Attached files:
          C:\Users\Irv\AppData\Local\Temp\WERE3DA.tmp.version.txt

          These files may be available here:
          C:\Users\Irv\AppData\Local\Microsoft\Windows\WER\ReportArchive\Report1067f538
          Event Xml:

          1001
          4
          0
          0x80000000000000

          28419
          Application
          Irv-XPS435

          611644904
          5
          CLR20r3
          None
          0
          offlinemapsdesktop.exe
          1.4.3.34825
          4a032682
          System.Drawing
          2.0.0.0
          49cc5f38
          17e
          4a
          System.ArgumentException

          C:\Users\Irv\AppData\Local\Temp\WERE3DA.tmp.version.txt
          C:\Users\Irv\AppData\Local\Microsoft\Windows\WER\ReportArchive\Report1067f538

          Irv

        4. Serge, this is a fairly new Dell image running Vista 64 bit.

          In WINDOWS\MICROSOFT.NET are 2 folders, FRAMEWORK and FRAMEWORK 64.

          In FRAMEWORK is :

          C:\Windows\Microsoft.NET\Framework>dir
          Volume in drive C is OS
          Volume Serial Number is 1C5C-DD5E

          Directory of C:\Windows\Microsoft.NET\Framework

          05/28/2009 10:49 AM .
          05/28/2009 10:49 AM ..
          03/29/2009 09:42 PM 79,696 NETFXSBS10.exe
          09/18/2006 05:32 PM 41,392 netfxsbs12.hkf
          01/20/2008 10:48 PM 16,896 sbscmp10.dll
          01/20/2008 10:49 PM 16,896 sbscmp20_mscorwks.dll
          07/27/2008 02:03 PM 16,896 sbscmp20_perfcounter.dll
          01/20/2008 10:50 PM 14,352 sbs_diasymreader.dll
          01/20/2008 10:48 PM 14,336 sbs_iehost.dll
          01/20/2008 10:49 PM 14,360 sbs_microsoft.jscript.dll
          01/20/2008 10:49 PM 14,904 sbs_microsoft.vsa.vb.codedomprocessor.dll

          01/20/2008 10:48 PM 14,344 sbs_mscordbi.dll
          01/20/2008 10:49 PM 14,344 sbs_mscorrc.dll
          01/20/2008 10:50 PM 14,344 sbs_mscorsec.dll
          01/20/2008 10:48 PM 14,384 sbs_system.configuration.install.dll
          01/20/2008 10:51 PM 14,352 sbs_system.data.dll
          01/20/2008 10:48 PM 14,376 sbs_system.enterpriseservices.dll
          01/20/2008 10:49 PM 14,344 sbs_VsaVb7rt.dll
          01/20/2008 10:49 PM 14,352 sbs_wminet_utils.dll
          01/20/2008 10:49 PM 16,896 SharedReg12.dll
          05/28/2009 10:49 AM v1.0.3705
          11/02/2006 09:33 AM v1.1.4322
          09/12/2009 10:02 AM v2.0.50727
          11/02/2006 11:16 AM v3.0
          05/08/2009 04:16 PM v3.5
          18 File(s) 361,464 bytes
          7 Dir(s) 128,508,739,584 bytes free

          In FRAMEWORK64 is :

          C:\Windows\Microsoft.NET\Framework64>dir
          Volume in drive C is OS
          Volume Serial Number is 1C5C-DD5E

          Directory of C:\Windows\Microsoft.NET\Framework64

          05/28/2009 10:49 AM .
          05/28/2009 10:49 AM ..
          01/20/2008 10:50 PM 17,408 sbscmp10.dll
          01/20/2008 10:51 PM 17,408 sbscmp20_mscorwks.dll
          07/27/2008 02:01 PM 17,408 sbscmp20_perfcounter.dll
          01/20/2008 10:48 PM 17,408 SharedReg12.dll
          09/05/2009 02:06 PM v2.0.50727
          11/02/2006 11:07 AM v3.0
          05/08/2009 04:16 PM v3.5
          4 File(s) 69,632 bytes
          5 Dir(s) 128,508,669,952 bytes free

          In both of these, the v3.5 shows a folder 1033 which is the last installed.

          I got DOTNET.EXE which detects version (http://www.asoft.be/prod_netver.html) and it claims this :

          2.0.50727.4016
          ->C:\Windows\Microsoft.NET\Framework\v2.0.50727

          .NET FW 2.0 SP 2
          .NET FW 3.0
          .NET FW 3.5 SP 1

          Irv

        5. Irv,

          I did some further research on the problem you’re having and it may be related to the fact you are using the application on a 64bit version of windows vista and I compiled it on a 32bit windows XP machine.

          Anyway, I recompiled the application with some different settings. You can download this version here. You beter uninstall the previous version (simply delete the “hungry for knowledge” folder drom the “program files” folder (or whatever it is called in windows vista) and re-install this updated version.

          Please let me know if you succeeded and thanks for being so patient with the application.

          Regards,

          Serge

        6. Serge, no go… same error. Files I ran are

          K:\utilities\Offline Maps>dir
          Volume in drive K is Drive_K
          Volume Serial Number is 5ABD-5B29

          Directory of K:\utilities\Offline Maps

          10/11/2009 03:39 PM .
          10/11/2009 03:39 PM ..
          10/11/2009 08:44 PM 7,168 GIS.dll
          10/11/2009 08:44 PM 10,240 GPS.dll
          10/11/2009 08:44 PM 7,680 HFKSys.dll
          10/11/2009 08:44 PM 34,304 OfflineMapsDesktop.exe
          09/23/2009 08:26 PM 450 OfflineMapsDesktop.exe.config
          10/11/2009 08:44 PM 937,472 TileServer.dll
          6 File(s) 997,314 bytes
          2 Dir(s) 473,601,298,432 bytes free

          Ran it both ‘normal’ and ‘as administrator’. Event Viewer has the same error.

          Would a ‘trace’ or a ‘debug’ version give you more info?

          Irv

        7. Oh, another thing, when I just enter the address in the form of :

          xxxx street name, state abrev.

          I do NOT get a combo box but HTML in the input area and the first part showing, “Did you mean:” and of course, the correct address following that but not visible.

          The manual implies I’d get a COMBO BOX.

          If I use the server OPEN STREETMAP I get a BLACK map before I get an error and the app closes. Slightly different data in the Event Viewer.

          Log Name: Application
          Source: Windows Error Reporting
          Date: 10/9/2009 6:04:49 PM
          Event ID: 1001
          Task Category: None
          Level: Information
          Keywords: Classic
          User: N/A
          Computer: Irv-XPS435
          Description:
          Fault bucket 611644904, type 5
          Event Name: CLR20r3
          Response: None
          Cab Id: 0

          Problem signature:
          P1: offlinemapsdesktop.exe
          P2: 1.4.3.34825
          P3: 4a032682
          P4: System.Drawing
          P5: 2.0.0.0
          P6: 49cc5f38
          P7: 17e
          P8: 4a
          P9: System.ArgumentException
          P10:

          Attached files:
          C:\Users\Irv\AppData\Local\Temp\WERCBC.tmp.version.txt

          These files may be available here:
          C:\Users\Irv\AppData\Local\Microsoft\Windows\WER\ReportArchive\Report1d7e22eb
          Event Xml:

          1001
          4
          0
          0x80000000000000

          28204
          Application
          Irv-XPS435

          611644904
          5
          CLR20r3
          None
          0
          offlinemapsdesktop.exe
          1.4.3.34825
          4a032682
          System.Drawing
          2.0.0.0
          49cc5f38
          17e
          4a
          System.ArgumentException

          C:\Users\Irv\AppData\Local\Temp\WERCBC.tmp.version.txt
          C:\Users\Irv\AppData\Local\Microsoft\Windows\WER\ReportArchive\Report1d7e22eb

          Irv

    29. After downloading, I try run OfflineMapsDesktop.exe,
      but I always got error after I type location, for example “Toronto,On,Canada”, then press “Enter” key:

      Error Signature:
      OfflineMapsDesktop.exe

      I use google base url: “vt/lyrs=m@107&hl=nl”

      1. Hi Frank,

        I’ve just tried it and it works fine for me.

        Are you sure it is not a problem with yhour firewall or virusscanner which blocks access to the internet for the OfflikneMapsDesktop application?

    30. This may be what I’m looking for a non-profit application I’m building for the tracking of medical distribution and health services in third world countries. I installed it on my XP Workstation. However, I could not get the Server Window selection to come up. I started with New project and nothing shows up after that. Any missing here? Thanks for your help.

      1. Hi Gilbert,

        The correct order of actions to take is as follows
        1/ Start the application
        2/ Choose the ‘File’ menu and then ‘New’ > A window should appear with a slider control (see the image in the manual above)
        3/ On the ‘Servers’-tab the Add button is now enabled: press it > A dialog should appear allowing you to select the server
        4/ Click on a server name and press the Select button
        5/ Follow the steps in the above manual

    31. Is it possible to setup a better and robust Discussion Forum? I think this would help everyone able to track different topics and follow through effectively. Just a thought. e.g. Connect it to a community discussion group.

    32. HI

      Thanks for your wonderful program am using your code in my program , I am trying to draw two or more disconnected routes and I am finding that the program is drawing all the connected routes instead of draw different routes, could you please look into this issue.

      Srinivas

    33. Environment
      Vista32bit
      v.1.4.3.0
      net framework 3.0
      I get as far as displaying the map in the right pane.
      Selecting a different drive for saving maps always reverts to C:\path instead of G:\path.
      This errors occurs after selecting the ripping button.
      Application exception
      Index out of range.
      etc…

    34. Can anyone tell me how to figure out the base URL? In particular for satellite imagery.

      Everything else seems to work but I think this may be out of date now. Either way it would be another wrinkle of knowledge.

    35. i’am problem with installation of this application.

      Always is showing a window’s error

      i don’t know what to do.

      Please help me, i`d like to use this application.

    36. Serge,
      Just discovered this application, and though I haven’t tried it yet, I want to congratulate you for the tremendous effort you’ve put into this. Amazing !! Absolutely amazing.

    37. Hi Serge,

      I just downloaded and installed Offline Maps on windows xp (.NET Framework 3.5 sp1). I entered the Google server, and everything goes fine up untill clicking retrieve to get the right url. From there on, when I type a city name in the text box (Berlin, in my case), windows reports a critical warning that an error occurred and the program needs to be shut down. Do you have any idea what goes wrong?

      Thanks for any thoughts and keep up the good work!

      1. Hi Klaas,

        you should change the slider in the map window to somewhere in de middle and not leave it at the bottom.

        The bottom is the minimal zooming and will try to show you the whole world which is probably not what you want.

        Regards,

        Serge

    Leave a reply to Alves Cancel reply