国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法

      文檔序號(hào):6625314閱讀:327來源:國知局
      水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法
      【專利摘要】本發(fā)明公開一種水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法,包括以下步驟:對(duì)全局中各類要素的位置信息統(tǒng)一編碼,建立惟一索引;構(gòu)建四種功能類:主圖形類、數(shù)據(jù)項(xiàng)管理類、圖形繪制類、子圖形類;設(shè)計(jì)可定制式成果輸出配置界面及全局結(jié)果間隔參數(shù)配置界面;根據(jù)定制需求,配置主圖形-子圖形-數(shù)據(jù)項(xiàng)從屬關(guān)系,設(shè)置全局間隔參數(shù);運(yùn)行計(jì)算模塊,軟件界面中實(shí)時(shí)更新顯示定制數(shù)據(jù)。本發(fā)明能夠控制全局結(jié)果的存儲(chǔ)空間,精確化定制輸出方案特定需求成果,成果圖形動(dòng)態(tài)顯示輸出,提高了水利行業(yè)查看輸出成果的綜合效率。
      【專利說明】水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法

      【技術(shù)領(lǐng)域】
      [0001]本發(fā)明涉及水利和計(jì)算機(jī)領(lǐng)域,具體涉及一種水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法。

      【背景技術(shù)】
      [0002]水利技術(shù)的發(fā)展是世界各國長期規(guī)劃中一項(xiàng)舉足輕重的內(nèi)容,對(duì)人類的生活方式和社會(huì)經(jīng)濟(jì)的發(fā)展都有著深遠(yuǎn)影響。近三十年來,水利科學(xué)結(jié)合計(jì)算機(jī)軟件技術(shù)所催生的眾多水利軟件在解決防洪減災(zāi)、水資源開發(fā)利用和生態(tài)環(huán)境保護(hù)等問題中都起到了重要作用。由于水利軟件中研究區(qū)域、模型要素信息等內(nèi)容的高度復(fù)雜性,成果的輸出規(guī)模常是海量的,如何合理高效的輸出不同方案的需求成果并實(shí)現(xiàn)實(shí)時(shí)分析處理功能,是軟件開發(fā)技術(shù)結(jié)合水利行業(yè)特色的一項(xiàng)重要技術(shù)性命題,同時(shí)也關(guān)系著軟件在實(shí)際應(yīng)用中的業(yè)內(nèi)認(rèn)可度和競爭力。在現(xiàn)有成熟的水利軟件中,方案計(jì)算成果輸出主要采取兩種設(shè)計(jì)模式:一是全局輸出式,即自動(dòng)分類生成多個(gè)輸出文件,存放所有要素結(jié)果,有時(shí)考慮到結(jié)果數(shù)據(jù)大小,常需設(shè)置一定的存儲(chǔ)間隔,如ArcSWAT軟件(見《ArcSWAT2009用戶指南》中Page238內(nèi)容);二是按需提取式,即提前選取方案分析中所需的要素輸出,并設(shè)置與之相對(duì)應(yīng)的結(jié)果輸出文件,有時(shí)考慮到結(jié)果數(shù)據(jù)大小,常需設(shè)置一定的存儲(chǔ)間隔,如DHI的MIKE系列軟件(見DHI系列軟件界面操作說明)。軟件中都會(huì)配備相應(yīng)的后處理程序,在輸入相應(yīng)輸出文件后按需進(jìn)行統(tǒng)計(jì)及成果展示。
      [0003]很顯然,兩種設(shè)計(jì)都存在一些不足:全局輸出式使用固定格式輸出所有要素結(jié)果,必然導(dǎo)致許多與方案無關(guān)的結(jié)果被等同輸出,增加了數(shù)據(jù)存儲(chǔ)量,造成存儲(chǔ)資源的浪費(fèi);按需提取式中的每項(xiàng)成果輸出都需逐個(gè)設(shè)置對(duì)應(yīng)保存文件,步驟繁瑣,管理不便,且該輸出模式僅存儲(chǔ)個(gè)別要素?cái)?shù)據(jù),對(duì)于其余要素沒有考慮,這不利于方案結(jié)果出現(xiàn)問題時(shí)進(jìn)行全局?jǐn)?shù)據(jù)查錯(cuò),制約了軟件的查錯(cuò)性能和操作的靈活度。此外,采用上述兩種輸出模式的水利軟件都需要將輸出的文件導(dǎo)入配套的后處理程序后再進(jìn)行操作,成果計(jì)算模塊與后處理模塊間的數(shù)據(jù)傳遞呈現(xiàn)出松散耦合的狀態(tài),無法在計(jì)算過程中動(dòng)態(tài)顯示輸出的成果。


      【發(fā)明內(nèi)容】

      [0004]發(fā)明目的:本發(fā)明的目的在于解決現(xiàn)有技術(shù)在中存在的不足,提供一種水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法。
      [0005]本發(fā)明公開了一種水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法,包括如下步驟:
      (1)對(duì)全局中各類要素的位置信息統(tǒng)一編碼,建立惟一索引;
      (2)構(gòu)建四種功能類:主圖形類、數(shù)據(jù)項(xiàng)管理類、圖形繪制類、子圖形類;
      (3)設(shè)計(jì)可定制式成果輸出配置界面及全局結(jié)果間隔參數(shù)配置界面;
      (4)根據(jù)定制需求,配置主圖形-子圖形-數(shù)據(jù)項(xiàng)從屬關(guān)系,設(shè)置全局間隔參數(shù);
      (5 )運(yùn)行計(jì)算模塊,軟件界面中實(shí)時(shí)更新顯示定制數(shù)據(jù)。
      [0006]進(jìn)一步的,所述步驟(I)中的全局各類要素存放于水利軟件中的全局要素庫中,其中又分為存放模型計(jì)算要素的模型要素庫和存放實(shí)測站網(wǎng)要素的資料站網(wǎng)庫。模型計(jì)算要素主要應(yīng)用于計(jì)算模塊中,實(shí)測站網(wǎng)要素主要應(yīng)用于管理初始條件、邊界條件等信息輸入的模塊中,同時(shí)也作為驗(yàn)證資料在后處理模塊中顯示輸出。
      [0007]并且在對(duì)全局中各類要素的位置信息統(tǒng)一編碼時(shí),采用AddressItem的結(jié)構(gòu)體形式來標(biāo)記并保存任一要素的唯一索引,進(jìn)而精準(zhǔn)化定位各類要素的位置。
      [0008]進(jìn)一步的,所述步驟(I)的具體方法為:以AddressItem的結(jié)構(gòu)體形式標(biāo)記和存儲(chǔ)位置信息,使用m_ID為主鍵來標(biāo)記模型中或?qū)崪y站網(wǎng)中的一個(gè)主對(duì)象,而m_ItemID是附屬于m_ID的子項(xiàng),進(jìn)行細(xì)化的定位標(biāo)記,若要素只需主鍵就已完成細(xì)化定位,則將設(shè)為空值。
      [0009]進(jìn)一步的,所述步驟(2)中的每個(gè)類結(jié)構(gòu)由成員函數(shù)及非函數(shù)成員(如數(shù)據(jù)變量,數(shù)組,指針等)組成;所述的四種功能類均可生成不同的功能對(duì)象,各對(duì)象與圖形顯示對(duì)象間有著對(duì)應(yīng)關(guān)系,各功能類之間通過成員函數(shù)、數(shù)組成員等相互聯(lián)系;
      所述主圖形類統(tǒng)籌管理其余三個(gè)類所生成的對(duì)象,主圖形類中開設(shè)有其余三種類對(duì)象的數(shù)組,用以存放并管理,即所有對(duì)象的數(shù)據(jù)空間都在主圖形類中存放,另外,主圖形類中還通過操作函數(shù)分別生成數(shù)據(jù)項(xiàng)及子圖形;
      所述數(shù)據(jù)項(xiàng)管理類可定制和存放數(shù)據(jù),該類中的AddressItem結(jié)構(gòu)體存放數(shù)據(jù)項(xiàng)所對(duì)應(yīng)的輸出要素的位置信息,m_Type是輸出要素的數(shù)據(jù)類型,m_Name是數(shù)據(jù)項(xiàng)的名稱,m_XY則用以存放計(jì)算過程中輸出要素的數(shù)據(jù),非函數(shù)成員中還包括有用于確定數(shù)據(jù)項(xiàng)同其他類對(duì)象間關(guān)聯(lián)對(duì)應(yīng)關(guān)系的圖形繪制類指針及子圖形類指針;CreateFeatureO函數(shù)可創(chuàng)建與數(shù)據(jù)項(xiàng)關(guān)聯(lián)對(duì)應(yīng)的繪圖項(xiàng),AddDataO函數(shù)則用于引入計(jì)算中得到的數(shù)據(jù);
      所述圖形繪制類可繪制圖形,包含有數(shù)組m_XY及數(shù)據(jù)類型m_Type,其成員函數(shù)中的GetDataO接收由數(shù)據(jù)項(xiàng)而來的數(shù)據(jù),Draw O則利用獲得的數(shù)據(jù)進(jìn)行圖形的繪制;
      所述子圖形類可分類管理圖形的輸出,即保證同一類型(m_Type)的數(shù)據(jù)要素按序輸出顯示,其中的FeatureArray數(shù)組管理著子圖形中需繪圖顯示的繪圖項(xiàng)的順序,但此數(shù)組僅負(fù)責(zé)操作管理,并不存放真實(shí)的數(shù)據(jù)空間;而子圖形類中的成員函數(shù)包括了將繪圖項(xiàng)引入FeatureArray數(shù)組的AddFeature O函數(shù)以及管理各繪圖項(xiàng)按序繪圖的Draw O函數(shù)。
      [0010]進(jìn)一步的,所述主圖形類、數(shù)據(jù)項(xiàng)管理類、圖形繪制類和子圖形類對(duì)應(yīng)生成的對(duì)象為主圖形、數(shù)據(jù)項(xiàng)、繪圖項(xiàng)和子圖形;
      N個(gè)主圖形可組成一個(gè)主圖形組,每一個(gè)主圖形對(duì)應(yīng)一個(gè)圖形顯示界面,圖形顯示界面中可存放多個(gè)子圖形所對(duì)應(yīng)的XY坐標(biāo)軸圖,每個(gè)XY坐標(biāo)軸圖中又可顯示多條相同數(shù)據(jù)類型的過程線,每條過程線是數(shù)據(jù)項(xiàng)與繪圖項(xiàng)關(guān)聯(lián)作用的結(jié)果,數(shù)據(jù)項(xiàng)提供并存儲(chǔ)數(shù)據(jù),繪圖項(xiàng)將數(shù)據(jù)繪制顯示;同理延伸,每一條數(shù)據(jù)線中的單點(diǎn)數(shù)值對(duì)應(yīng)著該輸出要素在時(shí)間循環(huán)中每步長輸出的數(shù)據(jù)。
      [0011]進(jìn)一步的,所述步驟(3)中的成果輸出配置界面中的各選項(xiàng)與主圖形類、數(shù)據(jù)項(xiàng)管理類、圖形繪制類和子圖形類所生成的對(duì)象及各類中的成員相對(duì)應(yīng),并且配置結(jié)束后利用命令式按鈕將界面信息綁定存儲(chǔ);
      所述全局結(jié)果間隔參數(shù)配置界面中設(shè)有間隔參數(shù)選項(xiàng)。
      [0012]進(jìn)一步的,所述成果輸出配置界面包括以下三個(gè)部分:主圖形、子圖形創(chuàng)建項(xiàng);全局要素類型選擇項(xiàng);數(shù)據(jù)項(xiàng)生成項(xiàng);
      其中,第一部分可創(chuàng)建主圖形、子圖形對(duì)象,且設(shè)有下拉列表和列表框查看相應(yīng)的從屬關(guān)系;第二部分可在模型計(jì)算要素和實(shí)測站網(wǎng)要素間選擇輸出項(xiàng)類型;第三部分中包含名稱輸入框、數(shù)據(jù)類型列表框以及AddressItem結(jié)構(gòu)體的定位選項(xiàng)框。
      [0013]進(jìn)一步的,所述步驟(4)中,用戶首先需確定待輸出的成果方案,并在已開發(fā)的成果輸出配置界面中,根據(jù)方案需求進(jìn)行所有成果要素信息的配置,其中包括:創(chuàng)建主圖形和子圖形、定位要素后新建數(shù)據(jù)項(xiàng)并將數(shù)據(jù)項(xiàng)與相應(yīng)子圖形匹配;而后在已開發(fā)的全局結(jié)果輸出間隔配置界面中設(shè)置間隔參數(shù),至此完成軟件的輸出定制。
      [0014]進(jìn)一步的,所述步驟(5)的具體方法為:
      首先設(shè)置時(shí)間循環(huán),在每一個(gè)時(shí)間步中,計(jì)算模塊完成數(shù)據(jù)計(jì)算并進(jìn)入輸出數(shù)據(jù)的過程,該過程又分成全局輸出和定制輸出兩類子項(xiàng);
      全局輸出時(shí),使用全局中設(shè)置的結(jié)果保存間隔參數(shù),若滿足全局結(jié)果保存參數(shù)的判斷,則保存此步中全局要素的結(jié)果,之后進(jìn)入定制輸出步驟;若計(jì)算步數(shù)不滿足全局結(jié)果保存參數(shù)的判斷,則直接進(jìn)入定制輸出步驟;
      定制輸出步驟時(shí),主圖形組將按照其中成員的存放順序循環(huán)運(yùn)行,在循環(huán)中,每個(gè)主圖形都將實(shí)現(xiàn)其在圖形顯示界面中的更新顯示;
      在結(jié)束主圖形組的循環(huán)后,進(jìn)程將判斷是否滿足跳出時(shí)間循環(huán)的條件,如未滿足判斷條件,則繼續(xù)進(jìn)行時(shí)間循環(huán);如滿足判斷條件,則結(jié)束整個(gè)進(jìn)程。有益效果:與現(xiàn)有技術(shù)相t匕,本發(fā)明具有以下優(yōu)點(diǎn):
      (1)本發(fā)明通過主圖形-子圖形-數(shù)據(jù)項(xiàng)的分級(jí)配置模式精確化定制特定輸出要素,逐步長的輸出保證了數(shù)據(jù)精度;利用底層間隔參數(shù)的定制保證了全局?jǐn)?shù)據(jù)的低存儲(chǔ)量,滿足全局結(jié)果查詢顯示的需求;以要素配置輸出取代以結(jié)果文件形式輸出后,無需進(jìn)行繁瑣的文件輸出設(shè)置和管理,分級(jí)配置的操作提高了軟件輸出操作的靈活度和簡易度;
      (2)本發(fā)明能夠解決現(xiàn)有技術(shù)中成果計(jì)算模塊同后處理模塊間數(shù)據(jù)傳遞耦合松散的問題,通過設(shè)計(jì)四個(gè)功能類與圖形輸出界面間的對(duì)應(yīng)關(guān)系,直接將定制的輸出成果在軟件運(yùn)行中實(shí)現(xiàn)繪圖顯示,免去了必須將結(jié)果文件輸出并導(dǎo)入后處理程序的步驟,實(shí)現(xiàn)了“成果計(jì)算-后處理”模塊間的緊密耦合,滿足了在計(jì)算過程中動(dòng)態(tài)顯示輸出成果的需求。

      【專利附圖】

      【附圖說明】
      [0015]圖1為本發(fā)明的流程圖;
      圖2為本發(fā)明中全局要素統(tǒng)一編碼示意圖;
      圖3為本發(fā)明中四種功能類的基本結(jié)構(gòu)及相互關(guān)系圖;
      圖4為本發(fā)明中四種功能類對(duì)象在可視化界面中的對(duì)應(yīng)關(guān)系圖;
      圖5為本發(fā)明中用戶輸出定制流程圖;
      圖6為本發(fā)明中數(shù)據(jù)項(xiàng)與新建子圖形綁定的步驟示意圖;
      圖7為本發(fā)明中數(shù)據(jù)項(xiàng)與已有子圖形綁定的步驟示意圖;
      圖8為本發(fā)明中信息定制后各對(duì)象間的從屬關(guān)系示意圖;
      圖9為本發(fā)明中成果數(shù)據(jù)實(shí)現(xiàn)動(dòng)態(tài)顯示的流程圖;
      圖10為本發(fā)明中單一主圖形實(shí)現(xiàn)動(dòng)態(tài)顯示的流程圖。

      【具體實(shí)施方式】
      [0016]下面對(duì)本發(fā)明技術(shù)方案結(jié)合附圖和實(shí)施例進(jìn)行詳細(xì)說明。
      [0017]如圖1所示,本發(fā)明公開了一種水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法,包括如下步驟:
      (1)對(duì)全局中各類要素的位置信息統(tǒng)一編碼,建立惟一索引;
      (2)構(gòu)建四種功能類:主圖形類、數(shù)據(jù)項(xiàng)管理類、圖形繪制類、子圖形類;
      (3)設(shè)計(jì)可定制式成果輸出配置界面及全局結(jié)果間隔參數(shù)配置界面;
      (4)根據(jù)定制需求,配置主圖形-子圖形-數(shù)據(jù)項(xiàng)從屬關(guān)系,設(shè)置全局間隔參數(shù);
      (5)運(yùn)行計(jì)算模塊,軟件界面中實(shí)時(shí)更新顯示定制數(shù)據(jù)。
      [0018]在上述的步驟(I)中,如圖2中所示,水利軟件中的全局要素庫可分為模型要素庫和資料站網(wǎng)庫兩種,分別存放模型計(jì)算要素和實(shí)測站網(wǎng)要素。模型計(jì)算要素主要應(yīng)用于計(jì)算模塊中,而實(shí)測站網(wǎng)要素主要應(yīng)用于管理初始條件、邊界條件等信息輸入的模塊中,同時(shí)也作為驗(yàn)證資料在后處理模塊中顯示輸出。對(duì)全局各類要素的位置信息統(tǒng)一編碼時(shí),采用Addressltem的結(jié)構(gòu)體形式來標(biāo)記并保存任一要素的唯一索引,進(jìn)而定位各類要素的位置,具體步驟為:
      以Addressltem的結(jié)構(gòu)體標(biāo)記和存儲(chǔ)位置信息,使用m_ID為主鍵來標(biāo)記模型中或?qū)崪y站網(wǎng)中的一個(gè)主對(duì)象,如某條河道或某個(gè)水文站;而m_ItemID是附屬于m_ID的子項(xiàng),進(jìn)行細(xì)化的定位標(biāo)記,例如“第I條河”的m_ID已標(biāo)記為“ 1001”,而該河中還包括有5個(gè)斷面,則需要對(duì)每個(gè)斷面再進(jìn)行編碼,假設(shè)標(biāo)記“第一個(gè)斷面”的!^〗^!!!^為“01”,則第I條河第I個(gè)斷面的Addressltem就以“m_ID=1001”并“m_ItemID=01”建立了惟一標(biāo)識(shí)。若要素只需主鍵就已完成了細(xì)化定位,則將設(shè)為空值。
      [0019]如圖3所示,步驟(2 )中的每個(gè)類結(jié)構(gòu)的上層部分均是其成員函數(shù),底層則是其非函數(shù)成員;
      上述主圖形類統(tǒng)籌管理其余三個(gè)類所生成的對(duì)象,是四個(gè)類中最頂層的設(shè)計(jì)。該類中開設(shè)有其余三種類對(duì)象的數(shù)組,用以存放并管理,即所有對(duì)象的數(shù)據(jù)空間都在主圖形類中存放。此外,主圖形類中還通過操作函數(shù)分別生成數(shù)據(jù)項(xiàng)及子圖形。
      [0020]數(shù)據(jù)項(xiàng)管理類主要負(fù)責(zé)定制和存放數(shù)據(jù),類中的Addressltem結(jié)構(gòu)體存放了數(shù)據(jù)項(xiàng)所對(duì)應(yīng)的輸出要素的位置信息,m_Type是輸出要素的數(shù)據(jù)類型,m_Name是數(shù)據(jù)項(xiàng)的名稱,m_XY則用以存放計(jì)算過程中輸出要素的數(shù)據(jù),非函數(shù)成員中還包括圖形繪制類和子圖形類這兩項(xiàng)的指針,用于確定數(shù)據(jù)項(xiàng)同其他類對(duì)象間的關(guān)聯(lián)對(duì)應(yīng)關(guān)系。數(shù)據(jù)項(xiàng)管理類中的CreateFeature ()函數(shù)用于創(chuàng)建與數(shù)據(jù)項(xiàng)關(guān)聯(lián)對(duì)應(yīng)的繪圖項(xiàng),AddDataO函數(shù)則用于引入計(jì)算中得到的數(shù)據(jù)。
      [0021]圖形繪制類主要負(fù)責(zé)繪制圖形,包含有數(shù)組m_XY及數(shù)據(jù)類型m_Type。成員函數(shù)中的GetDataO負(fù)責(zé)接收由數(shù)據(jù)項(xiàng)而來的數(shù)據(jù),Draw O則利用獲得的數(shù)據(jù)進(jìn)行圖形繪制。
      [0022]子圖形類負(fù)責(zé)分類管理圖形的輸出,即保證同一類型(m_Type)的數(shù)據(jù)要素按序輸出顯示。FeatureArray數(shù)組管理著子圖形中需繪圖顯示的繪圖項(xiàng)順序,但此數(shù)組僅負(fù)責(zé)操作管理,并不存放真實(shí)的數(shù)據(jù)空間。子圖形類中的成員函數(shù)包括了將繪圖項(xiàng)引入FeatureArray的AddFeature O函數(shù)以及管理各繪圖項(xiàng)按序繪圖的Draw O函數(shù)。
      [0023]如圖4所示,主圖形類、數(shù)據(jù)項(xiàng)管理類、圖形繪制類和子圖形類對(duì)應(yīng)生成的對(duì)象為主圖形、數(shù)據(jù)項(xiàng)、繪圖項(xiàng)和子圖形,各功能類所創(chuàng)建的對(duì)象與圖形顯示對(duì)象間的對(duì)應(yīng)關(guān)系為:
      主圖形組由N個(gè)主圖形組成,如同一本裝訂成輯的書;每一個(gè)主圖形對(duì)應(yīng)一個(gè)圖形顯示界面,如同書本中的一頁紙;圖形顯示界面中可存放多個(gè)子圖形所對(duì)應(yīng)的XY坐標(biāo)軸圖,如同一頁紙中有多個(gè)自然段;每個(gè)XY坐標(biāo)軸圖中又可顯示多條相同數(shù)據(jù)類型的過程線,如同一個(gè)自然段中的多條完整語句,每條過程線是數(shù)據(jù)項(xiàng)與繪圖項(xiàng)關(guān)聯(lián)作用的結(jié)果,數(shù)據(jù)項(xiàng)提供并存儲(chǔ)數(shù)據(jù),繪圖項(xiàng)將數(shù)據(jù)繪制顯示;同理延伸,每一條數(shù)據(jù)線中的單點(diǎn)數(shù)值就如同語句中的一個(gè)單詞,對(duì)應(yīng)著該輸出要素在時(shí)間循環(huán)中每步長輸出的數(shù)據(jù)。
      [0024]所述步驟(3)中的成果輸出配置界面中的各選項(xiàng)與主圖形類、數(shù)據(jù)項(xiàng)管理類、圖形繪制類和子圖形類所生成的對(duì)象及類中的成員相對(duì)應(yīng),并且配置結(jié)束后利用命令式按鈕將界面信息綁定存儲(chǔ);
      所述全局結(jié)果間隔參數(shù)配置界面中設(shè)有間隔參數(shù)選項(xiàng),設(shè)置以計(jì)算步長的整數(shù)倍間隔輸出,為匹配水利行業(yè)規(guī)范,還可以衍生以日間隔輸出(選取每天第M小時(shí)的計(jì)算值)或小時(shí)間隔輸出(選取每小時(shí)第N分鐘的計(jì)算值)。
      [0025]進(jìn)一步的,所述成果輸出配置界面包括以下三個(gè)部分:主圖形、子圖形創(chuàng)建項(xiàng);全局要素類型選擇項(xiàng);數(shù)據(jù)項(xiàng)生成項(xiàng);
      其中,第一部分可創(chuàng)建主圖形、子圖形對(duì)象,且設(shè)有下拉列表和列表框查看相應(yīng)的從屬關(guān)系;第二部分可實(shí)現(xiàn)在模型計(jì)算要素和實(shí)測站網(wǎng)要素間選擇輸出項(xiàng)的類型;第三部分中包含名稱輸入框、數(shù)據(jù)類型列表框以及AddressItem結(jié)構(gòu)體的定位選項(xiàng)框,其中m_ID和m_ItemID分別以“主要素”和“次要素”的選項(xiàng)框來獲取位置信息。
      [0026]如圖5所示,所述步驟(4)中,用戶可根據(jù)實(shí)際定制需求,在兩個(gè)不同界面中進(jìn)行配置操作,用戶首先需確定待輸出的成果方案,該方案中應(yīng)包含各輸出要素的位置信息(對(duì)應(yīng)其在軟件中的Addressltem)、名稱及數(shù)據(jù)類型,并在已開發(fā)的成果輸出配置界面中,根據(jù)方案需求進(jìn)行所有成果要素信息的配置,其中包括創(chuàng)建主圖形和子圖形、定位要素后新建數(shù)據(jù)項(xiàng)并將數(shù)據(jù)項(xiàng)與相應(yīng)子圖形匹配;而后在已開發(fā)的全局結(jié)果輸出間隔配置界面中設(shè)置間隔參數(shù),例如設(shè)定間隔參數(shù)為每隔“5”個(gè)步長輸出,至此完成軟件中所有的輸出定制。
      [0027]實(shí)施例1:本實(shí)施例中以蘇州計(jì)算水位為例,來詳細(xì)說明本發(fā)明,本實(shí)例以Windows XP SP2及以上為操作系統(tǒng)環(huán)境,Visual Stud1 2008 SPl為開發(fā)環(huán)境,C++為開發(fā)語目。
      [0028]在本發(fā)明中,配置主圖形-子圖形-數(shù)據(jù)項(xiàng)從屬關(guān)系步驟中的新建數(shù)據(jù)項(xiàng)并與相關(guān)子圖形綁定的環(huán)節(jié),是緊密耦合計(jì)算模塊與后處理模塊中的核心。由于子圖形只能接收同一種類型的數(shù)據(jù)項(xiàng),如何實(shí)現(xiàn)子圖形的這一功能特征則分別以兩個(gè)示意圖進(jìn)行說明。如圖6所示,假定蘇州的代表位置為“第1001河的第I斷面”,以此可確定Addressltem中的信息,數(shù)據(jù)項(xiàng)名稱即為“蘇州計(jì)算水位”,數(shù)據(jù)類型為“水位”,將這三類基本信息在界面中進(jìn)行配置,并新建數(shù)據(jù)項(xiàng)_1。隨后將數(shù)據(jù)項(xiàng)_1與新建的子圖形_1進(jìn)行綁定,綁定后的結(jié)果是子圖形_1中的數(shù)據(jù)類型等同于數(shù)據(jù)項(xiàng)_1的數(shù)據(jù)類型,數(shù)據(jù)項(xiàng)_1中的子圖形指針指向子圖形_1的數(shù)據(jù)空間。
      [0029]圖7所給出的則是新建的數(shù)據(jù)項(xiàng)與已綁定有數(shù)據(jù)項(xiàng)的子圖形進(jìn)行關(guān)聯(lián)的情形。首先新建了數(shù)據(jù)項(xiàng)_2,該數(shù)據(jù)項(xiàng)準(zhǔn)備同已綁定有數(shù)據(jù)項(xiàng)_1的子圖形_1關(guān)聯(lián),即以兩項(xiàng)的數(shù)據(jù)類型作為條件進(jìn)行判斷,若數(shù)據(jù)項(xiàng)_2的數(shù)據(jù)類型與子圖形_1的數(shù)據(jù)類型(亦即數(shù)據(jù)項(xiàng)_1的數(shù)據(jù)類型)一致,則進(jìn)行綁定,數(shù)據(jù)項(xiàng)_2的子圖形指針指向子圖形_1的數(shù)據(jù)空間;若數(shù)據(jù)類型不一致,則會(huì)提示用戶選擇其他子圖形或創(chuàng)建新子圖形進(jìn)行綁定,圖6、圖7的步驟中亦說明子圖形的數(shù)據(jù)類型由第一個(gè)綁定的數(shù)據(jù)項(xiàng)的數(shù)據(jù)類型決定。綁定的另一項(xiàng)隱含功能是利用子圖形類中的AddFeature O函數(shù)將各數(shù)據(jù)項(xiàng)所對(duì)應(yīng)的繪圖項(xiàng)按序添加至子圖形的繪圖項(xiàng)組中,以便管理圖形的繪制。
      [0030]按照上述操作,在完成所有成果要素信息的配置后,主圖形-子圖形-數(shù)據(jù)項(xiàng)間的從屬關(guān)系如圖8中案例所示,形成了分級(jí)分類存放管理的框架,并且在對(duì)應(yīng)圖形的顯示中也呈現(xiàn)出此種特征。
      [0031]圖9中展示了軟件從運(yùn)行計(jì)算模塊到成果數(shù)據(jù)實(shí)現(xiàn)動(dòng)態(tài)顯示的整個(gè)流程。首先在進(jìn)程中設(shè)置時(shí)間循環(huán),在每一個(gè)時(shí)間步中,水利模型完成計(jì)算后進(jìn)入輸出數(shù)據(jù)的步驟,該步驟中又分成全局輸出和定制輸出兩類子項(xiàng)。全局輸出中需要使用全局中設(shè)置的結(jié)果保存間隔參數(shù),如參數(shù)設(shè)置為每隔5個(gè)步長輸出,貝U在時(shí)間循環(huán)的第1、6、1Ρ..、5Ν+1步中即滿足判斷條件,保存此步中全局要素的結(jié)果,之后進(jìn)入定制輸出步驟;若計(jì)算步數(shù)不滿足判斷,則直接進(jìn)入定制輸出步驟。在定制輸出步驟中,主圖形組將按照其中成員的存放順序循環(huán)運(yùn)行,在循環(huán)中,每個(gè)主圖形都將實(shí)現(xiàn)其在圖形顯示界面中的更新顯示。在結(jié)束主圖形組的循環(huán)后,進(jìn)程將判斷是否滿足跳出時(shí)間循環(huán)的條件,如未滿足判斷條件,則繼續(xù)進(jìn)行時(shí)間循環(huán);如滿足判斷條件,則結(jié)束整個(gè)進(jìn)程。
      [0032]圖10則展示了每個(gè)主圖形實(shí)現(xiàn)其對(duì)應(yīng)圖形界面動(dòng)態(tài)顯示的過程,圖中以主圖形_1為例。首先進(jìn)入主圖形的數(shù)據(jù)項(xiàng)組循環(huán),在該循環(huán)中,順序調(diào)用每個(gè)數(shù)據(jù)項(xiàng)的AddDataO函數(shù),此函數(shù)會(huì)將與此數(shù)據(jù)項(xiàng)對(duì)應(yīng)的輸出要素的計(jì)算數(shù)據(jù)存入m_XY數(shù)組中。隨后調(diào)用與數(shù)據(jù)項(xiàng)關(guān)聯(lián)的繪圖項(xiàng)中的GetDataO函數(shù),該函數(shù)會(huì)將數(shù)據(jù)項(xiàng)中更新的m_XY數(shù)組傳遞至繪圖項(xiàng)中。以上步驟為后續(xù)的繪圖顯示準(zhǔn)備數(shù)據(jù)。
      [0033]接著需要根據(jù)已獲取的數(shù)據(jù)進(jìn)行圖形繪制,流程繼續(xù)進(jìn)入主圖形_1中的子圖形組循環(huán),順序調(diào)用各子圖形的DrawO函數(shù),由圖3中子圖形類結(jié)構(gòu)可知,子圖形中存放有繪圖項(xiàng)組,并以DrawO函數(shù)來實(shí)現(xiàn)對(duì)此繪圖項(xiàng)組的操作管理。故而繼續(xù)進(jìn)入子圖形的繪圖項(xiàng)組循環(huán),順序調(diào)用各個(gè)繪圖項(xiàng)中的Draw O函數(shù),此函數(shù)將繪圖項(xiàng)中已更新的m_XY數(shù)組進(jìn)行繪制更新。子圖形組循環(huán)結(jié)束后則完成了主圖形_1的動(dòng)態(tài)顯示。
      【權(quán)利要求】
      1.一種水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法,其特征在于包括如下步驟: (1)對(duì)全局中各類要素的位置信息統(tǒng)一編碼,建立惟一索引; (2)構(gòu)建四種功能類:主圖形類、數(shù)據(jù)項(xiàng)管理類、圖形繪制類、子圖形類; (3)設(shè)計(jì)可定制式成果輸出配置界面及全局結(jié)果間隔參數(shù)配置界面; (4)根據(jù)定制需求,配置主圖形-子圖形-數(shù)據(jù)項(xiàng)從屬關(guān)系,設(shè)置全局間隔參數(shù); (5 )運(yùn)行計(jì)算模塊,軟件界面中實(shí)時(shí)更新顯示定制數(shù)據(jù)。
      2.根據(jù)權(quán)利要求1中所述的水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法,其特征在于:所述步驟(I)中對(duì)全局各類要素的位置信息統(tǒng)一編碼時(shí),采用Addressltem的結(jié)構(gòu)體形式來標(biāo)記并保存任一要素的唯一索引,進(jìn)而定位各類要素的位置。
      3.根據(jù)權(quán)利要求1所述的水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法,其特征在于:所述步驟(2)中的每個(gè)類結(jié)構(gòu)由成員函數(shù)及非函數(shù)成員組成,各功能類之間通過成員函數(shù)、數(shù)組、指針相互聯(lián)系; 所述主圖形類統(tǒng)籌管理其余三個(gè)類所生成的對(duì)象,主圖形類中開設(shè)有其余三種類對(duì)象的數(shù)組,用以存放并管理,即所有對(duì)象的數(shù)據(jù)空間都在主圖形類中存放,另外,主圖形類中還通過操作函數(shù)分別生成數(shù)據(jù)項(xiàng)及子圖形; 所述數(shù)據(jù)項(xiàng)管理類可定制和存放數(shù)據(jù),該類中的AddressItem結(jié)構(gòu)體存放數(shù)據(jù)項(xiàng)所對(duì)應(yīng)的輸出要素的位置信息,m_Type是輸出要素的數(shù)據(jù)類型,m_Name是數(shù)據(jù)項(xiàng)的名稱,m_XY則用以存放計(jì)算過程中輸出要素的數(shù)據(jù),非函數(shù)成員中還包含有確定數(shù)據(jù)項(xiàng)同其他類對(duì)象間關(guān)聯(lián)對(duì)應(yīng)關(guān)系的圖形繪制類指針及子圖形類指針,CreateFeatureO函數(shù)可創(chuàng)建與數(shù)據(jù)項(xiàng)關(guān)聯(lián)對(duì)應(yīng)的繪圖項(xiàng),AddDataO函數(shù)則用于引入計(jì)算中得到的數(shù)據(jù); 所述圖形繪制類可繪制圖形,包含有數(shù)組m_XY及數(shù)據(jù)類型m_Type,其成員函數(shù)中的GetDataO接收由數(shù)據(jù)項(xiàng)而來的數(shù)據(jù),Draw O則利用獲得的數(shù)據(jù)進(jìn)行圖形繪制; 所述子圖形類可分類管理圖形輸出,即保證同一類型(m_Type)的數(shù)據(jù)要素按序輸出顯示,其FeatureArray數(shù)組管理著子圖形中需繪圖顯示的繪圖項(xiàng)順序,但此數(shù)組僅負(fù)責(zé)操作管理,并不存放真實(shí)的數(shù)據(jù)空間;而子圖形類中的成員函數(shù)包括將繪圖項(xiàng)引入FeatureArray數(shù)組的AddFeature O函數(shù)以及管理各繪圖項(xiàng)按序繪圖的Draw O函數(shù)。
      4.根據(jù)權(quán)利要求3所述的水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法,其特征在于:所述的四種功能類均可生成不同的功能對(duì)象,各對(duì)象與圖形顯示對(duì)象間有著對(duì)應(yīng)關(guān)系; N個(gè)主圖形可組成一個(gè)主圖形組,每一個(gè)主圖形對(duì)應(yīng)一個(gè)圖形顯示界面,圖形顯示界面中可存放多個(gè)子圖形所對(duì)應(yīng)的XY坐標(biāo)軸圖,每個(gè)XY坐標(biāo)軸圖中又可顯示多條相同數(shù)據(jù)類型的過程線,每條過程線是數(shù)據(jù)項(xiàng)與繪圖項(xiàng)關(guān)聯(lián)作用的結(jié)果,數(shù)據(jù)項(xiàng)提供并存儲(chǔ)數(shù)據(jù),繪圖項(xiàng)將數(shù)據(jù)繪制顯示;同理延伸,每一條數(shù)據(jù)線中的單點(diǎn)數(shù)值對(duì)應(yīng)著該輸出要素在時(shí)間循環(huán)中每步長輸出的數(shù)據(jù)。
      5.根據(jù)權(quán)利要求1所述的水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法,其特征在于:所述步驟(3)中的成果輸出配置界面包括以下三個(gè)部分:主圖形、子圖形創(chuàng)建項(xiàng);全局要素類型選擇項(xiàng);數(shù)據(jù)項(xiàng)生成項(xiàng); 其中,第一部分可創(chuàng)建主圖形、子圖形對(duì)象,且設(shè)有下拉列表和列表框查看相應(yīng)的從屬關(guān)系;第二部分可實(shí)現(xiàn)在模型計(jì)算要素和實(shí)測站網(wǎng)要素間選擇輸出項(xiàng)類型;第三部分中包含名稱輸入框、數(shù)據(jù)類型列表框以及AddressItem結(jié)構(gòu)體的定位選項(xiàng)框。
      6.根據(jù)權(quán)利要求1所述的水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法,其特征在于:所述步驟(4)中,用戶首先需確定待輸出的成果方案,并在已開發(fā)的成果輸出配置界面中,根據(jù)方案需求進(jìn)行所有成果要素信息的配置,然后在已開發(fā)的全局結(jié)果輸出間隔配置界面中設(shè)置間隔參數(shù),至此完成軟件中所有的輸出定制。
      7.根據(jù)權(quán)利要求1所述的水利軟件中定制式輸出及成果動(dòng)態(tài)顯示的方法,其特征在于:所述步驟(5)的具體方法為: 首先設(shè)置時(shí)間循環(huán),在每一個(gè)時(shí)間步中,計(jì)算模塊完成數(shù)據(jù)計(jì)算并進(jìn)入輸出數(shù)據(jù)的過程,該過程又分成全局輸出和定制輸出兩類子項(xiàng); 全局輸出時(shí),使用全局中設(shè)置的結(jié)果保存間隔參數(shù),若滿足全局結(jié)果保存參數(shù)的判斷,則保存此步中全局要素的結(jié)果,之后進(jìn)入定制輸出步驟;若計(jì)算步數(shù)不滿足全局結(jié)果保存參數(shù)的判斷,則直接進(jìn)入定制輸出步驟; 定制輸出步驟時(shí),主圖形組將按照其中成員的存放順序循環(huán)運(yùn)行,在循環(huán)中,每個(gè)主圖形都將實(shí)現(xiàn)其在圖形顯示界面中的更新顯示; 在結(jié)束主圖形組的循環(huán)后,進(jìn)程將判斷是否滿足跳出時(shí)間循環(huán)的條件,如未滿足判斷條件,則繼續(xù)進(jìn)行時(shí)間循環(huán);如滿足判斷條件,則結(jié)束整個(gè)進(jìn)程。
      【文檔編號(hào)】G06F17/30GK104199660SQ201410434154
      【公開日】2014年12月10日 申請(qǐng)日期:2014年8月29日 優(yōu)先權(quán)日:2014年8月29日
      【發(fā)明者】王船海, 楊海, 高宇, 馬騰飛, 曾賢敏, 郭偉建 申請(qǐng)人:河海大學(xué)
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1