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

正文內(nèi)容

軟件信息系統(tǒng)設(shè)計(jì)(參考版)

2025-08-01 10:18本頁面
  

【正文】 ”[Abrash 1998] 繪制商業(yè)統(tǒng)計(jì)圖形的客戶程序。 小 結(jié) 讓我們用著名3D游戲軟件Quake的設(shè)計(jì)師Michael Abrash 的話總結(jié)本章:“所有真正杰出的設(shè)計(jì)一旦被設(shè)計(jì)好,看起來都是那么的簡單和顯而易見。另有一個(gè)客戶機(jī)(數(shù)據(jù)源)向CNC 服務(wù)器發(fā)布各種數(shù)據(jù),并用組播來通知各個(gè)客戶機(jī)當(dāng)前發(fā)布了什么數(shù)據(jù)(短消息)。 服務(wù)器訂閱 .3ds和 .obj格式的多邊形模型數(shù)據(jù)并執(zhí)行交互式繪制。在子線程中,仍采用非阻塞的消息驅(qū)動(dòng)方式接受客戶機(jī)的請求,只有在響應(yīng)請求時(shí),采用阻塞的方式一次性地完成數(shù)據(jù)的發(fā)送或接收。 鑒于阻塞方式和非阻塞方式各有優(yōu)缺點(diǎn),CNC 服務(wù)器采用了混合方式。優(yōu)點(diǎn)是在數(shù)據(jù)到來的時(shí)候,系統(tǒng)向應(yīng)用程序窗口發(fā)送消息,使得應(yīng)用程序不必總在等待數(shù)據(jù),提高了工作效率。缺點(diǎn)是容易使應(yīng)用程序阻塞住,不能處理其它事務(wù)。Winsock有兩種工作方式:阻塞方式和非阻塞方式。CNC 主要采用了關(guān)鍵區(qū)、互斥對象等同步手段解決這個(gè)問題。每個(gè)子線程按照CNC API的協(xié)議與客戶機(jī)通訊。二、多線程并發(fā)技術(shù) 服務(wù)器有一個(gè)主線程和多個(gè)子線程。 鎖定標(biāo)志(bLock)的用途:很多客戶機(jī)可能同時(shí)訂閱某個(gè)數(shù)據(jù),而該數(shù)據(jù)可能已超出作廢時(shí)刻即將被刪除。 作廢時(shí)刻(TimeToDie)的用途:客戶機(jī)發(fā)布的數(shù)據(jù)均指定了生命期,服務(wù)器在接收到數(shù)據(jù)時(shí)即可計(jì)算出作廢時(shí)刻。 存儲(chǔ)類型(iStorageType)的用途:把數(shù)據(jù)全部保存在內(nèi)存中將非常消耗服務(wù)器的內(nèi)存資源,在很多情況下是沒有必要的。 // 數(shù)據(jù)的長度 char *pchContent。 // 作廢時(shí)刻 BOOL bLock。 // 數(shù)據(jù)的名稱 BYTE iStorageType。Hash表中的數(shù)據(jù)項(xiàng)結(jié)構(gòu)見DataElement : struct DataElement{ char strGroupName[16]。由于同一時(shí)刻,系統(tǒng)可能存在多個(gè)生產(chǎn)者與消費(fèi)者,數(shù)據(jù)的存入、取出速度成為服務(wù)器性能的重要指標(biāo)。服務(wù)器采用多線程并發(fā)處理技術(shù),使客戶機(jī)獲得最快的響應(yīng)。組播地址由服務(wù)器動(dòng)態(tài)生成,客戶機(jī)可以向服務(wù)器查詢?nèi)我饨M的組播地址。MessageResponse是虛函數(shù),它將根據(jù)dwContentType信息決定如何處理到來的組播消息,具體功能由用戶定義。 // 組播的數(shù)據(jù)報(bào)內(nèi)容,由用戶定義}。組播的數(shù)據(jù)報(bào)結(jié)構(gòu) DataMulticast定義如下:struct DataMulticast{DWORD dwContentType。 // 16個(gè)字節(jié)的工作組名字 }。 struct GroupAddress{ BYTE iDataType。三、客戶程序的“組播”協(xié)議 客戶機(jī)先調(diào)用函數(shù)QueryGroupIP向服務(wù)器發(fā)送一個(gè)GroupAddress格式的報(bào)文,用于查詢組播地址。如果該數(shù)據(jù)存在,服務(wù)器先向客戶機(jī)發(fā)送一個(gè)TRUE標(biāo)志,之后立即再向客戶機(jī)發(fā)送該數(shù)據(jù)(DataPublish格式)。(2)服務(wù)器接收到查詢時(shí),按照 DataQuery結(jié)構(gòu)中的strGroupName和strDataName進(jìn)行搜索。 // 16個(gè)字節(jié)的工作組名字 char strDataName[16]。 struct DataQuery{ BYTE iDataType。 // 數(shù)據(jù)內(nèi)容}。 // 4 個(gè)字節(jié)的數(shù)據(jù)生命期,以秒為單位 DWORD dwLength。 // 16個(gè)字節(jié)的工作組名字 char strDataName[16]。數(shù)據(jù)結(jié)構(gòu)見 DataPublish : struct DataPublish{ BYTE iDataType。// 響應(yīng)組播消息…}。 // 向服務(wù)器查詢組播地址 DWORD MulticastMessage(…)。 // 向服務(wù)器查詢數(shù)據(jù) BOOL SubscribeData(…)。 // 與服務(wù)器斷開連接 BOOL PublishData(…)。CNC客戶機(jī)CNC服務(wù)器CNC API基于TCP協(xié)議的發(fā)布—訂閱模式基于UDP協(xié)議的組播模式 CNC 的系統(tǒng)結(jié)構(gòu) CNC 客戶機(jī)的API設(shè)計(jì) 類CNCClient客戶機(jī)用來實(shí)現(xiàn)“發(fā)布—訂閱”和“組播”功能,主要接口(公有函數(shù))如下: class CNCClient{ public: BOOL Connect(…)。客戶機(jī)可以向服務(wù)器申請加入任意組,允許向任意組播放消息,服務(wù)器不保存這些組播消息。CNC的“發(fā)布—訂閱” 功能是用TCP協(xié)議實(shí)現(xiàn)的。每個(gè)客戶機(jī)可能是很多數(shù)據(jù)的生產(chǎn)者或消費(fèi)者。生產(chǎn)者可以向服務(wù)器發(fā)布數(shù)據(jù),服務(wù)器保存這些數(shù)據(jù)。CNC 服務(wù)器將客戶機(jī)分組管理。CNC系統(tǒng)提供了支持“發(fā)布—訂閱(PublishSubscribe)”與“組播(Multicast)” 模式的服務(wù)器與API,可以高效地管理多個(gè)組群的協(xié)同工作,并使得客戶機(jī)的程序設(shè)計(jì)十分簡單。那么總共存在n(n1)/2 個(gè)Socket直接通訊,并且每個(gè)客戶機(jī)的變動(dòng)將導(dǎo)致其它客戶機(jī)的修改。 用于直接操作的三維交互工具條 材質(zhì)對話 材質(zhì)庫對話 點(diǎn)光源對話 顏色對話 支持協(xié)同工作的網(wǎng)絡(luò)通訊開發(fā)系統(tǒng) CNC 最簡單的協(xié)同工作模式是讓兩個(gè)客戶機(jī)直接通訊,可以用Socket編程實(shí)現(xiàn)。Intra3D的“繪制與交互層”實(shí)現(xiàn)了這些計(jì)算,并且提供彩色的滑動(dòng)條用于鼠標(biāo)交互。顏色編輯是3D圖形程序中最常用的交互,材質(zhì)與光源的編輯實(shí)際上是通過改變顏色分量來實(shí)現(xiàn)的。Microsoft的窗口系統(tǒng)不提供3D的對話窗口。SceneView支持selecting、scaling、rotating、translating、creating、deleting等三十余種操作,并提供工具條方便于交互。為了便于編輯真實(shí)感屬性,Intra3D定制了一些常用對話:矢量字體對話(FontDialog)、顏色對話(ColorDialog)、材質(zhì)庫對話(MaterialLibDialog)、材質(zhì)對話(MaterialDialog)與光源對話(DirLightDialog, PointLightDialog, SpotLightDialog)。四、繪制與交互層Intra3D的交互分兩類:一類是對形體、光源和相機(jī)的直接操作,另一類是真實(shí)感屬性的編輯。(3)光源節(jié)點(diǎn)有三種:平行光源節(jié)點(diǎn)(DirLightNode)、點(diǎn)光源節(jié)點(diǎn)(PointLightNode)和錐光源節(jié)點(diǎn)(SpotLightNode)。在SceneNode中定義了局部坐標(biāo)系以及相應(yīng)的圖形變換,這樣便于第四層以同樣的操作方式實(shí)現(xiàn)三維交互。圖形對象的開發(fā)與應(yīng)用問題密切相關(guān),用戶可以使用繼承方法擴(kuò)充新的圖形對象,而不會(huì)影響到其它三層的構(gòu)件。二、圖形對象層圖形對象能將數(shù)據(jù)轉(zhuǎn)化為幾何模型并可以繪制出來。標(biāo)準(zhǔn)版軟件約25兆,核心庫7萬多行C++代碼全部公開,用戶可以方便地修改內(nèi)核以適應(yīng)不同的需求。,其中高層構(gòu)件可以引用低層構(gòu)件,但低層構(gòu)件不能引用高層構(gòu)件。 支持協(xié)同工作的網(wǎng)絡(luò)通訊開發(fā)系統(tǒng)CNC 通用交互式三維圖形軟件開發(fā)工具Intra3D 支持協(xié)同工作的交互式三維圖形軟件開發(fā)系統(tǒng) 通用交互式三維圖形軟件開發(fā)工具 Intra3D Intra3D 、圖形對象、三維交互算法和圖形用戶界面的C++類庫與COM(Component Object Model)對象庫,支持Visual C++、Visual Basic、Delphi等語言的應(yīng)用編程。(2)CNC (Cooperative Network Communicator),其核心是支持“發(fā)布—訂閱模式”與“組播模式”的服務(wù)器與API。我們多方面分析了3D需求及軟硬件條件,研制完成運(yùn)行于PC平臺(tái),支持協(xié)同工作的交互式三維圖形軟件開發(fā)系統(tǒng)。但是這些DVEs系統(tǒng)缺乏3D開發(fā)工具的交互式圖形功能以及通用性,而通用的3D開發(fā)工具如Open Inventor則又不支持分布式計(jì)算和協(xié)同工作。在商業(yè)、科研、教育、娛樂等領(lǐng)域,用于分布式虛擬環(huán)境(Distributed Virtual Environments, DVEs
點(diǎn)擊復(fù)制文檔內(nèi)容
范文總結(jié)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1