tag:blogger.com,1999:blog-4636008509164101363.post8680362719984387820..comments2017-11-24T23:56:21.204+08:00Comments on Dr. TYT 的 Android 地圖: BigPlanet SQLite Database Merger 0.1tytunghttp://www.blogger.com/profile/06553050596798264417noreply@blogger.comBlogger32125tag:blogger.com,1999:blog-4636008509164101363.post-28555594029944382602014-05-26T17:03:00.978+08:002014-05-26T17:03:00.978+08:00喔喔,了解了...感恩囉!!
喔喔,了解了...感恩囉!!<br />Anonymoushttps://www.blogger.com/profile/01077033693158725151noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-22228154360495497882014-05-23T14:22:53.199+08:002014-05-23T14:22:53.199+08:00沒有,分割太複雜了,每個 SQLite 資料庫內的地圖範圍、縮放層級都不同,可以說是不可能分割的。沒有,分割太複雜了,每個 SQLite 資料庫內的地圖範圍、縮放層級都不同,可以說是不可能分割的。tytunghttps://www.blogger.com/profile/06553050596798264417noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-92138879898223915242014-05-23T12:52:37.883+08:002014-05-23T12:52:37.883+08:00感謝版主的提供,這個程式真的太好用了...但現在我遇到一個問題了,就是合併完後發現,檔案太大了,請問...感謝版主的提供,這個程式真的太好用了...但現在我遇到一個問題了,就是合併完後發現,檔案太大了,請問版主有分割的程式嗎?謝謝囉!Anonymoushttps://www.blogger.com/profile/01077033693158725151noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-65389179684410945182012-08-25T14:27:45.311+08:002012-08-25T14:27:45.311+08:00謝謝您的測試並分享您找出的解決方法。
當初 BigPlanetSQLiteMerger.jar 是寫...謝謝您的測試並分享您找出的解決方法。<br />當初 BigPlanetSQLiteMerger.jar 是寫給 BigPlanetTracks 用的,而 BigPlanetTracks 使用的 .sqlitedb 不需要 info 資料表內的 minzoom, maxzoom 欄位。<br /><br />換句話說,雖然 BigPlanetTracks 與 RMaps 共用 .sqlitedb,但只有 RMaps 需要 info 資料表,而當時開發 BigPlanetSQLiteMerger 時沒考慮 info 資料表。 (我也忘了 info 資料表何時被加進 RMaps)<br /><br />有空時我會加進 info 相關 SQL 指令,更換 libs 以支援各個作業系統,並釋出 BigPlanetSQLiteMerger 0.2 版。<br />tytunghttps://www.blogger.com/profile/06553050596798264417noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-20184877768136089272012-08-25T03:18:50.909+08:002012-08-25T03:18:50.909+08:00您好
很感謝您寫了這個程式。在製作離線地圖時利用它真是方便太多了。
不過,我碰到以下的問題:
...您好<br /><br />很感謝您寫了這個程式。在製作離線地圖時利用它真是方便太多了。<br /><br />不過,我碰到以下的問題:<br /><br />我分別下載了全世界(zoom level 0-7)和台灣8-14的兩個地圖<br />然後用您的程式合併<br />source是全世界,target是台灣<br />結果在Android的RMaps上看時,一切正常<br />但到了iOS的Galileo一看就不對了,只有target的tiles,看不到source的東西<br />於是我把source和target對調,結果一樣是只看得到target<br /><br />我嘗試用去看sqlite裏面的table,有了有趣的發現:<br />我一共用Mobile Atlas Creator下載了三個檔案(另有花蓮15-18)<br />對每一個檔案都下這兩個sql指令<br />select minzoom, maxzoom from info;<br />select min(z), max(z) from tiles;<br />結果如下表<br /><br />file minzoom maxzoom min(z) max(z)<br />世界(0-7) 10 17 10 17 <br />台灣(8-14) 3 9 3 9<br />花蓮(15-18) -1 2 -1 2<br /><br />顯然info.minzoom要等於tiles.min(z), 而info.maxzoom要等於tiles.max(z)<br />但是minzoom如何對應到實際上的最小zoom level<br />maxzoom如何對應到實際上的最大zoom level<br />這我就看不出來了<br /><br />再開啟您的程式合併後的sqlitedb來看<br />可以發現info中的minzoom, maxzoom都是取target檔合併前的值<br />所以我就大膽把它手動改成minzoom=min(z), maxzoom=max(z)<br />果然在Galileo中也可以正確顯示了wdshiehhttps://www.blogger.com/profile/01103635289023433161noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-90174091796961023712012-08-09T16:05:06.655+08:002012-08-09T16:05:06.655+08:00另一個解決方法就是再安裝一個 x86 的 JRE,然後修改批次檔,指定使用 x86 的 java.e...另一個解決方法就是再安裝一個 x86 的 JRE,然後修改批次檔,指定使用 x86 的 java.exeTomhttps://www.blogger.com/profile/12801472459074932275noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-54635688228751282002012-04-20T00:16:36.706+08:002012-04-20T00:16:36.706+08:00BigPlanetTracks沒上傳至GooglePlayStore,請直接從本站下載。
http:...BigPlanetTracks沒上傳至GooglePlayStore,請直接從本站下載。<br /><a href="http://android-map.blogspot.com/2011/07/big-planet-tracks-21-gps.html" rel="nofollow">http://android-map.blogspot.com/2011/07/big-planet-tracks-21-gps.html</a><br /><br />單檔最大允許容量取決於手機性能。<br />有人測試說2GB是上限,但後來我實際用 HTC HD2 (1GB CPU)測試,3.9GB大的檔案在BigPlanetTracks及RMaps都可順利執行。<br /><br />RMaps首次載入新離線地圖時,需要建立索引會比較耗時。tytunghttps://www.blogger.com/profile/06553050596798264417noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-10579588399896550552012-04-19T16:22:17.610+08:002012-04-19T16:22:17.610+08:00謝謝大大的回覆
我的確是用RMaps開啟時遇到問題。
而我用Samsung Galaxy Note ...謝謝大大的回覆<br />我的確是用RMaps開啟時遇到問題。<br />而我用Samsung Galaxy Note 找 PlayStore<br />找不到 BigPlanetTracks。<br />請問是不是只提供給 iPhone使用者呢?<br />還有請問如果使用RMaps的話,<br />單檔最大允許容量為多少呢?Seiraphhttps://www.blogger.com/profile/09364278559154681480noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-448024266916771562012-04-19T12:34:06.423+08:002012-04-19T12:34:06.423+08:00是否合併後的檔案太大呢?
這個應該是RMaps更新索引(index)出現的錯誤。
您試過BigPla...是否合併後的檔案太大呢?<br />這個應該是RMaps更新索引(index)出現的錯誤。<br />您試過BigPlanetTracks嗎?tytunghttps://www.blogger.com/profile/06553050596798264417noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-49114699215449707822012-04-19T03:45:43.838+08:002012-04-19T03:45:43.838+08:00您好~
merge 的時候完全沒有問題
但是開啟的時候出現: "Error:disk I/...您好~<br />merge 的時候完全沒有問題<br />但是開啟的時候出現: "Error:disk I/O error: CREATE TABLE IF NOT EXISTS into AS SELECT MIN(z) AS minzoom, MAX(z) AS maxzoom FROM tiles"<br />請問該如何解決?Seiraphhttps://www.blogger.com/profile/09364278559154681480noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-38623996099979042582011-06-22T14:21:15.690+08:002011-06-22T14:21:15.690+08:00謝謝您!問題已解決!謝謝您!問題已解決!Mingdaa Lhttps://www.blogger.com/profile/15057413545265796963noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-35568713558524919892011-06-21T13:15:11.558+08:002011-06-21T13:15:11.558+08:00不能有空格,所以加雙引號即可。
"C:\Program Files (x86)\Java\...不能有空格,所以加雙引號即可。<br />"C:\Program Files (x86)\Java\jre6\bin\java"tytunghttps://www.blogger.com/profile/06553050596798264417noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-75474493539927919002011-06-20T20:59:57.222+08:002011-06-20T20:59:57.222+08:00您好,我用第二種方法,start.bat裡最後一行改成C:\Program Files (x86)\...您好,我用第二種方法,start.bat裡最後一行改成C:\Program Files (x86)\Java\jre6\bin\java -Xms64M -Xmx512M -Djava.library.path=lib -jar BigPlanetSQLiteMerger.jar %SOURCE% %TARGET% pause。但是出現跟之前類似的文字:「'C:program'不是內部或外部命令、可執行的程式或批次檔,請按任意鍵繼續」。請問,這需要怎麼解決呢?感謝!Mingdaa Lhttps://www.blogger.com/profile/15057413545265796963noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-41467601991932591862011-06-20T14:06:41.482+08:002011-06-20T14:06:41.482+08:00Hi, Mingdaa L,
解決方法有二,擇一即可:一是設定環境變數,二是修改start.bat...Hi, Mingdaa L,<br /><br />解決方法有二,擇一即可:一是設定環境變數,二是修改start.bat填入完整java路徑。<br /><br />1.設定環境變數。<br />http://www.wretch.cc/blog/RYOUKA/12177229<br />只要在Path"新增"你的Java安裝路徑即可。<br />PS:千萬不要刪除Path裡原有字串,否則會造成無法開機。<br /><br />2.用記事本開啟start.bat,在java前面補上你的Java安裝路徑,例如C:\Program Files\Java\jdk1.6.0_26\bin\javatytunghttps://www.blogger.com/profile/06553050596798264417noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-70819078948813581822011-06-19T23:01:34.398+08:002011-06-19T23:01:34.398+08:00您好,我下載地圖沒問題,但合併地圖時卻沒反應。我用win7(x64),也換過64 位元用的 sqli...您好,我下載地圖沒問題,但合併地圖時卻沒反應。我用win7(x64),也換過64 位元用的 sqlite_jni.dll,但按start.bat後,視窗顯示「java不是內部或外部命令、可執行的程式或批次檔,請按任意鍵繼續」。按了鍵之後視窗就結束了。請問,這需要怎麼解決呢?Mingdaa Lhttps://www.blogger.com/profile/15057413545265796963noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-14366912825525161922011-05-08T17:56:41.720+08:002011-05-08T17:56:41.720+08:00只要你沒刪除 tilestore\db-Google Maps 目錄,半年前下載的地圖會存一份(假設...只要你沒刪除 tilestore\db-Google Maps 目錄,半年前下載的地圖會存一份(假設500MB)在 db-Google Maps 目錄。<br /><br />你最近下載的蘆洲線會合併儲存至 db-Google Maps 目錄內(假設變510MB)<br /><br />你現在要做的就是移除 \atlases\BigPlanet_maps.sqlitedb 檔案。<br />重新選好範圍,點 Create atlas,這時候 MOBAC 會產生新的 BigPlanet_maps.sqlitedb,並直接從 db-Google Maps 目錄(510MB)轉存地圖至 BigPlanet_maps.sqlitedbtytunghttps://www.blogger.com/profile/06553050596798264417noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-52321318445267547982011-05-08T15:08:10.594+08:002011-05-08T15:08:10.594+08:00tytung您好,我看了您寫的運作原理,但可能我還是不太懂。您說「所以只需要重新產生包含蘆洲線的新s...tytung您好,我看了您寫的運作原理,但可能我還是不太懂。您說「所以只需要重新產生包含蘆洲線的新sqlitedb,不需要再次下載蘆洲線」,然後我要怎麼辦呢?我目前的情況是半年前我已經下載好台北的地圖,也把sqlitedb放到手機裡了,運作一切正常。現在我為了把之前沒在地圖出現的蘆洲線放到地圖上,所以我圈選了台北蘆洲線的區域, 然後我把舊的sqlitedb檔名更名成新的,以讓新增的部分可以直接從舊的sqlitedb中新增,以免重複下載。結果sqlitedb容量的確比之前多了(我假設它有新增地圖進去了),但把這個sqlitedb放進手機後,卻還是沒有蘆洲線。我不知道我哪個步驟做錯了?煩請指教,謝謝!Mingdaa Lhttps://www.blogger.com/profile/15057413545265796963noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-9839028025998994102011-05-07T13:53:45.015+08:002011-05-07T13:53:45.015+08:00sqlitedb地圖資料庫沒有紀錄時間,同一塊地圖圖檔,程式無法判別新舊,故還是要重新產生sqlit...sqlitedb地圖資料庫沒有紀錄時間,同一塊地圖圖檔,程式無法判別新舊,故還是要重新產生sqlitedb<br /><br />你下載過的捷運蘆洲線新地圖,則會暫存在 Mobile Atlas Creator 的tilestore\db-Google Maps 目錄,所以只需要重新產生包含蘆洲線的新sqlitedb,不需要再次下載蘆洲線。<br /><br />Mobile Atlas Creator 運作原理可參考 http://android-map.blogspot.com/2010/02/mobile-atlas-creator-17.htmltytunghttps://www.blogger.com/profile/06553050596798264417noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-88303196375597568012011-05-06T15:55:47.307+08:002011-05-06T15:55:47.307+08:00您好,請問合併時如果重複的圖檔中其實是不同、有更新過的地圖,這樣是否不會更新為最新的圖檔。舉例來說,...您好,請問合併時如果重複的圖檔中其實是不同、有更新過的地圖,這樣是否不會更新為最新的圖檔。舉例來說,googlemap之前沒有蘆洲線的捷運,最近才把蘆洲線放上去了,請問我該怎麼更新地圖呢?是要全部重新下載,還是有其他替換的方法?我今天試了下載新的地圖,並讓sqlitedb檔名跟之前的檔名一樣(據說這樣可以只下載新的範圍),但是檔案放入手機後,還是地圖上沒有蘆洲線耶。不知道您是否知道原因?謝謝!Mingdaa Lhttps://www.blogger.com/profile/15057413545265796963noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-45895471677474309632011-02-23T15:08:39.196+08:002011-02-23T15:08:39.196+08:00Hi, 阿怪,
使用 MOBAC 是只有一個 sqlitedb 檔,透過 MOBAC 新增地圖圖檔...Hi, 阿怪,<br /><br />使用 MOBAC 是只有一個 sqlitedb 檔,透過 MOBAC 新增地圖圖檔進去。<br /><br />這裡的 BigPlanetSQLiteMerger 是將兩個 sqlitedb 檔案合併,因此可以分別在不同電腦下載後再合併,不需要用到 MOBAC.<br /><br />OutOfMemoryError 表示記憶體不足,文章內已解釋過如何處理了。tytunghttps://www.blogger.com/profile/06553050596798264417noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-31512399861538076912011-02-23T01:23:15.862+08:002011-02-23T01:23:15.862+08:00另外,我執行這個start.bat後,出現了
Exception in thread "m...另外,我執行這個start.bat後,出現了<br />Exception in thread "main" java.lang.OutOfMemoryError: java heap space<br />at SQLite.Vm.step(Native Method)<br />at SQLite.Database.get_table(Database.java:367)<br />at SQLite.JDBC2x.JDBCStatement.executeQuery(JDBCStatement.java:102)<br />at SQLite.JDBC2x.JDBPreparedStatement.executeQuery(JDBCPreparedStatement.java:115)<br />at tyt.sqlite.BigPlanetSQLiteMerger.a(Unknown Source)<br />at tyt.sqlite.BigPlanetSQLiteMerger.main(Unknown Source)<br /><br />請問我該怎麼處理呢?<br />感謝您的解答!再次感謝!阿怪https://www.blogger.com/profile/15236837504997958081noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-47193587059051115052011-02-23T01:17:31.890+08:002011-02-23T01:17:31.890+08:00您好, 我想請問這個方式跟您之前在『新版離線地圖製作軟體 Mobile Atlas Creator ...您好, 我想請問這個方式跟您之前在『新版離線地圖製作軟體 Mobile Atlas Creator 1.7 <br />』中所說的"2. 假設義大利離線地圖資料庫檔名為 Google.Maps.Italy.sqlitedb,請改名為 BigPlanet_maps.sqlitedb 並移回 \atlases\ 目錄裡,再次圈選 0-7 的世界地圖並執行 Create atlas,世界地圖就會合併至 BigPlanet_maps.sqlitedb,需要的話再改名回 Google.Maps.Italy.sqlitedb,這份資料庫就包含義大利與世界地圖了。"這兩種方式。<br />有何不同?阿怪https://www.blogger.com/profile/15236837504997958081noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-74924620305105863032010-12-21T14:19:14.777+08:002010-12-21T14:19:14.777+08:00Hi, 世啟,
你下載的地圖範圍一定不夠大。
加上沒有開啟GPS,手機不知道你的位置,所以不可能移...Hi, 世啟,<br /><br />你下載的地圖範圍一定不夠大。<br />加上沒有開啟GPS,手機不知道你的位置,所以不可能移動地圖到你所在位置。<br />請下載世界地圖0~7,然後手動移動到你所在位置,再放大地圖。 <br /><br />註:這篇標題是 BigPlanet SQLite Database Merger 0.1,跟離線地圖程式無關,下次請到正確的文章下發問,謝謝。tytunghttps://www.blogger.com/profile/06553050596798264417noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-28264438300055788652010-12-20T19:46:08.216+08:002010-12-20T19:46:08.216+08:00感謝作者的辛勞為大家寫了好用的離線程式
想請問一下,我在室內不開啟GPS的環境下居然看不到地圖
一定...感謝作者的辛勞為大家寫了好用的離線程式<br />想請問一下,我在室內不開啟GPS的環境下居然看不到地圖<br />一定要使用GPS定位才看的到地圖嗎?已有自製Google maps<br />並copy進去了Setvenhttps://www.blogger.com/profile/04477838199943774460noreply@blogger.comtag:blogger.com,1999:blog-4636008509164101363.post-32729647754362130262010-09-29T00:12:15.552+08:002010-09-29T00:12:15.552+08:00SD 卡為 FAT32 檔案格式,而這種檔案格式單一檔案最大只能 4GB
至於 RMaps 能讀取多...SD 卡為 FAT32 檔案格式,而這種檔案格式單一檔案最大只能 4GB<br />至於 RMaps 能讀取多大的檔案,我想是取決於每隻手機的效能吧!tytunghttps://www.blogger.com/profile/06553050596798264417noreply@blogger.com