3.保存繪制后的數(shù)據(jù)熬拒,重新進(jìn)入顯示在地圖上

tx3.gif

內(nèi)容需要用到之前封裝的IndexedDB,用IndexedDB來(lái)保存數(shù)據(jù)爷光。
主要內(nèi)容:

  1. 將繪制的圖元保存。

  2. 頁(yè)面加載時(shí)澎粟,將保存的數(shù)據(jù)展示出來(lái)蛀序。

  3. 保存繪制的圖元。
    在原有的offlineDrawEqument方法中增加drawend事件活烙,用于繪制完之后保存feature.

/**
 * 離線(xiàn)繪制設(shè)備
 * @param {String} p_type 繪制的圖元類(lèi)型
 */
var draw;
function offlineDrawEqument(p_type){
    draw = new ol.interaction.Draw({
        source: _vectorSource,
        type: "Point" 
    });
    
    //繪制完后保存起來(lái)
    draw.on('drawend',function(evt){
        var _feature = evt.feature;
        console.log(_feature);
        
        var item = {OID: Uid(), SHAPE: formatWKT(_feature)};
        
        db.add(TX_TABLE, item, function(evt){
            if(event.type == "error") {
                console.log("添加失斝炻恪!")
            } else {                
                console.log("添加成功啸盏!");
            }
        });
        
        console.log(item);
    });
    
    map.addInteraction(draw);
}
  1. 加載保存的數(shù)據(jù)重贺。
    查詢(xún)數(shù)離線(xiàn)數(shù)據(jù),將離線(xiàn)數(shù)據(jù)展示在繪制層上,_vectorSource繪制層的source气笙。
/**
 * 加載離線(xiàn)的圖元
 */
function loadOfflineFeatures(){
    db.query(TX_TABLE,{},function(result){
        console.log(result);
        var _features = [];
        for(var i = 0; i < result.length; i++){
            var item = result[i];
            var feature = readWKT(item['SHAPE']);
            feature.setProperties(item);
            
            _features.push(feature);
        }
        
        _vectorSource.addFeatures(_features);
    });
}

  1. 圖形數(shù)據(jù)是轉(zhuǎn)化為WKT存儲(chǔ)在IndexedDB中的次企。所以 readWKTformatWKT 兩個(gè)工具方法實(shí)現(xiàn)如下:
/**
 * 將feature 轉(zhuǎn)化為WKT
 */
var WKTFORMAT;
function formatWKT(p_feature){
    var feature = p_feature;
    if(!WKTFORMAT) {
        WKTFORMAT = new ol.format.WKT();
    }
    
    return WKTFORMAT.writeFeature(feature);
}

/**
 * 讀取WKT
 * @param {Object} p_wkt
 */
function readWKT(p_wkt){
    if(!WKTFORMAT) {
        WKTFORMAT = new ol.format.WKT();
    }
    return WKTFORMAT.readFeatureFromText(p_wkt);
}
  1. 存儲(chǔ)時(shí)潜圃,必須OID鍵缸棵,且唯一,所以Uid生成唯一ID谭期,實(shí)現(xiàn)如下:
/**
 * 獲取一個(gè)隨機(jī)值
 */
function Uid(){
    return Math.ceil(Math.random() * 100000) + '' +  Date.now();
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末堵第,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子崇堵,更是在濱河造成了極大的恐慌型诚,老刑警劉巖,帶你破解...
    沈念sama閱讀 212,454評(píng)論 6 493
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件鸳劳,死亡現(xiàn)場(chǎng)離奇詭異狰贯,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)赏廓,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,553評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門(mén)涵紊,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人幔摸,你說(shuō)我怎么就攤上這事摸柄。” “怎么了既忆?”我有些...
    開(kāi)封第一講書(shū)人閱讀 157,921評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵驱负,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我患雇,道長(zhǎng)跃脊,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,648評(píng)論 1 284
  • 正文 為了忘掉前任苛吱,我火速辦了婚禮酪术,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘翠储。我一直安慰自己绘雁,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,770評(píng)論 6 386
  • 文/花漫 我一把揭開(kāi)白布援所。 她就那樣靜靜地躺著庐舟,像睡著了一般。 火紅的嫁衣襯著肌膚如雪住拭。 梳的紋絲不亂的頭發(fā)上继阻,一...
    開(kāi)封第一講書(shū)人閱讀 49,950評(píng)論 1 291
  • 那天耻涛,我揣著相機(jī)與錄音,去河邊找鬼瘟檩。 笑死抹缕,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的墨辛。 我是一名探鬼主播卓研,決...
    沈念sama閱讀 39,090評(píng)論 3 410
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼睹簇!你這毒婦竟也來(lái)了奏赘?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,817評(píng)論 0 268
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤太惠,失蹤者是張志新(化名)和其女友劉穎磨淌,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體凿渊,經(jīng)...
    沈念sama閱讀 44,275評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡梁只,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,592評(píng)論 2 327
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了埃脏。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片搪锣。...
    茶點(diǎn)故事閱讀 38,724評(píng)論 1 341
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖彩掐,靈堂內(nèi)的尸體忽然破棺而出构舟,到底是詐尸還是另有隱情,我是刑警寧澤堵幽,帶...
    沈念sama閱讀 34,409評(píng)論 4 333
  • 正文 年R本政府宣布狗超,位于F島的核電站,受9級(jí)特大地震影響朴下,放射性物質(zhì)發(fā)生泄漏努咐。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 40,052評(píng)論 3 316
  • 文/蒙蒙 一桐猬、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧刽肠,春花似錦溃肪、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,815評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至躺涝,卻和暖如春厨钻,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,043評(píng)論 1 266
  • 我被黑心中介騙來(lái)泰國(guó)打工夯膀, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留诗充,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,503評(píng)論 2 361
  • 正文 我出身青樓诱建,卻偏偏與公主長(zhǎng)得像蝴蜓,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子俺猿,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,627評(píng)論 2 350

推薦閱讀更多精彩內(nèi)容