Menu

Show posts

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.

Show posts Menu

Messages - mapCoder

#1
Troubles & Questions / Re: sqliteDB autoload
September 28, 2013, 09:05:50
Quote from: menion on September 23, 2013, 21:47:21
I'm worried that more then magic, this autoloading is buggy and will definitely needs some more attention from my side soon. Anyway on JB, should be for sure limit 4GB. Looks it's even more, perfect

menion, on larger DBs like MSSQL we have the "check" key, which basically provides the limits on data in a table. this way, sql knows the range of data in a table and ignores scans if the data is outside of the range.

You could add another column table in the sqldb file that provides the ranges of the x,y tiles, so you can avoid a scan. (maybe you are already storing this, I don't know).

Or, use the filenames to provide hints eg: <map name>_z_x_y_<x limit>_<y limit>



the maps work fine, only thing i noticed is that tile loading bug. when the zoom is not 100%, Locus fails to load tiles. I do not have shading turned on.
#2
Troubles & Questions / Re: sqliteDB autoload
September 18, 2013, 09:38:06
Quote from: menion on September 18, 2013, 08:36:46
what happen to you is how is locus done ... auto-loading system is quite old and I agree that it should work better

if you have more SQLite maps and you want, that all these maps works as one map!, then Locus has a solution for creating "multi-sqlite" map. Solution is simple. Create in you maps directory one sub-directory, for example Locus/maps/myBigMap and put all these sqlite files into this directory. That's all. Locus will display in list of personal maps, just one map "myBigMap" and it should work as expected, no matter what auto-loading you have selected.

about "auto-loading" - it works in a way, that if you're in one! zoom level and some tiles are missing, Locus is searching for an alternative map source that should fill empty places on screen. Anyway you're still limited by zoom levels of your base (selected) map

Thanks I was gonna try that but I came across a post here on this forum where someone said they got a 3.5 GB sqlite map working on ICS.

I went ahead and built a 5.7GB sqlite database. I can confirm that it works fine. speed is good aswell. :)

I'm quite pleased with the setup and will try it out for a few days.

Thanks Menion.
#3
Troubles & Questions / Re: sqliteDB autoload
September 17, 2013, 17:44:44
if it helps, this is the info table from different files:

top.sqlitedb: 7|6|25.160089012284|55.3710937505824|7;6|0

North.sqlitedb: 5|1|25.160089012284|55.3710937505824|5;3;1|0

South.sqlitedb: 5|1|25.160089012284|55.3710937505824|5;3;1|0

North17.sqlitedb: 0|0|25.160089012284|55.3710937505824|0|0

South17.sqlitedb: 0|0|25.160089012284|55.3710937505824|0|0
#4
Troubles & Questions / sqliteDB autoload
September 17, 2013, 17:29:46
Can someone list the requirements for the autoload feature ? There are 2 options (same type only & otherwise).

My scenario: I have divided my country into 2 areas (north & south).

I have the following sqlite files

top.sqlitedb: This an over all map containing tile zoom levels 8-11 (9-6 in sqlite)
North.sqlitedb: This contains the northern region in zoom levels 12-16 (5-1)
South.sqlitedb: contains the southern region in zoom levels 12-16 (5-1)
North17.sqlitedb: This contains the northern region in zoom levels 17 (0 in sqlite)
South17.sqlitedb: contains the southern region in zoom levels 17 (0 in sqlite)

All the DBs have the provider in the info table as "0". (so they are same type: I assume).

Now, what I expected Locus to do is to load the necessary tiles for the current zoom level from the sqlitedb files. meaning tile for zoom level 10 from top.sqlitedb and tile for zoom level 17 from North17/South17.sqlitedb.

However, that is not happening. what does work is if I'm in North.sqlitedb, it will load tiles from both North.sqlitedb & south.sqlitedb as required. but if I zoom out of the range of the current sqlitedb file, it will not load from the other files.

What have I done wrong?
#5
Quote from: menion on September 16, 2013, 13:36:07
sorry, I'll confused myself ...

please read my answer here https://getsatisfaction.com/locus/topics/is_there_a_way_to_use_my_existing_maverick_tiles_in_locus#reply_11775970 ... I've just tested map tiles from BCNav and it's needed to add them to personal maps manually. I was almost sure, it's done automatically, but it isn't, sorry

I also discovered for my surprise, that filepath to bcnav tiles was switched from z/x/y.bni to x/y/z.bni. Sorry. In next version, it will works correctly

