freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于dxf格式cad文檔保護(hù)系統(tǒng)置亂模塊的設(shè)計與實現(xiàn)畢業(yè)論文(完整版)

2025-08-30 21:58上一頁面

下一頁面
  

【正文】 (3) 置亂算法的研究分析; (4) 程序與 AutoCAD 軟件的兼容。 本人所負(fù)責(zé)的模塊為文檔置亂模塊。本模塊主要在用戶關(guān)閉,打開文件的時候進(jìn)行工作。 實體置亂模塊功能需求 CAD 圖紙是由各種實體元素構(gòu)成的,例如點、線段、各種圖形、文字標(biāo)注等。因此,我們需要在用 戶打開文件的時候,對文檔進(jìn)行恢復(fù)工作。 本章小結(jié) 本章對 我們所開發(fā)的系統(tǒng),以及本人所負(fù)責(zé)模塊進(jìn)行了簡單的介紹。 Windows 鉤子函數(shù) Windows 的鉤 子函數(shù)可以認(rèn)為是 Windows 的主要特性之一。 系統(tǒng) 范圍的 —— 將捕捉系統(tǒng)中所有進(jìn)程將發(fā)生的事件消息。 (2) 鼠標(biāo)鉤子和低級鼠標(biāo)鉤子可以監(jiān)視各種鼠標(biāo)消 息。 技術(shù)問題 —— 由于之前沒有接觸過鉤子函數(shù),因此需要從頭開始學(xué)習(xí),需要多長時間才能掌握這項技術(shù),這是無法估計的。 (4)AutoCAD 文檔管理反應(yīng)器 AcApDocManagerReactor: 從 R20xx以來 ,哈爾濱工業(yè)大學(xué)本科畢業(yè)設(shè)計(論文) 10 AutoCAD 是一個多文檔環(huán)境。 從編程的角度上講, ObjectARX 所提供的是類以及方法。當(dāng)用戶作出相關(guān)操作的時候,根據(jù)操作類型的不同,調(diào)用相關(guān)反應(yīng)器,通過反應(yīng)器,調(diào)用其它相關(guān)模塊的操作,具體流程如圖 31所示。當(dāng)AutoCAD刪 除我們的插件,使用 On_kUnloadAppMsg()方法,對反應(yīng)器進(jìn)行卸載,以釋放資源。 運行結(jié)果 由于本模塊主要是后臺運行,并沒有直觀的界面,因此我們在測試的 時候,加入了若干語句,在 AutoCAD 軟件運行的命令行中顯示程序運行的過程。運行結(jié)果如圖 34 所示。最后 給出了整個程序的簡要流程圖,以及用于實現(xiàn)程序的類圖。 點的處理 我們采取了分組置亂的方式,將所有點的坐標(biāo)分成 16 個一組,先對這16 個坐標(biāo)進(jìn)行處理,打亂其順序,然后構(gòu)成一個 4*4 的矩陣。如果一條線段的 2 個頂點出現(xiàn)重合,在儲存文檔的時候,將會出 現(xiàn)嚴(yán)重的錯誤。 我們首先對圖形的一個頂點進(jìn)行點處理置亂,然后獲取邊的角度長度,對角度和長度進(jìn)行變換,然后根據(jù)順時針方向,計算出其余各個點的坐標(biāo),然后保存這些坐標(biāo)。在 AutoCAD中所有的實體都保存在塊表記錄中,而塊表 記錄則存儲在塊表中 [9]。同時可以有多個塊參照指向一個塊定義,在圖紙上顯示為由多個塊的副本存在。 哈爾濱工業(yè)大學(xué)本科畢業(yè)設(shè)計(論文) 21 圖紙邊界處理 作為每一張 CAD 圖紙,都有一個圖紙邊界,我們需要確保所有的坐標(biāo)都位于這個邊界之中。其類圖如圖 47 所示。其中 isKindOf()方法用于對獲得的實體進(jìn)行對比,以確定實體類型為一條直線。 setCenter()方法用于對弧線的圓心進(jìn)行處理, setStartAngle()方法用于對弧線的起始角度進(jìn)行處理, setEndAngle()方法用于對弧線的 結(jié)束角度進(jìn)行處理。 BlockDisorder 類用于對塊進(jìn)行置亂。當(dāng)需要使用到這個文檔的時候,我們就可以運行文檔恢復(fù)模塊對其進(jìn)行恢復(fù)。在恢復(fù)的過程中,首先從已經(jīng)置亂的文檔中獲取到所有點的數(shù)據(jù),然后,進(jìn)行分組。恢復(fù)完成后進(jìn)行分組,以 4 條線段,也就是 8 個點, 16 個坐標(biāo)為 1 組,然后進(jìn)行恢復(fù)。其類圖如圖 413 所示。我們在進(jìn)行置亂處理的時候,設(shè)立了一個標(biāo)志位,在進(jìn)行恢復(fù)的時候,就可以提取出哪個 點是基點。 提 取 點 坐 標(biāo)形 成 分 組形 成 矩 陣恢 復(fù) 矩 陣恢 復(fù) 順 序分 配 點 坐 標(biāo)開 始結(jié) 束 圖 411 點恢復(fù) 流程 通過這種二次置亂,恢復(fù),可以比較有效的保護(hù)文檔中的信息。具體流程如圖 410 所示。文檔置亂模塊在用戶對文檔進(jìn)行保存,關(guān)閉等操作時進(jìn)行工作,因此我們打開一個正常的 CAD 文檔,如圖 48 所示。通過 appendAcDbEntity()方法來對修改內(nèi)容進(jìn)行更新。置亂完畢后,我們需要調(diào)用 close()方法,將打開的實體進(jìn)行關(guān)閉,否則 AutoCAD軟件會因為資源管理問題而出錯。 OpenDB 類用于打開并建立一個實體數(shù)據(jù)庫。 其他相關(guān)屬性處理 在 CAD 圖紙中,每一個實體不僅僅只有長度,坐標(biāo)等屬性,還包括了線條的顏色,線條的粗細(xì)等屬性。 具體流程見圖 46。 在 ObjectARX 編程中,塊定義通過塊表記錄來保存,而塊參照由AcDbBlockReference類來表示。 結(jié) 束開 始提 取 頂 點 坐 標(biāo)調(diào) 用 點 處 理計 算 其 余點 的 坐 標(biāo)存 儲 坐 標(biāo)提 出 邊 長和 角 度 圖 44 多邊形處理 流程 在具體實現(xiàn)中,對于不同類型的圖形,需要調(diào)用不同的數(shù)學(xué)公式對坐標(biāo)進(jìn)行計算,這部分的工作量是比較大的。 例如畫一個最簡單的正方形,在 AutoCAD 中我們只需要拉出一條直線,哈爾濱工業(yè)大學(xué)本科畢業(yè)設(shè)計(論文) 18 然后選擇一個方向,就可以畫出一個正方形。 提 取 點 坐 標(biāo)形 成 分 組打 亂 坐 標(biāo) 順 序形 成 矩 陣處 理 矩 陣分 配 點 坐 標(biāo)開 始結(jié) 束 圖 42 點處理 流程 線的處理 在 CAD 文檔中,線的存儲是由 2 個點構(gòu)成的,因此對線的處理與對點的處理很相似。具體流程見圖 41。置亂完成后,繼續(xù)執(zhí)行另存為命令,保存完畢后,顯示文檔保存完畢。當(dāng) 2 個反應(yīng)器創(chuàng)建成功后,分別顯示提示信息。 mandCancelled()用于用戶取消一條命令后回到上一條操作。 使用文檔管理反應(yīng)器的地方主要在用戶 打開一個新文檔,或者對一個文哈爾濱工業(yè)大學(xué)本科畢業(yè)設(shè)計(論文) 12 檔 進(jìn)行關(guān)閉操作是對文檔進(jìn)行置亂操作。 設(shè)計與實現(xiàn) 本模塊主要要對 2 種類型 的操作進(jìn)行監(jiān)控。但是,正因為他的這種廣泛性,當(dāng)我們具體到某一個程序的時候,對于一些簡單事件的控制可能很簡單。 ObjectARX 反應(yīng)器其實也可以算是一種鉤子函數(shù) ,與 Windows 鉤子函數(shù)不同的是 ,他是以類似于插件的形式 ,嵌入到 AutoCAD 程序中 .其所監(jiān)視的事件 ,也是針對一些 AutoCAD 所特有的事件。 (5) 窗口過程鉤子監(jiān)視所有從系統(tǒng)消息隊列發(fā)往目 標(biāo)窗口的消息。所以應(yīng)謹(jǐn)慎使用,用完后立即卸載。 局部鉤子僅鉤掛 你 自己進(jìn)程的事件。這個問題如果無法解決,那么其他功能都無法有效地實現(xiàn)其作用。系統(tǒng)整體框架如圖 22 所示。通過這些信息,可以對文檔進(jìn)行恢復(fù)。 AutoCAD 文件是以DWG 格式進(jìn)行儲存,通過對 DWG 文件的研究,我們發(fā)現(xiàn) Autodesk 公司對DWG 文件進(jìn)行了很好的保護(hù)。 哈爾濱工業(yè)大學(xué)本科畢業(yè)設(shè)計(論文) 5 需求分析 由于項目的分工,我對其他模塊的了解并不是十分深入。 針對 CAD 文檔的保護(hù)方法,我們的系統(tǒng)主要可以分為下面幾個主 要模塊,見圖 21。 由于 CAD 圖是一種是矢量圖,同標(biāo)量 圖相比,要在矢量圖里嵌入信息具有比較大的難度 [5]。 AutoCAD 自帶安全功能分析 AutoCAD 自帶的安全功能主要包括以下幾種方式: (1) 自帶口令安全 —— AutoCAD 自帶的口令安全選項和 Word 口令安全選項大體相同,通過市面上存在的一些針對 Word 的破解軟件,我們不難發(fā)現(xiàn)想做出針對 AutoCAD 的破解軟件并不是十分困難。 國內(nèi)外相關(guān)領(lǐng)域開發(fā)及應(yīng)用現(xiàn)狀分析 主流文檔編輯軟件的保護(hù)措施 文檔編輯軟件基本上 都附加有訪問控制和數(shù)據(jù)保密功能,而且大多數(shù)的文檔信息安全方案實施都基于此 [2]。 AutoCAD 軟件也為中國的改革開放和社會主義現(xiàn)代化建設(shè)創(chuàng)造了豐功偉績。本人授權(quán) 大學(xué)可以將 本學(xué)位論文的全部或部分內(nèi)容編入有關(guān)數(shù)據(jù)庫進(jìn)行檢索,可以采用影印、縮印或掃描等復(fù)制手段保存和匯編本學(xué)位論文。盡我所知,除文中特別加以標(biāo)注和致謝的地方外,不包含其他人或組織已經(jīng)發(fā)表或公布過的研究成果,也不包含我為獲得 及其它教育機構(gòu)的學(xué)位或?qū)W歷而使用過的材料。每個公司都把工程圖紙當(dāng)作最機密的文件,一旦泄露到競爭對手手中,將給公司帶來無法估計的損失。 AutoDesk 公司提供了一個優(yōu)秀的二次開發(fā)工具 ObjectARX,通過這個工具我們可以 極為方便地開發(fā)出 AutoCAD 軟件的插件。對本研究提供過幫助和做出過貢獻(xiàn)的個人或集體,均已在文中作了明確的說明并表示了謝意。 涉密論文按學(xué)校規(guī)定處理。 AutoCAD 還為 Autodesk 公司的技術(shù)在建筑、基礎(chǔ)設(shè)施、制造、媒體和娛樂以及無線數(shù)據(jù)等各個行業(yè)中的領(lǐng)先鋪平了道路。在我們常用的各種文檔編輯軟件,比如哈爾濱工業(yè)大學(xué)本科畢業(yè)設(shè)計(論文) 2 Microsoft 公司的 Office 系列文檔編輯工具、 Adobe 公司 Acrobat PDF 文檔編輯閱讀器,以及 zip或 RAR 壓縮格式文件夾等等都自帶了多種數(shù)據(jù)保護(hù)功能。 (2) 電子傳遞 —— 電子傳遞功能讓用戶可以把當(dāng)前的圖形和相關(guān)的文件打包到一個單獨的傳選集中,它可以幫助用戶將圖形文件打包,以 加密的形式在 互聯(lián)網(wǎng)上傳送。對于矢量圖形的一些加密處理技術(shù)還不夠成熟,因此直接對 CAD 文檔進(jìn)行數(shù)字加密技術(shù)應(yīng)用的比較少 [6]。 文 檔 保護(hù) 系 統(tǒng)權(quán) 限 控 制 信 息 隱 藏 篡 改 提 醒 文 檔 置 亂 安 全 日 志 圖 21 系統(tǒng)整體模塊 其中權(quán)限控制模塊就是通過控制用戶的權(quán)限來保護(hù)文檔。接下來,我就僅對我所負(fù)責(zé)的模塊進(jìn)行分析。我們從 DWG 文件中得到的僅僅是很緊湊的二進(jìn)制代碼,如果直接對這些二進(jìn)制代碼進(jìn)行加密的話,需要非常大工作量的計算,這是用戶所無法忍受的。因此需要在對文檔進(jìn)行處理后對這些信息進(jìn)行儲存。 用 戶 監(jiān) 控 模 塊用 戶 操 作 ( 保存 等 )文 檔 轉(zhuǎn) 換 模 塊 文 檔 處 理 模 塊 文 檔 轉(zhuǎn) 換 模 塊進(jìn) 行 保 存 等 操作 圖 22 系統(tǒng)整體框架 其中用戶監(jiān)控模塊用于對用戶行為進(jìn)行監(jiān)控,當(dāng)用戶作出類似于保存,打開,關(guān)閉等操作時,該模塊截斷 AutoCAD 軟件的命令,然后調(diào)用我們的哈爾濱工業(yè)大學(xué)本科畢業(yè)設(shè)計(論文) 7 系統(tǒng) 模塊對文檔進(jìn)行保護(hù)。因此本模塊是其它模塊正常運行的一個前提,不僅我所負(fù)責(zé)的模塊需要使用到,其他模塊也將使用到這個模塊的功能。 遠(yuǎn)程的鉤子還可以將鉤掛其它進(jìn)程發(fā)生的事件。還有,由于您可以預(yù)先截獲其它進(jìn)程的消息,所以一旦您的鉤子函數(shù)出了問題的話必將影響其它的進(jìn)程。 這些鉤子,幾乎可以覆蓋了所有的 Windows 操作。 經(jīng)常使用到的 ObjectARX 反應(yīng)器主要有以下幾種類型: (1)數(shù)據(jù)庫反應(yīng)器 AcDbDatabaseReactor: 數(shù)據(jù)庫反應(yīng)器監(jiān)視在 AutoCAD數(shù)據(jù)庫范圍內(nèi)的事件,例如添加或去除實體。但是碰到一些比較復(fù)雜的事件,我們就需要去了解這個軟件本身的流程,因此我們可能需要進(jìn)行十分復(fù)雜的編程才能實現(xiàn)我們所需要的功能。一類是直接傳遞命令的操作,比如另存為,這種操作是直接在當(dāng)前窗口進(jìn)行操作。 類圖如圖 32所示 。 AcApDocManagerReactor類用于創(chuàng)建一個文檔管理反應(yīng)器。 加載完畢后,就可以監(jiān)控用戶所作出的動作。 當(dāng)要關(guān)閉軟件時,應(yīng)當(dāng)對反應(yīng)器進(jìn)行卸載,同樣通過 appload 命令來進(jìn)行,卸載結(jié)果如圖 35 所示。 圖 形 處 理點 處 理 長 度 處 理進(jìn) 行 實 體 分 組標(biāo) 注 處 理 文 字 處 理存 儲 信 息提 取 實 體 信 息開 始結(jié) 束 圖 41 實體置亂模塊流程 哈爾濱工業(yè)大學(xué)本科畢業(yè)設(shè)計(論文) 16 提取出實體并進(jìn)行分類后,對于不同類型的實體,處理方式以及處理難度都有所不同。只要對線的起始點和終止點的坐標(biāo)進(jìn)行變換,就可以實現(xiàn)線的變換。但是,在文件中,其存儲的并不是一條線和一個方向,而是存儲了 4 個點。 塊的處理 在 AutoCAD 中,存在一類特殊的元素 —— 塊,塊就是把幾個簡單實體集合到一起,形成一個新的實體。 通過圖 45,可以較直觀地理解塊參照和塊定義的關(guān)系。 線 圓 塊參照 線 塊參照 圓 圓 塊參照 塊參照 …… 塊定義 1 線 圓 弧線 …… 塊定義 2 圓 線 弧線 …… 哈爾濱工業(yè)大學(xué)本科畢業(yè)設(shè)計(論文) 20 提 取 塊 信 息從 塊 中 提 取實 體 信 息點 處 理 線 處 理 圖 形 處 理 文 字 處 理將 各 個 實 體 重新 結(jié) 合 成 塊處 理 塊 整 體開 始結(jié) 束 圖 46 塊處理 流程 在實際開發(fā)過程中還存在一個問題,塊定義作為一個塊表記錄存在,里面可以包含許多實體,那么應(yīng)該也是可以包含塊參照,這樣就出現(xiàn)了塊中間還有一個塊。有些情況下,這些屬性也可能泄露出一些比較重要的信息,因此在這些情況下,應(yīng)該可以對這些屬性也進(jìn)行保護(hù)。其中 getBlockTable()方法用于獲得并創(chuàng)建一個實體列表,以供其它置亂類使用。 ArcDisorder 類用于對弧線進(jìn)行置亂操作。 PolyDisorder 類實
點擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1