基於C 的平面形狀編輯器的設計與實現

2021-09-25 06:08:16 字數 643 閱讀 2960

按照下面類圖給出的層次關係來定義類

所有形狀支援無引數構造,有引數構造,拷貝構造,析構

所有形狀支援平移操作,需要過載 operator+

所有形狀(除去無意義的),均支援計算周長

所有形狀(除去無意義的),均支援 draw()操作,此時只要要顯示形狀的名稱,位置等資訊

主程式中實現使用者輸入形狀及其引數,然後把形狀存入 6中定義的 cshapearray。在輸入形狀的同時,使用者可以查詢當前已經輸入入的形狀(可按名稱(需要對每個平面形狀加入名稱),位置來查詢)。支援用使用者對形狀的複製,貼上(貼上時假設使用者指定貼上的位置)。同時支援使用者對對形狀的刪除操作

輸入和處理好的形狀可以存入檔案,並從檔案中讀入

支援對當前所有形狀的 draw()

二 程式實現

2.1 開發環境

本程式使用visual studio 2010編寫,並按照規範風格,將類、函式、變數的宣告、其他標頭檔案的引用等寫在標頭檔案(*.**件)中,並使用標頭檔案保護符(#pragma once)保護以免重複編譯,具體函式的定義等則寫在對應的原始檔中。函式的注釋說明寫在標頭檔案函式宣告處,函式內部具體**說明寫在原始檔**處。

基於Ogitor的編輯器

1 介面美化 漢化 ogitor本身的漢化只是介面一小部分,內部不支援中文,內部使用中文會顯示亂碼 2 模仿3dmax和cryengine的lod輔助網格,網格捕捉。3 與現實對應的座標系對映,正交檢視下的精確定位 ogitor中不是正交投影,僅僅是鎖定鏡頭方向,所以不能精確定位 4 完全模仿3dm...

基於Ogitor的編輯器

1 介面美化 漢化 ogitor本身的漢化只是介面一小部分,內部不支援中文,內部使用中文會顯示亂碼 2 模仿3dmax和cryengine的lod輔助網格,網格捕捉。3 與現實對應的座標系對映,正交檢視下的精確定位 ogitor中不是正交投影,僅僅是鎖定鏡頭方向,所以不能精確定位 4 完全模仿3dm...

基於屬性的編輯器框架

看了ogitor的 後,自己又實踐了一把,結合n3中學到的一些技巧,在編輯器中得到了驗證.雖說做的是場景編輯器,但是其它編輯器也可以用的,畢竟思想都差不多.對於乙個編輯器,通常是由乙個個的 實體 組成,或者叫 物件 而 物件 又是由各種 屬性 所組成.以場景編輯器為例,我們通常會涉及以下操作 可以看...