my tiles are z/x/y.bni They are however in jpg format and not png. bcnav used to read them natively. (i've added them as png aswell but Locus did not pick them up.)

Just for the record, I've tried .jpg, .png, .jpg.tile & .png.tile
It picks up the zoom levels, but not the actual images. I did not check for case sensitivity. All the filenames were lowercase.


Either way, I've converted all 6Gb of tile data to sqlite DBs and playing with it. having some issue with autoload. will make a new thread for it :).
#6
Quote from: gynta on September 14, 2013, 20:08:43
I'm using a 5GB raster map - but splitted in 10 smaller sqlitedb files - into one folder - like a single map. Fast loading - no problems.

How to split a big sqlite map -> http://docs.locusmap.eu/doku.php/community:splitting_sqlitedb

Thanks I'm gonna try a different approach. basically, gonna see the hybrid google earth tiles, which are mostly transparent png unless there is a road/building/landmark. In that case, I will get the deeper zoom levels. otherwise if its just fauna/desert terrain, will keep the higher zoom levels.

Should be able to save up on space. Don't need high resolution images of water.
#7
Quote from: menion on September 14, 2013, 14:56:26
there is no need to give locus directory of bcnav. whole system works completely automatic. if map works in bcnav, it should be visible also in locus without need to do anything. if this do not work, it's bug

about other ideas ... sorry, but I think, there is already quite a lot of formats and I don't see reason why to create any other. Much much better is to use simple SQLite database which is just one file instead of enormous number of files (as separate tiles, or more tiles into one file)

Locus did not pick up bcnav's tiles. I don't recall the folder, but I will edit with the folder path where the tiles are stored for bcnav.


I gave up on SQLite as it got super slow after about 2GB. My tile set is 4GB+.

#8
Quote from: menion on September 13, 2013, 06:31:54
I'll try to think about it later, but just a quick shot ... are your tiles still working with bcnav? if so, you should see them also in Locus as a personal map

I've given Locus, the folder under bcnav and it picked up the zoom levels, but not the tiles. It shows "not exists". I've tried changing the extensions from ".bni" to ".png.tile" & ".jpg.tile"  When it was ".png.tile", it picked up the zoom levels, but not when it was ".jpg.tile"


Just food for thought, why not have the z/x folder structure and just tar/zip up the "y" tiles in each "x" folder.

I suppose the z/x/y format is super fast (its quite native) with the only problem being millions of small tiles.


To give you an idea, on zoom level 17, I have 770 "x" folders. which hold 327,787 files.

If the tiles were tar'ed or zipped (or another index based format like gemf) into one file, we would just have 770 files. On average, each of these archives would hold about 450 tiles. (which isn't a lot). They don't need to be compressed as they are either png or jpgs. So there is no overhead of decompression.
#9
Quote from: jusc on September 12, 2013, 20:53:06
Please can you explain what you really want? I don't understand what kind of maps you are looking for. With Locus you can use a lot of maps, online and offline. Why do you ask for such strange formats, nobody else needs? Why do you not convert your maps to the RMAP format?
A nearly 4GB map is really quick loaded. ^-^

I have tile data that i've been using with bcnav. I was looking to transfer it to Locus, but I haven't been able to do it successfully.

I haven't looked at RMAP as I read that its closed and not completely implemented in Locus.
Its not easy processing & writing 4Gb of tiles into the tablet, so I was looking to see if raw tile data is supported (.png.tile or .jpg.tile)
#10
Quote from: menion on September 12, 2013, 13:43:44
@mapCoder: you write that map tiles are loaded too slow. Locus for all personal maps, use two methods for loading tiles (since latest version)

1. if you have DISABLED map shading, map tiles are loaded immediately, so you should no see any "loading" empty tiles
2. if you ENABLE map shading, locus switch loading to some "lazy loading". Shading takes some time, so you should see this "loading" tiles. That's maybe your case

About missing tiles ... problem that mentioned Bucky Kid, is related only to situation right after zoom. If you're still in one zoom level, there should be no problem. Weird ...

@stebu: why you don't tell me about it immediately? :) I'm testing some GEMF map and no problem. Do you have disabled "map shift"? Also if you select this map from list of maps, you still see incorrect icon in title?

shading/resolution are disabled. I do see the text "loading" which then dissappears.

Also, I noticed that it happens on intermediate zoom levels for which zoom levels do not exist.
#11
So I spent the whole day trying to figure out how to get maps into Locus.

sqlite: I have a large map (4GB) which becomes impractical in the long run. so I discarded after i processed level 16 (zoom level 1).
gmef: Locus seems to have a problem with intermediate tiles not loading. I haven't seen the missing tile at 100% zooms, but say I have level 12 & 16. at level 14, I think locus has problem with loading & then resizing so it skips tiles.
.bni: It kind of reads the zoom levels, but no tiles are shown. (shows: not exists)
.png.tile: reads the zoom level but no tiles are shown. (shows: not exists)


I read somewhere that .bni & .png.tile are not supported, but that post was a while back. I got frustrated and figured I look at the assembly to see if I can find the extensions. The extensions are there, so are these supported? Am I doing something wrong?
#12
Hi,

I've spent a few days and made some offline gemf maps. The problem I'm facing is that in locus, I must scroll very very slowly inorder for the map to load.

I've tried single and multiple zoom levels. files from 2MB to 700MB. the problem is always there. Initially, the map will not show, if I zoom in and out, it starts loading the tiles and if I pan too quickly, it will skip tiles. I will have to move the white area off screen and then pan it back onscreen again very very slowly.

the gemf files are generated with 1 range per zoom level with a lot of empty tiles. however, locus is showing empty areas within regions where tiles exist. Its not the gemf file as it eventually does load the tiles, if i pan around slowly.

A white map icon with a red thunderbolt shows up on the left, when its not able to load tiles. haven't been able to figure out what it means. tapping on it goes to quick map switch.

sometimes, it loads only 1 title. I have to zoom into the tile till its covering the screen and then zoom out. after that, locus starts loading the rest of the tiles.

The images format is jpg.

has anyone else experienced this ?

Does locus support just loading images from z/x/y.jpg folders ?