準(zhǔn)備放棄以前項目使用的地圖引擎庫和Gis代碼到現(xiàn)在已經(jīng)有了2個月了
現(xiàn)在swMap能做基本demo一丁點的功能了,訪問:
www.sw2us.com/maps.php 或者
http://220.196.42.107/main.php當(dāng)初考慮到放棄之前的東西考慮的問題有很多,當(dāng)然有公司的知識產(chǎn)權(quán)問題,最主要的是之前的產(chǎn)品技術(shù)實在是設(shè)計的有點糟糕。做開發(fā)的知道看別人的代碼并且在這基礎(chǔ)上去發(fā)揚光大這時間很頭大和痛苦的事情,特別是碰到那些原本就是比較封閉和差勁的東西。
憑借自己的的很多想法開始開發(fā)swMap項目,以前的東西都拋棄沒有做參考,從原始地圖加工設(shè)計、地圖渲染服務(wù)器開發(fā)、然后就是基于Pc和Wince的客戶端開發(fā),支持本地和遠(yuǎn)程加載地圖的方式,重新設(shè)計的數(shù)據(jù)存儲方式除了保留簡單的網(wǎng)格存儲和搜尋,已經(jīng)把地圖數(shù)據(jù)進(jìn)行省份的分割,而不像以前必須加載單獨的一個全國地圖數(shù)據(jù)包;地圖網(wǎng)格也設(shè)計成了多網(wǎng)格大小形式,以便支持同一個地圖文件中任意多的縮放比和地圖層。
開發(fā)總是很辛苦,每天都是要做到夜深人靜
學(xué)習(xí)了很多東西,思考了很多東西,反復(fù)的也有很多,最終還是憑借自己比較寬的知識面,運用了很多opensource的技術(shù),時間和效率當(dāng)然是非常重要的,所以沒有自己去重新實現(xiàn)一些基礎(chǔ)的東西,比如matrix就是從cairo庫中直接抄過來的。
在用c++開發(fā)地圖服務(wù)器和客戶端時候也考慮了不同的通信方式和操作系統(tǒng)環(huán)境,盡可能的可以支持更多的運行環(huán)境。
原本計劃在昨晚wince版本之后馬上支持symbian操作系統(tǒng),但對symbian的開發(fā)研究了之后讓我大失所望,其開發(fā)是非常低效的且通用性能太差,后來網(wǎng)上得知nokia馬上將拋棄symbian而懷抱linux了,這令我我馬上考慮了移植linux的想法
很多人跟我提到靜態(tài)網(wǎng)頁地圖方式,當(dāng)然我不能做到像google,openlayers這么強(qiáng)的客戶端端,也沒精力去支持ogc那么的gis協(xié)議在地圖服務(wù)器上,所以能演示基礎(chǔ)的地圖功能開發(fā)了php的展示端。
flex和sliverlight都是非常好的技術(shù),但對于ms一直沒有好感,所以flex形成了我選擇另一個展示客戶端的想法。
網(wǎng)上下了一堆的flex數(shù)據(jù),前后從接觸actionscript到做好swFlex客戶端一共花了3天時間,發(fā)覺越來越喜歡這個東西了,看來以后的前端開發(fā)要全換成flex平臺了。
目前做得swMap的功能非常有限,地圖處理也是很簡單,甚至連文本標(biāo)注都沒有添加,只是提供了25個圖層16級別縮放比在客戶端展示。
我想待我有時間,我將這些都會完善起來
原本很多帶開發(fā)的技術(shù)也沒有去做,比如agg,地圖4叉樹、RTree,A*路由算法
朋友給我的幾個Gps模塊設(shè)備這幾天要調(diào)通并放置到地圖上去