新聞中心

        EEPW首頁 > 電源與新能源 > 設計應用 > 面向對象的電力圖形系統的分析和設計

        面向對象的電力圖形系統的分析和設計

        作者: 時間:2011-02-11 來源:網絡 收藏

          其工作過程如下:
          a.編輯:在工作區間點擊相應的電氣元件的位圖或按鈕控件;
          b.增加:在相應的電氣元件的集合管理類增加一個元件并得到指向該元件的指針;
          c.繪制:利用該指針調用繪制函數進行該類圖元的繪制;
          d.獲取圖層和顏色:獲取圖元的圖層和顏色以完成繪制;
          e.將圖元顯示在客戶區。

        2
           基于以上對以及所建的OOA模型,可對如下:
        2.1 圖形界面的
          圖形系統作為人機交互的主要渠道,除了要能實現強大的繪圖與交互功能外,還要顯示美觀,結構清晰,與用戶交互過程要簡單方便。本圖形系統設計了具有Windows風格的界面,創建了一個工作區間窗口,以進行圖元編輯及圖層管理,并設計工具條以及一系列界面美觀、交互方便的對話框。具體界面可參看本文所附例圖3。

        2.2電氣圖元數據結構的設計
          對于圖形系統而言,最基礎也是最重要的功能,是對不同類型系統元件的繪制和編輯操作。采用對象思想把數據和功能合為一個單元,具體設計為每種元件都定義一個類,具體一個元件對應一個對象。每種元件都具有自己各種屬性和數據,如大小、形狀、位置等,也具有自己的各種行為,如繪制、移動、旋轉、復制、刪除等,利用對象技術把數據和操作封裝在一起,從而實現圖形系統的各種功能和操作。同時,各種元件除具有自己特殊的屬性和行為外,還有一些共同的地方,如顏色、畫筆寬度等屬性。這樣就可以利用C++類繼承和派生的特點,建立不同元件的公共抽象基類,其他元件類在此基礎上派生而成,這樣極大的減輕了編程量,消除了冗余的代碼,又增強了程序的可讀性。
        2.3電氣圖元管理的設計
          在系統圖形編輯過程中,所涉及的圖元眾多,如何把它們有序的組織起來,一直是比較困難的問題。在本圖形系統中由于數據類型比較多且交換頻繁,所以采用了基于C++類模板CTypedPtrArray來實現對指向圖形元素對象的指針的組織和管理。每個圖形元素是圖形元素類創建的一個對象,在創建這個對象時得到指向這個對象的指針,通過類模板CTypedPtrArray建立對象指針數組來管理這些指針,實現圖元對象的增加、刪除等操作,進而達到管理所有圖元對象的目的。
        2.4圖形信息管理的設計
          為了能靈活的對圖元的顏色以及對圖層的管理,本圖形系統設計了一個圖層結構和一個圖形信息類。圖層結構包含了圖層的名稱、圖層的唯一識別號以及圖層的顯示狀態(布爾型變量)。圖形信息類的屬性包括一個存儲顏色列表的數組和一個存儲圖層列表的圖層結構數組,服務包括獲取顏色以及獲取圖層的顯示狀態。在創建完一個圖元對象,并請求該對象的“繪制”服務時,首先向圖形信息類請求“獲取圖層的顯示狀態”服務,判斷該對象所屬圖層的顯示狀態,如果處于不顯示的狀態則返回,服務不再繼續,否則,向圖形信息管理類請求“獲取顏色”服務來創建畫筆,進行圖元的繪制。基于以上的服務流程以及圖形系統的重繪機制,只需設計出圖形信息管理交互界面,對圖形信息類的顏色列表數組和圖層結構數組進行相應的操作即可實現圖形顏色和圖層的管理。
        2.5圖形方式下參數錄入的設計
          本圖形系統設計了一系列元件參數對話框,并編寫了相應的代碼。用戶能夠在網絡接線圖上方便迅速的進行數據處理。只要雙擊接線圖上某種類型的元件,應用程序便會彈出同該類元件相對應的元件參數對話框,用戶通過填寫對話框各項參數,即可完成對某一圖元的建模,或對已建模圖元的參數的修改。這種圖形化的參數錄入方式既直觀又明了,后臺數據庫的讀寫由應用程序完成,對普通用戶完全屏蔽,用戶不用再去擔心文件格式的正確與否,所要做的僅僅是鼠標的點擊和參數對話框的填寫,從而大大提高了數據處理的效率。
        2.6數據庫的設計
          圖形系統是作為一個獨立的模塊鑲嵌在系統軟件中的,最終圖形中的各設備圖元的參數和拓撲信息要傳送給其它的各功能模塊,一個好的數據接口最能體現模塊的獨立性、易用性和通用性。基于圖形系統的特點采用Microsoft Access進行數據庫開發,在數據庫結構上,采用按元器件分類列表的關系數據庫結構。
          在創建完系統接線圖對圖元進行參數錄入后,也就把圖元的圖形類參數以及系統類參數存入數據庫,此時的數據庫里存放的圖形類參數包括圖元的坐標、長度以及放置方向等基本圖形信息,我們稱之為“生數據庫”。但是,圖形系統的數據庫最終是各種電力系統分析軟件的,而這些分析軟件需求的往往不是這些基本的圖形信息,而是進行分析所必需的拓撲信息。所以本圖形系統對數據庫進行了轉換,在“生數據庫”建立后,由嵌入SQL語句的主程序對“生數據庫”進行查詢和轉換,生成包含電網拓撲信息的通用數據庫——“熟數據庫”。

        3 圖形系統的特點
          (1) 能夠方便、快捷的繪制出各種電力系統常用元件,如發電機、變壓器、母線、刀閘等,并且能夠對圖中的元件進行任意移動和刪除。
          (2) 具有強大的編輯功能。能夠對圖中的一個或多個元件進行選擇、復制、拷貝、粘貼、旋轉、撤銷等工作。為了區別不同的電壓等級和其他屬性,用戶在繪制接線圖時能夠任意指定當前繪制的線型、線寬、顏色,文字標注的字體和字號,對已繪制的圖元,也能隨意改變上述屬性。
          (3) 能對圖形進行分層管理。能動態創建圖層,圖層創建的同時,工作區間圖層視圖的樹結構自動增加一條樹的分支,圖層創建完后只要雙擊某一樹支即可對該樹支對應的圖層進行瀏覽。每個圖元都屬于特定的圖層,若用戶選擇了當前活動圖層,則僅顯示屬于此圖層的圖元。這種圖層的概念可以用來標示不同電壓等級的圖元。
          (4) 在網絡接線圖上實現了可視化操作。能通過鼠標點觸相應元件,即可實現變壓器分接頭的切換、刀閘和開關的開合以及電容的投切。
          (5) 本圖形系統采用了面向對象技術,
        對各種電氣元件設備有統一的操作模式,能很方便的將新的元件引入編輯系統以及擴充新的功能模塊,具有一定的可拓展性和開放性。

        4 結論
          本圖形系統利用Visual C++和Microsoft Access混合編程的方法進行開發,基本做到了人機交互良好、操作方便,并且與數據庫緊密相連。由于采用了面向對象的方法,圖形系統的擴充和維護都比較方便。目前本圖形系統在操作票系統以及繼保整定方面得到了應用,實踐證明,該圖形系統具有很高的實用性和推廣價值。

        電氣符號相關文章:電氣符號大全


        c++相關文章:c++教程



        上一頁 1 2 下一頁

        評論


        技術專區

        關閉
        主站蜘蛛池模板: 沛县| 榆社县| 溆浦县| 尼木县| 香河县| 乌兰县| 资源县| 三江| 阳东县| 阿拉尔市| 和龙市| 赤壁市| 儋州市| 革吉县| 乌苏市| 绥江县| 雷波县| 江达县| 罗平县| 即墨市| 石城县| 磴口县| 博野县| 于田县| 德昌县| 来安县| 大连市| 当雄县| 孟州市| 安平县| 迭部县| 泰宁县| 万山特区| 台山市| 正镶白旗| 石渠县| 延庆县| 淮安市| 鹤山市| 溆浦县| 沙洋县|