<dfn id="w48us"></dfn><ul id="w48us"></ul>
  • <ul id="w48us"></ul>
  • <del id="w48us"></del>
    <ul id="w48us"></ul>
  • 基于MapX的多字段專題餅圖的設計

    時間:2024-07-22 17:53:34 計算機畢業(yè)論文 我要投稿
    • 相關(guān)推薦

    基于MapX的多字段專題餅圖的設計

    摘要:本文以小靈通路測系統(tǒng)中同步與漂移測試數(shù)據(jù)為例,提出如何在VC 開發(fā)環(huán)境中利用MapX創(chuàng)建多字段的專題餅圖,特別是如何利用安全數(shù)組進行數(shù)據(jù)綁定創(chuàng)建多字段的專題餅圖。

    關(guān)鍵字:MapX 安全數(shù)組 專題地圖

    引言
    組件式軟件技術(shù)已經(jīng)成為當今軟件技術(shù)的潮流之一,組件式GIS技術(shù)將給整個GIS技術(shù)體系和應用模式帶來巨大的影響。MapX 是MapInfo 公司提供的具有強大地圖分析功能的 ActiveX控件,支持大多數(shù)標準的可視化開發(fā)環(huán)境并且可以脫離MapInfo的軟件平臺運行。利用MapX,能夠簡單快速地在企業(yè)應用中嵌入地圖功能,增強應用的空間分析能力。
    在MapX中,專題地圖是用來分析和表現(xiàn)數(shù)據(jù)的一種強有力的方式。利用專題地圖,可根據(jù)表中特定的值來賦予地圖對象顏色、圖案和符號,從而把各種數(shù)據(jù)圖形化,很直觀地顯示在地圖上,為用戶的決策支持提供依據(jù)。專題地圖數(shù)據(jù)通常在創(chuàng)建地圖時所基于的表中或在ODBC支持的外部數(shù)據(jù)源中,也可以在COM數(shù)據(jù)集安全數(shù)組中。在小靈通信號的測試分析系統(tǒng)中,地圖格式支持柵格圖與矢量地圖,為提高效率、滿足實時性的要求,相關(guān)待處理數(shù)據(jù)存放在安全數(shù)組中,創(chuàng)建專題地圖時利用安全數(shù)組進行數(shù)據(jù)綁定。
    1 安全數(shù)組(SAFEARRAY)
    MapX既是一個自動化對象,也是一個標準的COM對象,它支持結(jié)構(gòu)化存儲技術(shù)、自動化技術(shù)等。自動化繼承了COM的語言無關(guān)性、進程透明性等優(yōu)點,也簡化了COM的一些底層細節(jié)。但自動化技術(shù)有一組專用于自動化的數(shù)據(jù)類型,SAFEARRAY便是Automation中的標準數(shù)組存儲方式。SAFEARRAY類型實際是一個結(jié)構(gòu)類型,但它可用于描述各種數(shù)組,指定了數(shù)組每一維的邊界信息。安全數(shù)組類型的使用主要是要定義一個安全數(shù)組及維數(shù)與維的邊界。COM提供了一套API用于處理SAFEARRAY。為了保證程序和SAFEARRAY結(jié)構(gòu)無關(guān),程序中建立、讀取、更改和釋放SAFEARRAY都應該通過這些API進行,而不應該直接讀寫SAFEARRAY結(jié)構(gòu)。其方法如下:
    ⑴ 定義安全數(shù)組
    ColeSafeArray theData;//或SAFEARRAY theData,用SAFEARRAYBOUND來設定維中的元素的個數(shù)及維的下界。
    ⑵ 設定維中元素的個數(shù)
    unsigned long dims[2]={row,col};//row是行數(shù),col為列數(shù)。
    ⑶ 創(chuàng)建安全數(shù)組
    theData.Create(VT_VARIANT,2,dims);//創(chuàng)建一個二維的存放任意類型的安全數(shù)組,邊界值為dims。
    ⑷ 定義安全數(shù)組元素索引
    long index[2];//index[0]為行標,index[1]為列標。
    ⑸ 數(shù)據(jù)的存放
    theData.putElement(index,ColeVariant(data));//把data放入安全數(shù)組中index 單元內(nèi)。
    2 數(shù)據(jù)綁定
    數(shù)據(jù)綁定是將數(shù)據(jù)源中的數(shù)據(jù)導入MapX 的過程。為了增強GIS系統(tǒng)數(shù)據(jù)處理的靈活性,系統(tǒng)分開存儲涉及的圖形矢量數(shù)據(jù)及空間屬性數(shù)據(jù)。MapX通過數(shù)據(jù)集集合(Datasets)對象,可以將用戶的屬性數(shù)據(jù)與地圖的空間數(shù)據(jù)連接起來,屬性數(shù)據(jù)與幾何數(shù)據(jù)的關(guān)聯(lián)是通過數(shù)據(jù)綁定實現(xiàn)的。數(shù)據(jù)綁定的數(shù)據(jù)源可以是ODBC數(shù)據(jù)源、MapInfo Table文件、安全數(shù)組等。要綁字一個數(shù)據(jù)源,首先要指定所綁定的圖層,然后需要指定與圖層中地圖對象相匹配的關(guān)鍵字段。數(shù)據(jù)綁定主要有兩個作用:以地圖中的圖形對象來顯示數(shù)據(jù)及將屬性數(shù)據(jù)綁定到地圖中,并創(chuàng)建專題圖。數(shù)據(jù)綁定的實現(xiàn)是通過Datasets.Add方法實現(xiàn)的。
    ⑴ DataSets.add方法原型如下:
    Datasets.Add ( Type, SourceData, [Name], [Geofield], [SecondaryGeofield], [BindLayer], [Fields], [Dynamic])//詳解參見相關(guān)資料
    ⑵ 創(chuàng)建BindLayer
    當綁定時數(shù)據(jù)包含經(jīng)度和緯度,且要在新的圖層相應的位置上創(chuàng)建這些點,需使用BindLayer 對象。通過數(shù)據(jù)綁定,可以將BindLayer對象作為一個參數(shù),使用Datasets.Add方法將自己的數(shù)據(jù)轉(zhuǎn)變?yōu)橐粋DataSet。
    CMapXBindLayer BindLayer;
    BindLayer.CreateDispatch(BindLayer.GetClsid());
    BindLayer.SetLayerName("Customers");
    BindLayer.SetLayerType(miBindLayerTypeXY);//類型
    BindLayer.SetRefColumn1("X");//經(jīng)度
    BindLayer.SetRefColumn2("Y");//緯度
    ⑶ 用Fields 集合
    在MapX中有Field對象和Fields對象。在數(shù)據(jù)綁定時,MapX 對綁定的每個數(shù)據(jù)列均需要開銷,通過Field對象和Fields對象只綁定地圖中需要的數(shù)據(jù)。使用Datasets.Add 的Fields 參數(shù)建立要綁定到地圖上的字段。字段集合對象的Add方法的原型如下:
    [Field=]OBJECT.Add (DataSourceCol, [Name], [AggregateFunction], [Type]) // DataSourceCol取值為數(shù)據(jù)源中字段名或索引值,在本文中數(shù)據(jù)源為安全數(shù)組,其取值為索引值(COleVariant(1l)或COleVariant(2l)),詳解參見相關(guān)資料。
    ⑷ 據(jù)綁定
    使用Datasets.Add可以將用戶數(shù)據(jù)綁定到地圖中。
    3 專題地圖
    主題地圖繪制是用于分析和可視化數(shù)據(jù)的一種強大方法。為數(shù)據(jù)提供圖形格式,以便可以在地圖上查看數(shù)據(jù)。制作專題地圖是根據(jù)某個特定專題對地圖進行“渲染”的過程。所謂的專題渲染,就是以某種圖案或顏色填充來表明地圖對象(點、線、區(qū)域)的某些信息(例如信號的同步狀態(tài)、人口等等),也就是說,這類渲染存在著主題,經(jīng)過這樣渲染的地圖就是專題地圖。在小靈通信號的測試中,需要獲取分析信號的多組數(shù)據(jù)與狀態(tài),本文以同步與漂移狀態(tài)為例。通過使用餅狀圖的主題地圖繪制,可以每行同時檢查多個變量,可以顯示每個統(tǒng)計組的統(tǒng)計數(shù)據(jù),并查看其在每個餅狀圖中所占的比例。在創(chuàng)建專題圖的過程中,有幾個關(guān)鍵因素,包括專題圖變量的確定、屬性數(shù)據(jù)的獲取以及專題地圖的顯示與控制。

    【基于MapX的多字段專題餅圖的設計】相關(guān)文章:

    基于MapX的城市GIS的初步建立03-07

    基于VxWorks的多DSP系統(tǒng)的多任務程序設計03-18

    基于云安全的主動防御系統(tǒng)多引擎檢測設計06-06

    基于多傳感器的智能晾衣架設計12-09

    基于MapObjects控件的鷹眼圖實現(xiàn)方法03-07

    基于CPLD的三相多波形函數(shù)發(fā)生器設計03-19

    基于Z85C30的多協(xié)議串行通信設計03-20

    基于軟件多代理的時間的建摸03-08

    基于概念圖的教學設計以《計算機文化基礎》課程為例論文11-13

    主站蜘蛛池模板: 亚洲午夜精品一区二区| 亚洲精品国产自在久久| 久久夜色撩人精品国产| 华人亚洲欧美精品国产| 日韩精品无码一区二区三区| 精品人妻少妇一区二区三区不卡| 精品福利视频一区二区三区| 久久人人超碰精品CAOPOREN| 99免费精品国产| 91精品在线看| 久久精品中文闷骚内射| 亚洲精品97久久中文字幕无码| 国产三级精品三级| 久久国产成人精品麻豆| 精品人无码一区二区三区| 中文国产成人精品久久亚洲精品AⅤ无码精品 | 99在线精品视频| 亚洲av永久无码精品古装片 | 国产成人亚洲精品影院| 国产成人精品免费视| 精品成在人线AV无码免费看| 亚洲精品自在在线观看| 欧美日韩精品一区二区三区不卡 | 99久久综合国产精品二区| 国产精品久久久久影院嫩草 | 国产精品污WWW一区二区三区 | 久久夜色精品国产亚洲av| 国产午夜亚洲精品国产成人小说| 青草青草久热精品视频在线网站| 91老司机深夜福利精品视频在线观看 | 国产成人高清精品一区二区三区| 欧美精品1区2区| 久久伊人精品青青草原高清| 久久线看观看精品香蕉国产| 国产99视频精品一区| 8AV国产精品爽爽ⅴa在线观看| 国产国拍亚洲精品mv在线观看| 日韩精品无码AV成人观看| 色一乱一伦一图一区二区精品| 亚洲AV成人无码久久精品老人| 熟妇无码乱子成人精品|