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