如何使用ArcGIS9.2中的動態顯示(Dynamic Display)技術(五)

來源:互聯網
上載者:User

      ArcGIS9.3對Dynamic Display做了很大的改進,底層顯示方式做了本質的一些改變。其中最大的變化是添加了IDynamicCacheLayerManager 介面,這個介面極大提升了動態圖層顯示時地圖的顯示效果,9.3以前的版本,地圖的縮放都是重複重新整理每個地圖背景,在地圖比較複雜的情況下,幾乎是無法忍受的慢,但是如果採用9.3的新介面,可以在使用之前先用類似Arcgis Server的方法對地圖進行cache工作,而後在IDynamicCacheLayerManager 中使用connect方法指定cache的檔案夾,便能達到理想的效果,其實也可以自己利用該介面直接做cache,那麼在多次瀏覽後,cache的效果使得地圖背景顯示的效果極佳。部分程式碼如下:

       VARIANT_BOOL varCacheable;
        ipLayer->put_Cached(VARIANT_TRUE);
        IDynamicCacheLayerManagerPtr ipDynamicCacheLayerManager(CLSID_DynamicCacheLayerManager);
        hr= ipDynamicCacheLayerManager->Init(m_ipMap,ipLayer);
        hr=ipDynamicCacheLayerManager->get_Cacheable(&varCacheable);
        
        CComBSTR bstrFoldName;
        CComBSTR bstrFoldPath;
         hr= ipDynamicCacheLayerManager->get_FolderPath(&bstrFoldPath);
        hr= ipDynamicCacheLayerManager->get_FolderName(&bstrFoldName);
        hr= ipDynamicCacheLayerManager->Connect(bstrFoldPath,bstrFoldName);
       
        hr= ipDynamicCacheLayerManager->put_ConsolidatedGroupLayer(VARIANT_TRUE);
        hr= ipDynamicCacheLayerManager->put_DetailsThreshold(20);
        hr= ipDynamicCacheLayerManager->Invalidate(NULL,VARIANT_TRUE);
        hr= ipDynamicCacheLayerManager->put_Format(CComBSTR("PNG"));
        
        break;

      目前也可以直接使用ArcGIS Server的地圖服務作為Dynamic Layer顯示背景。

 

何種情況下使用Dynamic Display比較合適

     前期和客戶做過目標顯示的比對測試,如果動態目標個數在一千以上,選擇使用Dynamic Display比較合適。

     如果動態目標數量不多,則建議使用element,主要是程式實現比較簡單。

     擴充性和底層控制,Dynamic Display效果更好,但是仍有缺陷,例如symbol的部分中文支援。

 

       

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.