人機(jī)交互技術(shù) 課件全套 李想 第1-10章 什么是人機(jī)交互、人機(jī)交互概述和發(fā)展-夢幻森林案例教學(xué)_第1頁
人機(jī)交互技術(shù) 課件全套 李想 第1-10章 什么是人機(jī)交互、人機(jī)交互概述和發(fā)展-夢幻森林案例教學(xué)_第2頁
人機(jī)交互技術(shù) 課件全套 李想 第1-10章 什么是人機(jī)交互、人機(jī)交互概述和發(fā)展-夢幻森林案例教學(xué)_第3頁
人機(jī)交互技術(shù) 課件全套 李想 第1-10章 什么是人機(jī)交互、人機(jī)交互概述和發(fā)展-夢幻森林案例教學(xué)_第4頁
人機(jī)交互技術(shù) 課件全套 李想 第1-10章 什么是人機(jī)交互、人機(jī)交互概述和發(fā)展-夢幻森林案例教學(xué)_第5頁
已閱讀5頁,還剩200頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

人機(jī)交互技術(shù)第一章

人機(jī)交互概述1.1人機(jī)交互的概念1.1.1為什么要研究人機(jī)交互

自從上個世紀(jì)40年代計(jì)算機(jī)誕生以來,計(jì)算機(jī)和圍繞計(jì)算機(jī)的信息產(chǎn)業(yè)蓬勃發(fā)展。當(dāng)前,制造業(yè)、IT業(yè)、汽車行業(yè)等許多產(chǎn)業(yè)都有計(jì)算機(jī)的身影。人不但要跟電腦、平板、手機(jī)等看得見摸得著的計(jì)算機(jī)進(jìn)行交互,而且要和嵌入到汽車、電視、微波爐等機(jī)器內(nèi)部的計(jì)算機(jī)進(jìn)行交互?,F(xiàn)在很多人在研究人機(jī)交互,優(yōu)秀的設(shè)計(jì)可以提高人們的工作效率,使人們的工作生活更加簡潔,更加方便。什么是人機(jī)交互

人機(jī)交互(Human-ComputerInteraction,簡稱HCI)是一門研究計(jì)算機(jī)系統(tǒng)與用戶之間交互關(guān)系的學(xué)問。美國計(jì)算機(jī)協(xié)會ACM人機(jī)交互興趣小組(SpecialInterestGrouponComputer–HumanInteraction,簡稱SIGCHI)給出了人機(jī)交互的定義,人機(jī)交互是關(guān)于設(shè)計(jì)、評價和實(shí)現(xiàn)供人使用的交互式計(jì)算系統(tǒng),以及圍繞這些方法的主要現(xiàn)象進(jìn)行研究的一門學(xué)科。

人機(jī)交互是與認(rèn)知心理學(xué)、人機(jī)工程學(xué)、多媒體技術(shù)、虛擬現(xiàn)實(shí)技術(shù)等密切相關(guān)的綜合學(xué)科,可以從不同的角度(計(jì)算機(jī)科學(xué)、機(jī)器和人)來研究人機(jī)交互。例如從計(jì)算機(jī)科學(xué)的角度,人機(jī)交互的焦點(diǎn)是交互,尤其是單個或多個用戶與一個或多個計(jì)算機(jī)的交互,以及通過計(jì)算機(jī)系統(tǒng)的人際交互;而從機(jī)器的觀點(diǎn),計(jì)算機(jī)可能是獨(dú)立運(yùn)作的計(jì)算機(jī),也可能是嵌入式計(jì)算機(jī)器,比如作為太空駕駛員座艙或者微波爐的一部分。從人類用戶的角度看,需要考慮分布式系統(tǒng),計(jì)算機(jī)輔助通訊,或依靠不同系統(tǒng)進(jìn)行協(xié)同工作等特性。因此,人機(jī)交互既研究機(jī)械裝置,也研究人的因素,人機(jī)交互是當(dāng)代技術(shù)發(fā)展的一個重要支撐領(lǐng)域。人機(jī)交互的簡史發(fā)展是人類亙古不變的主題,一個社會發(fā)展的關(guān)鍵在于其核心生產(chǎn)工具的發(fā)展。計(jì)算機(jī)作為新時代的核心生產(chǎn)工具,如何高效地與之交互一直是業(yè)界的研究熱點(diǎn)。經(jīng)過數(shù)十年的實(shí)踐和發(fā)展,人機(jī)交互理念、技術(shù)和外圍設(shè)備逐漸由萌芽走向發(fā)展和成熟。

手工操作和命令行交互階段ENIAC是一個龐然大物,重30余噸,占地約170平方米,包含18000只電子管。研究者通過手工開閉計(jì)算機(jī)上的開關(guān)作為輸入,通過機(jī)器上指示燈的明暗作為輸出。如圖所示,在埃尼阿克計(jì)算機(jī)中,每個功能表上有多個開關(guān),用戶通過操作功能表上的開關(guān)進(jìn)行數(shù)據(jù)輸入。工作人員在設(shè)置ENIAC的一個功能表上的開關(guān)組早期的五孔紙帶上世紀(jì)50年代,人們開始使用穿孔紙帶與計(jì)算機(jī)進(jìn)行交互。穿孔紙帶大約一寸寬,中間的一排小孔用來確定位置,兩側(cè)的大孔用來表示信息,穿孔或不穿孔表示1和0,計(jì)算機(jī)指令用大孔中的若干個孔表示,一條簡單的程序通常都需要幾米長的紙帶,如圖所示。但是,這種交互方式輸入輸出速度慢,可靠性低,逐漸被淘汰。

DECVT100,一個廣泛應(yīng)用的計(jì)算機(jī)終端(1978)

1956年,MIT開始研究使用鍵盤向計(jì)算機(jī)輸入信息。60年代中期起,基于鍵盤的命令行接口成為大多數(shù)計(jì)算機(jī)的主要交互方式。操作人員在命令行界面中輸入命令,界面接收命令行,然后把命令行文字翻譯成相應(yīng)的系統(tǒng)功能。整個70年代,甚至直到80年代,這種交互方式一直在持續(xù)使用。大家所熟知的Unix操作系統(tǒng)、微軟的DOS系統(tǒng)、以及蘋果的DOS系統(tǒng)都是采用命令行的方式。

圖形化用戶界面階段進(jìn)入70年代,計(jì)算機(jī)的使用范圍日趨廣泛,人機(jī)交互的設(shè)計(jì)理念隨之前進(jìn)。易用性(Usability)、用戶友好逐漸成為人機(jī)交互設(shè)計(jì)的首要考慮要素,人機(jī)交互的理念進(jìn)入以用戶為中心(User-CenteredDesign,簡稱UCD)的時代。道格拉斯?恩格爾巴特拿著他發(fā)明的鼠標(biāo)1968年,Stanford大學(xué)的道格拉斯·恩格爾巴特(DouglasEnglebart)博士發(fā)明了世界上第一個滑動鼠標(biāo),如圖所示。設(shè)計(jì)的初衷是為了使計(jì)算機(jī)的操作更加簡捷,代替在鍵盤上敲擊繁瑣的指令。恩格爾巴特制作的鼠標(biāo)是一只小木頭盒子,工作原理是由它底部的小球帶動樞軸轉(zhuǎn)動,從而使得內(nèi)部的變阻器改變阻值來產(chǎn)生位移訊號,經(jīng)計(jì)算機(jī)處理,鼠標(biāo)的移動轉(zhuǎn)化成了屏幕上的光標(biāo)的移動。鼠標(biāo)極大地改善了人機(jī)之間的交互方式,這個發(fā)明被電氣與電子工程師協(xié)會(InstituteofElectricalandElectronicEngineers,簡稱IEEE)列為計(jì)算機(jī)誕生50年來最重大的事件之一。XeroxPalo于70年代中后期研制出原型機(jī)Star,形成了以窗口、圖標(biāo)、菜單和指示器為基礎(chǔ)的圖形界面,也稱為WIMP界面,Apple公司最先采用了這種圖形界面。1983年,蘋果公司開發(fā)的Lisa桌面電腦配置了鼠標(biāo),并首次采用了圖形化的用戶界面(GraphicalUserInterface,簡稱GUI)。Lisa創(chuàng)造性地采用了桌面“隱喻(Metaphor)”,使用了位映射(bitamp)、窗口(window)、圖符(icon)等圖形化元素來代表對應(yīng)的操作,用戶可通過鼠標(biāo)點(diǎn)擊方便地與計(jì)算機(jī)進(jìn)行交互,如圖所示。Lisa由于售價高,市場接受度不高,但其成就了之后的蘋果Macintosh計(jì)算機(jī)。這種基于鼠標(biāo)便捷操作和直觀的圖形化界面的交互方式成為人機(jī)交互進(jìn)化的歷史性變革。(a)Lisa電腦

(b)Lisa的屏幕自然人機(jī)交互階段80年代末,多媒體技術(shù)繁榮發(fā)展。聲卡、圖像卡等硬件設(shè)備的發(fā)明和實(shí)現(xiàn)使得計(jì)算機(jī)處理聲音及視頻圖像成為可能,多媒體輸入輸出設(shè)備如揚(yáng)聲器、話筒和攝像頭等逐漸為人機(jī)交互所用,如圖所示。人機(jī)交互的內(nèi)容更加豐富有趣,用戶能以聲、像、圖、文等多種媒體信息方式與計(jì)算機(jī)進(jìn)行信息交流。用戶利用多媒體技術(shù)與計(jì)算機(jī)進(jìn)行生動的交互自然人機(jī)交互輸入設(shè)備的進(jìn)展

自然人機(jī)交互更加注重用戶的個人體驗(yàn),以人為中心。在交互輸入方面,從最開始的手工操作開關(guān)、鼠標(biāo)鍵盤輸入,發(fā)展到當(dāng)前的體感交互等自然交互方式。1972年,NolanBushnell發(fā)明了第一個交互電子游戲Pong,首次將操控技術(shù)運(yùn)用到了人機(jī)交互系統(tǒng)中。1977年,ToraDefanti和DanielSandin開發(fā)了一套手套式傳感器系統(tǒng)SayreGlove,用戶只需要帶上這樣特殊的手套就可以向計(jì)算機(jī)輸入特定指令。交互顯示設(shè)備的進(jìn)展

在交互顯示方面,人們追求身臨其境的感覺。1838年,CharlesWheatstone研究發(fā)現(xiàn)人類大腦是通過處理左右眼看到的不同視角圖像來產(chǎn)生三維感覺的,這一發(fā)現(xiàn)奠定了現(xiàn)代所有立體顯示技術(shù)的理論基礎(chǔ),包括裸眼3D、眼鏡式3D、沉浸式VR等。1961年,由Philco公司研發(fā)的Headsight問世,這是世界上第一款頭戴式顯示器,同時該設(shè)備首次融合了頭部追蹤功能,Headsight主要用于隱秘信息的查看。1985年,美國NASA研發(fā)出LCD光學(xué)頭戴顯示器,同時融合了頭部、手部追蹤功能,可實(shí)現(xiàn)更加沉浸的體驗(yàn),其主要用于太空作業(yè)的模擬訓(xùn)練等。人機(jī)交互的新技術(shù)近年來,隨著機(jī)器視覺、人工智能、模式識別技術(shù)的發(fā)展,以及相應(yīng)的計(jì)算機(jī)軟硬件技術(shù)的進(jìn)步,以手勢識別、動作識別、語音識別等為基礎(chǔ)的自然人機(jī)交互技術(shù)不斷涌現(xiàn)。交互的模式,也從單一通道輸入向多通道輸入改變,最終達(dá)到智能和自然的目的。多點(diǎn)觸控多點(diǎn)觸控技術(shù)是一種允許多用戶、多手指同時傳輸輸入信號,并根據(jù)動態(tài)手勢進(jìn)行實(shí)時響應(yīng)的新型交互技術(shù)。該項(xiàng)技術(shù)采用裸手作為交互媒介,使用電學(xué)或者視覺技術(shù)完成信息的采集與定位。

多點(diǎn)觸控技術(shù)經(jīng)過了多年的積累和發(fā)展。該系統(tǒng)在大屏多點(diǎn)觸控系統(tǒng)設(shè)計(jì)方面成本低、敏感度高,而且使用計(jì)算機(jī)視覺技術(shù)具有較好的擴(kuò)展性。其系統(tǒng)效果圖如下圖所示,用戶可以通過單手或者多手直接操控電腦。單手觸控(左)與雙手觸控(右)

手勢交互

手勢交互是指人通過手部動作表達(dá)特定的含義和交互意圖,通過具有符號功能的手勢來進(jìn)行信息交流和控制計(jì)算機(jī)的交互技術(shù)。例如,可以采用如下圖所示的生活中的6種手勢類型,將其語義分別定義為確定/抓取、返回/釋放、鎖定/解鎖、右選、待轉(zhuǎn)/移動、左選操作指令。

手勢交互是一種新興的交互技術(shù),其技術(shù)核心是手勢識別。根據(jù)識別對象可將手勢識別技術(shù)分為靜態(tài)手勢識別和動態(tài)手勢識別。數(shù)據(jù)手套是一種應(yīng)用較為廣泛的手勢識別方式。右圖形象地描述了數(shù)據(jù)手套的結(jié)構(gòu)。

手勢識別的另一種方式是通過攝像頭采集手勢數(shù)據(jù)。這種方式下,人不需要穿戴額外的手套,裸手即可與計(jì)算機(jī)互動。如下圖所示,LeapMotion主要由兩個攝像頭和3個紅外LED組成。LeapMotion的組成結(jié)構(gòu)(左)與圖像效果(右)

人體動作識別

人體動作是人表達(dá)意愿的重要信號,包含了豐富的語義。人體動作是指包括頭、四肢、軀干等人的各個身體部分在空間中的姿勢或者運(yùn)動過程。下圖展示了基于人體動作的人機(jī)交互應(yīng)用。動作分析的人機(jī)交互應(yīng)用

人體動作分析是人機(jī)交互交互系統(tǒng)的重要支撐技術(shù),是一個多學(xué)科交叉的研究課題,使用了數(shù)學(xué)建模、圖形圖像分析、模式識別、人工智能等知識,具有重要的理論研究價值。一個完整的人體動作分析過程主要包括動作捕捉、動作特征描述和動作分類識別三大部分。與其他交互手段相比,人體動作交互技術(shù)無論是硬件還是軟件方面都有了較大的提升,交互設(shè)備向小型化、便攜化、使用方便化等方面發(fā)展。

語音交互

語音交互是人以自然語音或機(jī)器合成語音同計(jì)算機(jī)進(jìn)行交互的綜合性技術(shù)。機(jī)器通過識別和理解把語音信號轉(zhuǎn)變?yōu)橄鄳?yīng)的文本或命令,人通過語音與機(jī)器進(jìn)行對話交流,讓機(jī)器明白用戶的交互意圖。下圖給出了語音交互的示例商業(yè)產(chǎn)品。(a)AppleSiri

(b)amazonecho

語音交互需要對語音識別和語音合成進(jìn)行研究,還要對人在語音通道下的交互機(jī)理、行為方式等進(jìn)行研究。語音交互過程包括四部分:語音采集、語音識別、語義理解和語音合成。語音采集完成音頻的錄入、采樣及編碼;語音識別完成語音信息到機(jī)器可識別的文本信息的轉(zhuǎn)化;語義理解根據(jù)語音識別轉(zhuǎn)換后的文本字符或命令完成相應(yīng)的操作;語音合成完成文本信息到聲音信息的轉(zhuǎn)換。

其它新興的交互方式

人類的交互方式還有很多,當(dāng)前眼球、意念、表情、唇讀等更多的新興手段被引入到人機(jī)交互的領(lǐng)域。這些方式針對不同的應(yīng)用和人群,在特殊情況下更為有效。人機(jī)交互設(shè)計(jì)的標(biāo)準(zhǔn)、原則和指導(dǎo)方針人機(jī)交互設(shè)計(jì)的標(biāo)準(zhǔn)(1)ISO的人機(jī)工程學(xué)技術(shù)委員會ISO9241包含多個部分,對人機(jī)交互、以人為中心的設(shè)計(jì)、用戶界面、用戶體驗(yàn)、易用性等都有描述。右表是其各個子系列的基本標(biāo)準(zhǔn)號和標(biāo)題。

近年來,以人為中心的人機(jī)交互設(shè)計(jì)是人機(jī)交互的一個研究熱點(diǎn)。以人為中心的設(shè)計(jì)方法應(yīng)該遵循以下原則。

(1)設(shè)計(jì)基于對用戶、任務(wù)和環(huán)境的明確的理解。(2)用戶參與整個設(shè)計(jì)和開發(fā)。(3)設(shè)計(jì)由以用戶為中心的評估驅(qū)動和改進(jìn)。(4)過程是不斷迭代的。(5)設(shè)計(jì)表達(dá)了全部用戶體驗(yàn)。(6)設(shè)計(jì)團(tuán)隊(duì)包括多學(xué)科的技能和視角。W3C的多通道交互工作組

2002年,萬維網(wǎng)聯(lián)盟W3C成立多通道交互工作組。工作組的目標(biāo)是制定標(biāo)準(zhǔn)以使得種類繁多的通道之間能夠交互。工作組描述了多通道交互生態(tài)系統(tǒng)一個典型示例,由多個框架組件構(gòu)成,如下圖所示。多通道交互生態(tài)系統(tǒng)示例

人機(jī)交互的原則和指導(dǎo)方針

Shneiderman的界面設(shè)計(jì)八個黃金法則:(1)盡力保持一致性(2)使用戶能用快捷鍵操作頻繁使用的項(xiàng)目(3)提供有幫助的反饋信息(4)會話和流程設(shè)計(jì)要走向一個完結(jié)(5)提供防止用戶出錯的機(jī)制,并提供簡潔的錯誤提示信息(6)允許便捷的撤銷操作(7)給用戶掌控感(8)減少短時記憶負(fù)擔(dān)Nilesen的10個易用性啟發(fā)式方法:(1)系統(tǒng)狀態(tài)可見(2)系統(tǒng)和真實(shí)世界相匹配(3)撤銷重做原則(4)一致性原則(5)防錯原則(6)易取原則(7)靈活高效原則(8)易快速瀏覽原則(9)容錯原則(10)人性化幫助原則PeterMorville的用戶體驗(yàn)蜂巢圖:

在書中,PeterMorville給出了用戶體驗(yàn)蜂巢圖,對人機(jī)交互設(shè)計(jì)很有指導(dǎo)意義,如左圖所示。用戶體驗(yàn)蜂巢圖自然人機(jī)交互設(shè)計(jì)的指導(dǎo)方針我們認(rèn)為以下幾點(diǎn)方針更符合自然人機(jī)交互系統(tǒng)設(shè)計(jì)思想。(1)非接觸式的體感交互(2)多通道上下文感知融合(3)虛擬與現(xiàn)實(shí)的交互映射(4)注重反饋和限制因素(5)考慮通用性和擴(kuò)展性THANKYOU人機(jī)交互技術(shù)人機(jī)交互概述和發(fā)展

人機(jī)交互的研究內(nèi)容1

人機(jī)交互的發(fā)展歷史2

最新應(yīng)用3總結(jié)4目錄CONTENTS

人機(jī)交互的研究內(nèi)容1人機(jī)交互(Human-ComputerInteraction,HCI)是關(guān)于設(shè)計(jì)、評價和實(shí)現(xiàn)供人們使用的交互式計(jì)算機(jī)系統(tǒng),且圍繞這些方面的主要現(xiàn)象進(jìn)行研究的學(xué)科。人機(jī)交互、人機(jī)互動(英文:Human–ComputerInteraction或Human–MachineInteraction,簡稱HCI或HMI),是一門研究系統(tǒng)與用戶之間的交互關(guān)系的學(xué)問。人機(jī)交互的研究內(nèi)容傳統(tǒng)的人機(jī)交互(HumanComputerInteraction,HCI)是研究運(yùn)用什么樣的開發(fā)原理及方法,讓人們可以方便地使用計(jì)算機(jī)系統(tǒng)的學(xué)科。20世紀(jì)90年代后期以來,隨著高速處理芯片,多媒體技術(shù)和InternetWeb技術(shù)的迅速發(fā)展和普及,人機(jī)交互的研究重點(diǎn)放在了智能化交互,多模態(tài)(多通道)-多媒體交互,虛擬交互以及人機(jī)協(xié)同交互等方面,也就是放在以人為中心的人機(jī)交互技術(shù)方面。人機(jī)交互的發(fā)展歷史,是從人適應(yīng)計(jì)算機(jī)到計(jì)算機(jī)不斷地適應(yīng)人的發(fā)展史。簡單來理解就是研究用戶和計(jì)算機(jī)之間交互的學(xué)科,如何讓人們更加方便高效的運(yùn)用計(jì)算機(jī)技術(shù)。新媒體技術(shù)的逐步發(fā)展,豐富了HCI這一領(lǐng)域的研究內(nèi)容,從傳統(tǒng)的人與計(jì)算機(jī)鍵盤、鼠標(biāo)從而控制顯示內(nèi)容和文本的互動,轉(zhuǎn)變?yōu)楦嗟淖匀唤换バ问?,體現(xiàn)形態(tài)也從二維擴(kuò)展到三維可視化的終端顯示。在最初,很多學(xué)者和專家認(rèn)為HCI可以通過網(wǎng)頁設(shè)計(jì)、網(wǎng)站設(shè)計(jì)來體現(xiàn),逐漸的發(fā)展至今,我們可以通過虛擬現(xiàn)實(shí)(VR)技術(shù)、增強(qiáng)現(xiàn)實(shí)(AR)技術(shù)、混合現(xiàn)實(shí)(MR)技術(shù)以及影像現(xiàn)實(shí)(CR)技術(shù)作為技術(shù)表現(xiàn)形式的手段,基于計(jì)算機(jī)及網(wǎng)絡(luò)產(chǎn)生的內(nèi)容和相對計(jì)算機(jī)及網(wǎng)絡(luò)現(xiàn)實(shí)所產(chǎn)生的內(nèi)容,針對內(nèi)容、渠道的接受主體(人或其他物體),形成主體、內(nèi)容、渠道這三個要素構(gòu)成的人機(jī)交互產(chǎn)品。人機(jī)交互的研究內(nèi)容筆式交互設(shè)備視覺交互設(shè)備虛擬環(huán)境中的交互

觸覺交互設(shè)備課程內(nèi)容介紹課程內(nèi)容KT點(diǎn)課程內(nèi)容KT點(diǎn)

人機(jī)交互發(fā)展歷史2人機(jī)交互的發(fā)展過程,也是人適應(yīng)計(jì)算機(jī)到計(jì)算機(jī)不斷地適應(yīng)人的發(fā)展過程。人機(jī)交互發(fā)展歷史59年美國學(xué)者B.Shackel從人在操縱計(jì)算機(jī)時如何才能減輕疲勞出發(fā),提出了被認(rèn)為是人機(jī)界面的第一篇文獻(xiàn)的關(guān)于計(jì)算機(jī)控制臺設(shè)計(jì)的人機(jī)工程學(xué)的論文。1960年,Liklider

JCK首次提出人機(jī)緊密共棲(Human-Computer

Close

Symbiosis)的概念,被視為人機(jī)界面學(xué)的啟蒙觀點(diǎn)。1969年在英國劍橋大學(xué)召開了第一次人機(jī)系統(tǒng)國際大會,同年第一份專業(yè)雜志國際人機(jī)研究(IJMMS)創(chuàng)刊??梢哉f,1969年是人機(jī)界面學(xué)發(fā)展史的里程碑。

在1970年成立了兩個HCI研究中心:一個是英國的Loughbocough大學(xué)的HUSAT研究中心,另一個是美國Xerox公司的Palo

Alto研究中心。

1970年到1973年出版了四本與計(jì)算機(jī)相關(guān)的人機(jī)工程學(xué)專著,為人機(jī)交互界面的發(fā)展指明了方向。

20世紀(jì)80年代初期,學(xué)術(shù)界相繼出版了六本專著,對最新的人機(jī)交互研究成果進(jìn)行了總結(jié)。人機(jī)交互學(xué)科逐漸形成了自己的理論體系和實(shí)踐范疇的架構(gòu)。人機(jī)系統(tǒng)是指人為了達(dá)到某種預(yù)定目標(biāo),針對某些特定條件,利用已經(jīng)掌握的科學(xué)技術(shù),組成的人、機(jī)、環(huán)境共存的體系。這就是廣義的人機(jī)系統(tǒng),也稱為人—機(jī)—環(huán)境系統(tǒng)。狹義的人機(jī)系統(tǒng)僅指人與機(jī)器組成的共存體系。1878198420032007人機(jī)交互系統(tǒng)的發(fā)展理論實(shí)踐theorypractice雷明頓2號打字機(jī)第一代蘋果Macintosh個人計(jì)算機(jī)黑莓推出的全鍵盤智能手機(jī)蘋果第一代iPhone智能手機(jī)的虛擬鍵盤

人機(jī)交互技術(shù)的最新應(yīng)用3

制造業(yè)

教育科研

軍事圖片來源于2018首屆青島軍民融合展覽拍攝參展商作品生活、文化娛樂

總結(jié)41、虛擬現(xiàn)實(shí)人機(jī)交互:基于鍵盤和字符顯示器的交互階段2、虛擬現(xiàn)實(shí)人機(jī)交互:基于鼠標(biāo)和圖形顯示器的交互階段3、虛擬現(xiàn)實(shí)人機(jī)交互:基于多媒體技術(shù)的交互階段4、虛擬現(xiàn)實(shí)人機(jī)交互:基于多模態(tài)技術(shù)集成的自然交互階段總結(jié)THANKYOU人機(jī)交互技術(shù)第一章

人機(jī)交互概述人機(jī)交互模型人機(jī)交互框架模型

在人機(jī)交互領(lǐng)域的模型研究方面,較早提出的一個有影響的模型是Norman的執(zhí)行-評估循環(huán)模型。Norman將人機(jī)交互過程分為執(zhí)行和評估兩個階段,其中包括建立目標(biāo)、形成意圖、動作描述、執(zhí)行動作、理解系統(tǒng)狀態(tài)、解釋系統(tǒng)狀態(tài)與根據(jù)目標(biāo)和意圖評估系統(tǒng)的狀態(tài)七個步驟。修正后的Norman模型

Abowd和Beale在1991年修正了Norman模型,這個模型為了同時反映交互系統(tǒng)中用戶和系統(tǒng)的特征,將交互分為系統(tǒng)、用戶、輸入和輸出四個部分一個交互周期中有目標(biāo)建立、執(zhí)行、表示和觀察四個階段,圖中每一個有向弧線表示了這四個階段,每一個階段對應(yīng)著一中描述語言到另一種描述語言的翻譯過程。一個交互周期以用戶的目標(biāo)建立階段開始。

人機(jī)界面模型

人機(jī)界面模型是人機(jī)界面軟件的程序框架,它從理論上和總體上描述了用戶和計(jì)算機(jī)的交互活動。隨著人機(jī)界面功能的增長,人機(jī)界面的設(shè)計(jì)也變得復(fù)雜,交互式應(yīng)用系統(tǒng)中界面代碼占70%以上。人機(jī)界面模型主要任務(wù)有任務(wù)分析模型、對話控制模型、結(jié)構(gòu)模型和面向?qū)ο竽P偷取?/p>

任務(wù)分析模型基于所要求的系統(tǒng)功能進(jìn)行用戶和系統(tǒng)活動的描述和分析;對話控制模型用于描述人機(jī)交互過程的時間和邏輯序列,即描述人機(jī)交互過程的動態(tài)行為過程;結(jié)構(gòu)模型從交互系統(tǒng)軟件結(jié)構(gòu)觀點(diǎn)來描述人機(jī)界面的構(gòu)成部件,它把人機(jī)交互中的各因素,如提示符、錯誤信息、光標(biāo)移動、用戶輸入、確認(rèn)、圖形、文本等有機(jī)地組織起來;面向?qū)ο竽P褪菫橹С种苯硬倏v的圖形用戶界面而發(fā)展起來的,它可以把人機(jī)界面中的顯示和交互組合成一體作為一個基本的對象,也可以把顯示和交互分離為兩類對象,建立起相應(yīng)的面向?qū)ο竽P汀?/p>

人機(jī)界面結(jié)構(gòu)模型

Seeheim模型

Seeheim模型是一種界面和應(yīng)用明確分離的軟件結(jié)構(gòu),該結(jié)構(gòu)于1985年在德國的Seeheim舉行的國際人機(jī)界面管理系統(tǒng)研討會上首先提出。該模型分為應(yīng)用接口部件、對話控制部件和表示部件三個部件。

Arch模型

Arch模型是1992年在Seeheim模型基礎(chǔ)上提出來的。由領(lǐng)域特定部件、領(lǐng)域適配部件、對話部件、表示部件和交互工具箱部件五部分組成。

對話部件:負(fù)責(zé)任務(wù)排隊(duì),領(lǐng)域適配器部件是協(xié)調(diào)對話部件和領(lǐng)域特定部件之間的通訊。

交互工具箱部件:是實(shí)現(xiàn)與終端用戶的物理交互,表示部件是協(xié)調(diào)對話部件和交互工具箱部件之間的通訊。

領(lǐng)域特定部件:是控制、操作及檢索與領(lǐng)域有關(guān)的數(shù)據(jù)。

面向?qū)ο蟮挠脩艚缑娼换ツP统R姷拿嫦驅(qū)ο蟮挠脩艚缑娼换ツP桶∕VC模型、PAC模型、PAC-Amodeus模型、LIM模型和YORK模型等:

MVC模型PAC模型

MVC模型是1983年提出的面向?qū)ο蟮慕换ナ较到y(tǒng)概念模型,該模型是在Smalltalk編程語言環(huán)境下提出來的。由控制器、視圖和模型三類對象組成。

模型:表示應(yīng)用對象的狀態(tài)屬性和行為。

視圖:負(fù)責(zé)對象的可視屬性描述。

控制器:是處理用戶的輸入行為并給控制器發(fā)送事件。

優(yōu)點(diǎn):(1)可以為一個模型在運(yùn)行時同時建立和使用多個視圖。(2)視圖與控制器的可接插性,允許更換視圖和控制器對象,而且可以根據(jù)需求動態(tài)的打開或關(guān)閉、甚至在運(yùn)行期間進(jìn)行對象替換。(3)模型的可移植性,因?yàn)槟P褪仟?dú)立于視圖的,所以可以把一個模型獨(dú)立地移植到新的平臺工作。MVC的優(yōu)點(diǎn)與缺點(diǎn)缺點(diǎn):(1)增加了系統(tǒng)結(jié)構(gòu)和實(shí)現(xiàn)的復(fù)雜性。對于簡單的界面,嚴(yán)格遵循MVC,使模型、視圖與控制器分離,會增加結(jié)構(gòu)的復(fù)雜性,并可能產(chǎn)生過多的更新操作,降低運(yùn)行效率。(2)視圖與控制器間過于緊密連接。視圖與控制器是相互分離但又卻是聯(lián)系緊密的部件,如果視圖沒有控制器的存在,其應(yīng)用是很有限的。(3)視圖對模型數(shù)據(jù)的低效率訪問。依據(jù)模型操作接口的不同,視圖可能需要對此調(diào)用才能獲得足夠的顯示數(shù)據(jù)。PAC模型是Coutaz于1987年提出的一種叫做多智能體的交互式系統(tǒng)概念模型。PCA模型PAC模型和MVC模型之間有四個重要的區(qū)別:

(1)PAC模型Agent將應(yīng)用功能與陳述、輸入和輸出行為封裝在一個對象中。

(2)PAC模型用一個獨(dú)立的控制器來保持應(yīng)用語義用戶界面之間的一致性。

(3)PAC模型沒有基于任何一種編程環(huán)境。

(4)PAC模型將控制器獨(dú)立出來,更加符合UIMS的設(shè)計(jì)思想,可以用來表示用戶界面不同的功能部分。

用戶概念模型

用戶概念模型:是一種用戶能夠理解的系統(tǒng)描述,它使用一組集成的構(gòu)思和概念,描述系統(tǒng)應(yīng)該做什么、如何運(yùn)作、外觀如何等。人機(jī)系統(tǒng)設(shè)計(jì)的首要任務(wù)是建立明確的、具體的概念模型。概念模型可以分為基于活動的概念模型和基于對象的概念模型兩大類。

基于活動的概念模型

指示類模型:描述的是用戶通過指示系統(tǒng)應(yīng)該做什么來完成自己的任務(wù),例如,用戶可向某個系統(tǒng)發(fā)出指示,要求打印文件。在Windows和其他GUI系統(tǒng)中,用戶則使用控制鍵,或者鼠標(biāo)選擇菜單項(xiàng)來發(fā)出指令。指示類型或者支持快速、有效的交互,因此,特別適合于重復(fù)性的活動,用于操作多個對象。

對話模型的概念模型:是基于“人與系統(tǒng)的對話”模式設(shè)計(jì)的,它與“指示”類型的模型不同?!皩υ挕笔且粋€雙向的通信過程,其系統(tǒng)更像是一個交互伙伴,而不僅僅是執(zhí)行命令的機(jī)器,最適合用于那些用戶系用查找特定類型的信息,或者系統(tǒng)討論問題的應(yīng)用。實(shí)際的“對話”方式可采用各種形式,如電話銀行、訂票、搜索引擎和援助系統(tǒng)。

操作與導(dǎo)航概念模型:利用用戶在現(xiàn)實(shí)世界中積累的知識來操作對象或穿越某個虛擬空間。例如,用戶通過移動、選擇、打開、關(guān)閉、縮放等方式來操作虛擬對象。也可以使用這些活動的擴(kuò)展方式,即現(xiàn)實(shí)世界中不可能的方式來操作對象或穿越虛擬空間,例如,有些虛擬世界允許用戶控制自身的移動,或允許一個物體變成另一個物體。

搜索與瀏覽概念模型:搜索與瀏覽概念模型的思想是使用媒體去發(fā)掘和瀏覽信息,網(wǎng)頁和電子商務(wù)網(wǎng)站都是基于這個概念模型的應(yīng)用?;趯ο蟮母拍钅P?/p>

對象類型的概念模型是基于對象的模型。這類模型要更為具體,側(cè)重于特定對象在特定環(huán)境中的使用方式,通常是對物理世界的模擬。例如,“電子表格”就是一個非常成功的基于對象的概念模型?;趯ο蟮母拍钅P陀小敖缑姹葦M”和“交互范型”。

“界面比擬”是采用比擬的方法將交互界面的概念模型與某個(或某些)物理實(shí)體之間存在著的某些方面的相似性體現(xiàn)在交互界面設(shè)計(jì)中?!敖缑姹葦M”將人們的習(xí)慣或熟知的事物同交互界面中的新概念結(jié)合起來,“桌面”和“電子表格”既可以歸類為基于對象的概念模型,同時也是界面比擬的例子。

交互范型(InteractionParadigm)是人們在構(gòu)思交互設(shè)計(jì)時的某種主導(dǎo)思想或思考方式。交互設(shè)計(jì)領(lǐng)域的主要交互范型就是開發(fā)桌面應(yīng)用——面向監(jiān)視器、鍵盤和鼠標(biāo)的單用戶使用等。隨著無線、移動技術(shù)和手持設(shè)備的出現(xiàn),已開發(fā)出各種新的交互范型。這些交互范型已經(jīng)“超越桌面”。如無處不在的計(jì)算技術(shù),滲透性計(jì)算技術(shù)、可穿戴的計(jì)算技術(shù)、物理/虛擬環(huán)境集成技術(shù)等等。GOMS預(yù)測模型

目標(biāo)操作方法和選擇行為模型(GoalOperatorMethodSelection,GOMS)是人機(jī)交互領(lǐng)域最著名的預(yù)測模型,是用于分析交互系統(tǒng)中用戶復(fù)雜性的建模技術(shù),主要被軟件設(shè)計(jì)者用于建立用戶行為模型。它采用“分而治之”的思想,將一個任務(wù)進(jìn)行多層次的細(xì)化,通過目標(biāo)(Goal)、操作(Operator)、方法(Method)以及選擇規(guī)則(Selectionrule)四個元素來描述用戶行為。GOMS模型

目標(biāo)是用戶執(zhí)行任務(wù)最終想要得到的結(jié)果。它可以在不用的抽象層次中定義。如“編輯一篇文章”,高層次的目標(biāo)可以定義為“編輯文章”,低層次的目標(biāo)可以定義為“刪除字符”,一個高層次的目標(biāo)可以分解為若干個低層次目標(biāo)。

操作是任務(wù)分析到最底層時的行為,是用戶為了完成任務(wù)所必須執(zhí)行的基本動作,如雙擊鼠標(biāo)左鍵、按下回車等。在GOMS模型中它們是原子動作,不能再被分解。一般情況下,假設(shè)用戶執(zhí)行每個動作需要一個固定的時間,并且這個時間間隔是與上下文無關(guān)的,如點(diǎn)擊一下鼠標(biāo)按鍵需要0.20秒的執(zhí)行時間,即操作花費(fèi)的時間與用戶正在完成什么樣的任務(wù)或當(dāng)前的操作環(huán)境沒有關(guān)系。

方法是描述如何完成目標(biāo)的過程。一個方法本質(zhì)上來說是一個內(nèi)部算法,用來確定子目標(biāo)序列及完成目標(biāo)所需要的操作。如在Windows操作系統(tǒng)下關(guān)閉一個窗口有三種方法:可以從菜單中選擇CLOSE菜單項(xiàng),可以使用鼠標(biāo)點(diǎn)擊右上角的“X”按鈕,也可以按ALT+F4。在GOMS中,這三個子目標(biāo)的分解分別稱為MOUSE-CLOSE方法和F4方法。圖給出GOMS模型中關(guān)閉窗口這一目標(biāo)的方法描述。關(guān)閉窗口行為描述實(shí)例

選擇規(guī)則是用戶要遵守的判定規(guī)則,是已確定在特定環(huán)境下所使用的方法。當(dāng)有多個方法可供選擇時,GOMS中并不認(rèn)為這是一個隨機(jī)的選擇,而是盡量預(yù)測可能會使用哪個方法,這就需要根據(jù)特定用戶、系統(tǒng)狀態(tài)、目標(biāo)細(xì)節(jié)來預(yù)測。CMOS模型GOMS模型的應(yīng)用:(1)選出最高層的用戶目標(biāo)。實(shí)例中EDITING任務(wù)的最高層目標(biāo)是EDIT-MANUSCRIPT。(2)寫出具體的完成目標(biāo)的方法,即激活子目標(biāo)。實(shí)例中EDIT-MANUSCRIPT的方法是完成目標(biāo)EDIT-UNIT-TASK,這也同時激活了子目標(biāo)EDIT-UNIT-TASK。(3)寫出子目標(biāo)的方法。這是一個遞歸的過程,一直分解到最底層操作時停止。從實(shí)例的層次描述中可以了解到如何通過目標(biāo)分解的遞歸調(diào)用獲得子目標(biāo)的方法,如目標(biāo)EDIT-UNIT-TASK分解為ACQUIRE-UNIT-TASK和EXECUTE-NUIT-TASK兩個子目標(biāo),并通過順序執(zhí)行這兩個子目標(biāo)的方法完成目標(biāo)EDIT-UNIT-TASK。然后通過遞歸調(diào)用,又得到了完成目標(biāo)ACQUIRE-UNIT-TASK的操作序列,這樣這層目標(biāo)也就分解結(jié)束;而目標(biāo)EXECUTE-NUIT-TASK又得到了子目標(biāo)序列,因此還需要進(jìn)一步分解,直到全部成為操作序列為止。

基建層次模型

擊鍵層次模型(KLM)可對用戶執(zhí)行情況進(jìn)行量化預(yù)測,能夠比較使用不同策略完成任務(wù)的時間。量化預(yù)測的主要好處是便于比較不同的系統(tǒng),以確定何種方案能最有效地支持特定任務(wù)。擊鍵層次模型的內(nèi)容

Card等人在KLM模型上施加的約束是KLM模型只能應(yīng)用到一個給定的計(jì)算機(jī)系統(tǒng)和一項(xiàng)給定的任務(wù)。同時,與GOMS模型類似,KLM的應(yīng)用要求任務(wù)執(zhí)行過程中不出現(xiàn)差錯,并且完成任務(wù)的方法事先已經(jīng)確定。也就是說,KLM能夠用來預(yù)計(jì)任務(wù)差錯執(zhí)行的時間。KLM模型由操作符、編碼方法、放置M操作符的啟發(fā)規(guī)則組成。擊鍵層次模型的局限型

正如Card等人的初衷,KLM模型高度關(guān)注人機(jī)交互方面,其目的是為執(zhí)行標(biāo)準(zhǔn)任務(wù)的時間進(jìn)行建模。但KLM沒有考慮到錯誤、學(xué)習(xí)型、功能性、回憶、專注程度、疲勞、可接受性等問題。不過Card等人也指出,雖然KLM模型沒有考慮用戶出錯的情況,但是如果知道彌補(bǔ)方法,KLM模型同樣可以預(yù)測執(zhí)行彌補(bǔ)任務(wù)的時間。

動態(tài)特性建模

狀態(tài)轉(zhuǎn)移網(wǎng)絡(luò)

狀態(tài)轉(zhuǎn)移網(wǎng)絡(luò)(StateTransitionNetwork,STN)用于描述用戶和系統(tǒng)之間的對話已經(jīng)有很多年的歷史,它的第一次使用可以追溯到20世紀(jì)60年代后期,在20世紀(jì)70年代后期開發(fā)為一種工具。STN可被用于探討菜單、圖標(biāo)和工具條等屏幕元素,還可以展示對外圍設(shè)備的操作。狀態(tài)轉(zhuǎn)移網(wǎng)絡(luò)最常用的形式是狀態(tài)轉(zhuǎn)移圖(StateTransitionDiagram,STD)。狀態(tài)轉(zhuǎn)移圖是有向圖,圖中的節(jié)點(diǎn)表示系統(tǒng)的各種狀態(tài),圖中的邊表示狀態(tài)之間可能的轉(zhuǎn)移。狀態(tài)轉(zhuǎn)移圖示例

事件1使用戶從狀態(tài)1到狀態(tài)2,事件4使用戶從狀態(tài)3’到狀態(tài)2’。STN還可以表示手柄、鼠標(biāo)等外圍設(shè)備的操作。這樣可以幫助設(shè)計(jì)者確定的設(shè)備在應(yīng)用中是否合適,還可以指導(dǎo)用于新型界面的指點(diǎn)設(shè)備的開發(fā)。

三態(tài)模型

三態(tài)模型能夠揭示設(shè)備固有的狀態(tài)和狀態(tài)之間的轉(zhuǎn)移。交互設(shè)計(jì)者使用設(shè)備的三態(tài)模型幫助確定任務(wù)和設(shè)備的相互關(guān)系,并為特定的交互設(shè)計(jì)選擇合適的I/O設(shè)備,不具有特定任務(wù)所需的狀態(tài)的設(shè)備在設(shè)計(jì)過程中的初期就被排除在外。

指點(diǎn)設(shè)備可以使用被稱為三態(tài)模型的特殊STN圖來表示所具有的特殊狀態(tài),即跟蹤運(yùn)動、拖動運(yùn)動和無反饋運(yùn)動。其中:無反饋運(yùn)動(S0):某些指點(diǎn)設(shè)備的運(yùn)動可以不被系統(tǒng)跟蹤,如觸摸屏上的筆和手指,一段無反饋運(yùn)動后,指點(diǎn)設(shè)備可以重新位于屏幕上的任意位置。跟蹤運(yùn)動(S1):鼠標(biāo)被系統(tǒng)跟蹤,鼠標(biāo)被表示為光標(biāo)位置。拖動運(yùn)動(S2):通過鼠標(biāo)拖放,可以操縱屏幕元素。

鼠標(biāo)的三態(tài)模型用戶可以拖動鼠標(biāo),系統(tǒng)會跟蹤鼠標(biāo)的運(yùn)動并通過更新光標(biāo)反映鼠標(biāo)的位置和運(yùn)動的速度,這是狀態(tài)1,即跟蹤狀態(tài)。如果光標(biāo)處在一個文件的圖標(biāo)上,這時用戶可以按下鼠標(biāo)鍵(Windows平臺下是鼠標(biāo)左鍵)并移動鼠標(biāo),文件夾圖標(biāo)會在屏幕范圍內(nèi)被拖動,這是狀態(tài)2,即拖動狀態(tài)(拖動通常會跟隨著鼠標(biāo)松開動作,鼠標(biāo)鍵松開后圖標(biāo)會重新處于光標(biāo)所在的位置)。鼠標(biāo)的放置操作使模型返回到跟蹤狀態(tài)。拖動狀態(tài)到跟中狀態(tài)之間的動作被定義為拖放操作。

鼠標(biāo)的三態(tài)模型觸碰板的三態(tài)模型

現(xiàn)在考慮與圖形輸入相連接的手寫筆或用于某些特定屏幕的光筆。手寫筆或光筆可以離開屏幕自由地移動,并不影響屏幕上的任何對象,即狀態(tài)0,一旦用戶將手寫筆觸到屏幕,手寫筆的移動就會被跟蹤,即進(jìn)入狀態(tài)1。手寫筆或光筆還可以選擇屏幕上的對象,并且拖動它們在屏幕上移動,即進(jìn)入狀態(tài)2。狀態(tài)2可以通過多種方法實(shí)現(xiàn),如壓力敏感的筆尖或筆上嵌入的按鈕等。因此手寫筆或光筆可以認(rèn)為是居于上述三個狀態(tài)的設(shè)備。圖是手寫筆的三態(tài)模型。

手寫筆的三態(tài)模型THANKYOU人機(jī)交互技術(shù)碰撞檢測概述目錄Catalog1教學(xué)目的與要求2重點(diǎn)、難點(diǎn)3教學(xué)進(jìn)程安排4課后學(xué)習(xí)任務(wù)布置教學(xué)目的與要求01.本章將介紹碰撞檢測的概念及其使用方法,讓學(xué)生了解碰撞檢測技術(shù)的作用并掌握使用方法。目的:教學(xué)目的與要求學(xué)生能夠了解并掌握碰撞檢測技術(shù)的使用方法,完成課堂的學(xué)習(xí)與討論,并且能夠積極完成課后作業(yè)。要求:重點(diǎn)、難點(diǎn)02.碰撞檢測的條件,覆寫碰撞檢測的函數(shù)。重點(diǎn):重點(diǎn)、難點(diǎn)碰撞檢測和觸發(fā)檢測的區(qū)別。難點(diǎn):教學(xué)進(jìn)程安排03.碰撞檢測的意義在現(xiàn)實(shí)世界中,兩個物體不可能共享同一個空間區(qū)域。在虛擬環(huán)境的人機(jī)交互過程中,為了提升用戶交互過程中的沉浸感,同樣需要在虛擬場景中實(shí)現(xiàn)兩個不可穿透物體間互不共享同一空間區(qū)域的體驗(yàn)。若未對虛擬場景中的虛擬物體添加碰撞檢測,虛擬物體之間在相互碰撞之后會出現(xiàn)“穿越”現(xiàn)象,這將會帶來極差的用戶體驗(yàn)。碰撞檢測的模擬要產(chǎn)生碰撞必須為交互對象添加剛體(Rigidbody)和碰撞器,剛體可以讓物體在物理影響下運(yùn)動。碰撞體是物理組件的一類,它要與剛體一起添加到交互對象上才能觸發(fā)碰撞。如果兩個剛體相互撞在一起,除非兩個對象有碰撞體時物理引擎才會計(jì)算碰撞,在物理模擬中,沒有碰撞體的剛體會彼此相互穿過。碰撞檢測的條件物體發(fā)生碰撞的必要條件兩個物體都必須帶有碰撞器(Collider),其中一個物體還必須帶有Rigidbody剛體。在unity3d中,能檢測碰撞發(fā)生的方式有兩種,一種是利用碰撞器,另一種則是利用觸發(fā)器。碰撞檢測的接口函數(shù)在Unity3d中,主要有以下接口函數(shù)來處理這兩種碰撞檢測:碰撞信息檢測1.當(dāng)進(jìn)入碰撞器時:MonoBehaviour.OnCollisionEnter(CollisioncollisionInfo){}2.當(dāng)停留在碰撞器里:MonoBehaviour.OnCollisionStay(CollisioncollisionInfo){}3.當(dāng)退出碰撞器時:MonoBehaviour.OnCollisionExit(CollisioncollisionInfo){}觸發(fā)信息檢測1.當(dāng)進(jìn)入觸發(fā)器時:MonoBehaviour.OnTriggerEnter(Colliderother){}2.當(dāng)退出觸發(fā)器時:MonoBehaviour.OnTriggerExit(Colliderother){}3.當(dāng)停留在觸發(fā)器中:MonoBehaviour.OnTriggerStay(Colliderother){}以上這六個接口都是MonoBehaviour的函數(shù),由于我們新建的腳本都繼承這個MonoBehaviour這個類。所以我們的腳本里面可以覆寫這六個函數(shù)。碰撞檢測和觸發(fā)檢測的區(qū)別物體發(fā)生碰撞的必要條件:兩個物體都必須帶有碰撞器(Collider),其中一個物體還必須帶有Rigidbody剛體。在unity3D中,能檢測碰撞發(fā)生的方式有兩種,一種是利用碰撞器,另一種則是利用觸發(fā)器。1、碰撞檢測碰撞器:包含了很多種類,比如:BoxCollider(盒碰撞體),MeshCollider(網(wǎng)格碰撞體)等,這些碰撞器應(yīng)用的場合不同,但都必須加到GameObjecet身上。2、觸發(fā)檢測觸發(fā)器:只需要在檢視面板中的碰撞器組件中勾選IsTrigger屬性選擇框。如果既要檢測到物體的接觸又不想讓碰撞檢測影響物體移動或要檢測一個物件是否經(jīng)過空間中的某個區(qū)域這時就可以用到觸發(fā)器。課后學(xué)習(xí)任務(wù)布置04.課后學(xué)習(xí)任務(wù)布置通過所學(xué)的觸發(fā)檢測或碰撞檢測做一個小案例。THANKYOU人機(jī)交互技術(shù)射線檢測目錄Catalog1教學(xué)目的與要求2重點(diǎn)、難點(diǎn)3教學(xué)進(jìn)程安排4課后學(xué)習(xí)任務(wù)布置教學(xué)目的與要求01.本章將介紹射線檢測技術(shù)的應(yīng)用,讓學(xué)生了解射線檢測的原理和用法。目的:教學(xué)目的與要求學(xué)生完成課堂的學(xué)習(xí)與討論,并且能夠積極完成課后作業(yè)。要求:重點(diǎn)、難點(diǎn)02.射線檢測的概念和程序結(jié)構(gòu)。重點(diǎn):重點(diǎn)、難點(diǎn)射線檢測的發(fā)散性使用。難點(diǎn):教學(xué)進(jìn)程安排03.概念在開發(fā)中,尤其是跟模型與交互的時候,都會用到射線檢測。射線:射線是3D世界中一個點(diǎn)向一個方向發(fā)射的一條無終點(diǎn)的線,在發(fā)射軌跡中與其他物體發(fā)生碰撞時,它將停止發(fā)射。用途:射線應(yīng)用范圍比較廣,多用于碰撞檢測。在射擊游戲中,我們就可以使用射線來代替子彈的作用。相關(guān)APIRayCamera.main.ScreenPointToRay(Vector3pos):返回一條射線Ray從攝像機(jī)到屏幕指定一個點(diǎn)。RayCamera.main.ViewportPointToRay(Vector3pos):返回一條射線Ray從攝像機(jī)到視口(視口之外無效)指定一個點(diǎn)。Ray射線類RaycastHit:光線投射碰撞信息boolPhysics.Raycast(Vector3origin,Vector3direction,floatdistance,intlayerMask):當(dāng)光線投射與任何碰撞器交叉時為真,否則為假。boolPhysics.Raycast(Rayray,Vector3direction,RaycastHitouthit,floatdistance,intlayerMask):在場景中投下可與所有碰撞器碰撞的一條光線,并返回碰撞的細(xì)節(jié)信息()。boolPhysics.Raycast(Rayray,floatdistance,intlayerMask):當(dāng)光線投射與任何碰撞器交叉時為真,否則為假。boolPhysics.Raycast(Vector3origin,Vector3direction,RaycastHitouthit,floatdistance,intlayerMask):當(dāng)光線投射與任何碰撞器交叉時為真,否則為假。注意:如果從一個球型體的內(nèi)部到外部用光線投射,返回為假。參數(shù)理解Origin:

在世界坐標(biāo)中射線的起始點(diǎn)direction:

射線的方向distance:

射線的長度hit:

使用c#中out關(guān)鍵字傳入一個空的碰撞信息類,然后碰撞后賦值??梢缘玫脚鲎参矬w的

transform,rigidbody,point等信息。layerMask:只選定Layermask層內(nèi)的碰撞器,其它層內(nèi)碰撞器忽略。選擇性的碰撞。RaycastHit[]RaycastAll(Rayray,floatdistance,intlayerMask):

投射一條光線并返回所有碰撞,也就是投射光線并返回一個RaycastHit[]結(jié)構(gòu)體。代碼結(jié)構(gòu)以攝像機(jī)所在位置為起點(diǎn),創(chuàng)建一條向下發(fā)射的射線:

課后學(xué)習(xí)任務(wù)布置學(xué)生分組討論、并總結(jié)射線檢測還有哪些用法。THANKYOU人機(jī)交互技術(shù)人機(jī)交互技術(shù)鼠標(biāo)及鍵盤交互動作項(xiàng)目介紹1項(xiàng)目展示2項(xiàng)目設(shè)計(jì)開發(fā)3總結(jié)4目錄CONTENTS項(xiàng)目介紹1當(dāng)我們需要做一個PC端的軟件時,免不了需要用鼠標(biāo)以及鍵盤進(jìn)行交互,控制,輸入等,有了這些功能之后,我們的軟件才能稱之為一款完整的軟件。而這也是我們學(xué)習(xí)開發(fā)的基礎(chǔ)功能,接下來我們就看一下在Unity中如何調(diào)用鍵盤和鼠標(biāo)在軟件中完成交互。項(xiàng)目展示2觀看視頻項(xiàng)目實(shí)現(xiàn)3項(xiàng)目實(shí)現(xiàn)Step1,打開unity3d,新建3D項(xiàng)目。項(xiàng)目實(shí)現(xiàn)Step2,在場景中新建一個text用來顯示我們的操作信息。項(xiàng)目實(shí)現(xiàn)Step3,新建腳本KeyboardController,在Update函數(shù)中我們通過Input方法可以調(diào)用

鍵盤上的所有按鍵。其中主要有GetKeyDown、GetKey和GetKeyUp分別代表

按鍵被按下、按著以及松開三種狀態(tài)。項(xiàng)目實(shí)現(xiàn)Step4,掛載代碼運(yùn)行場景進(jìn)行測試。項(xiàng)目實(shí)現(xiàn)Step5,繼續(xù)編寫代碼,使用Input調(diào)用鼠標(biāo)點(diǎn)擊事件,同理有按下,按著和抬起三種狀態(tài),在此不一一贅述,而GetMouseButton方法所帶的參數(shù)中0,1,2分別代表著鼠標(biāo)的左鍵、右鍵、和中鍵。項(xiàng)目實(shí)現(xiàn)Step6,再次運(yùn)行場景進(jìn)行測試。項(xiàng)目實(shí)現(xiàn)Step7,新建代碼OnMouseController,使用函數(shù)方法來用來獲取點(diǎn)擊物品事件。項(xiàng)目實(shí)現(xiàn)Step8,刪除代碼KeyboardController。新建Cube,Sphere,Capsule等3D物體,給他們重命名并掛載代碼后進(jìn)行測試。總結(jié)4總結(jié)通過以上的學(xué)習(xí),我們了解了鼠標(biāo)事件和鍵盤事件的調(diào)用方法。我們根據(jù)以上學(xué)習(xí)的基礎(chǔ),可以搭配自己的想法以及其他知識點(diǎn),就可以做出一個有趣的小作品了。總結(jié)起來,可以大致分為兩種,一、使用Input方法在Update函數(shù)中調(diào)用鼠標(biāo)和鍵盤事件。二、使用OnMouseDown等函數(shù)獲取鼠標(biāo)點(diǎn)擊某個物體的時間。THANKYOU人機(jī)交互技術(shù)AI尋路系統(tǒng)(入門)目錄Catalog1教學(xué)目的與要求2重點(diǎn)、難點(diǎn)3教學(xué)進(jìn)程安排4課后學(xué)習(xí)任務(wù)布置教學(xué)目的與要求01.本章將介紹自動尋路的作用和基礎(chǔ)用法。目的:教學(xué)目的與要求學(xué)生能夠根據(jù)學(xué)習(xí)內(nèi)容進(jìn)行AI尋路的實(shí)現(xiàn),完成課堂的學(xué)習(xí)與討論,并且能夠積極完成課后作業(yè)。要求:重點(diǎn)、難點(diǎn)02.掌握地形烘焙和尋路組件的使用重點(diǎn):重點(diǎn)、難點(diǎn)掌握非水平地形尋路的烘焙技術(shù)。難點(diǎn):教學(xué)進(jìn)程安排03.尋路簡介Unity3d中的導(dǎo)航網(wǎng)格Navmesh廣泛應(yīng)用于動態(tài)物體實(shí)現(xiàn)自動尋路的功能,屬于人工智能的一種,通過此功能可以使智能AI自行繞過障礙或翻越墻體等,最終到達(dá)目標(biāo)地點(diǎn)或找到目標(biāo)對象,是一種既方便,有簡單,同時還很實(shí)用的功能。尋路功能的組成尋路功能主要由三方面組成:1.Navigation地形烘焙。地形烘焙的作用是限定尋路范圍,只有在已經(jīng)經(jīng)過烘焙的地形上,AI才可以通過尋路找到目標(biāo)。2.NavmeshAgent尋路組件。其次,NavmeshAgent是控制AI進(jìn)行尋路的組件,只有掛載了NavmeshAgent組件的AI會通過尋路尋找他的目標(biāo)。3.代碼控制。最后,通過代碼控制可以確定NavmeshAgent尋路的目標(biāo),也可以限定其尋路的條件。Navigation烘焙說明Navigation不只是使AI可以在水平地形上尋路那么簡單,它還有許多的屬性值,通過調(diào)節(jié)這些值我們可以調(diào)整地形烘焙時的高度,半徑,角度等,其中如果有坡度較大的地形需要烘焙,我們只需要將

Bake中的MaxSlope值調(diào)至最大值就可以讓AI自行爬坡了。除此外,還可以通過調(diào)節(jié)其他數(shù)值實(shí)現(xiàn)AI的跳躍墜落等行為,請同學(xué)們自行探索。課后學(xué)習(xí)任務(wù)布置實(shí)現(xiàn)水平地形的尋路功能,探討Navigation屬性值的作用。THANKYOU人機(jī)交互技術(shù)AI尋路系統(tǒng)(進(jìn)階)目錄Catalog1教學(xué)目的與要求2重點(diǎn)、難點(diǎn)3教學(xué)進(jìn)程安排4課后學(xué)習(xí)任務(wù)布置教學(xué)目的與要求01.本章將更深入地介紹AI尋路系統(tǒng),更有深度的探究尋路組件的其他功能。目的:教學(xué)目的與要求學(xué)生能夠深入了解尋路系統(tǒng),完成課堂的學(xué)習(xí)與討論,并且能夠積極完成課后作業(yè)。要求:重點(diǎn)、難點(diǎn)02.在尋路系統(tǒng)入門的基礎(chǔ)上進(jìn)行進(jìn)階學(xué)習(xí),學(xué)習(xí)尋路系統(tǒng)的其他功能。重點(diǎn):重點(diǎn)、難點(diǎn)尋路系統(tǒng)的整理。難點(diǎn):教學(xué)進(jìn)程安排03.梯子效果爬坡功能允許攀爬的只有最大限度為60°的坡度,當(dāng)面對更大的坡度時,MaxSlope就已經(jīng)無法滿足我們的需求了。這時我們需要用到一個新的組件:OffMeshLink。我們只需要給梯子添加OffMeshLink組件并掛載底端和頂端的空物體,我們就可以完成爬梯子的效果,實(shí)現(xiàn)垂直爬坡了。尋路路線限制到此為止我們學(xué)習(xí)的尋路都是在同一片烘焙區(qū)域,通過最短路徑自行尋找目標(biāo)的AI行為,但有時候我們需要限定不同的AI可以走的路線進(jìn)行區(qū)分,這種情況我們就需要用到Navigation組件的Areas功能了。在Areas中我們可以添加烘焙區(qū)域名稱,添加后Object中可以給烘焙區(qū)域限定區(qū)域名稱,最后就可以在NavmeshAgent里面選擇行走區(qū)域來限定AI的行走路線了。道路阻斷在尋路系統(tǒng)中,只要AI開始尋路,就會“一去不回頭”。要怎么做才能在它尋路過程中對它進(jìn)行中途阻止呢,我們只需要在相應(yīng)的路段上添加一個名為NavMeshObstacle的組件,這一段路就會阻止AI通過了,再通過代碼控制該組件的顯隱性,就可以控制AI尋路時,相應(yīng)路段的阻斷和連通了。課后學(xué)習(xí)任務(wù)布置學(xué)生分組討論,并整理進(jìn)階尋路實(shí)現(xiàn)過程的筆記。人機(jī)交互技術(shù)群組行為教學(xué)目的與要求1重點(diǎn)難點(diǎn)2教學(xué)進(jìn)程安排3課后學(xué)習(xí)任務(wù)布置4目錄CONTENTS教學(xué)目的與要求1教學(xué)目的與要求目的:本章將介紹群組行為功能的實(shí)現(xiàn)方法,讓學(xué)生了解群組行為的實(shí)現(xiàn)流程。要求:學(xué)生能夠使用群組行為模擬AI行為,完成課堂的學(xué)習(xí)與討論,并且能夠積極完成課后作業(yè)。重點(diǎn)難點(diǎn)2重點(diǎn)難點(diǎn)重點(diǎn):在本章中我們要學(xué)會力學(xué)的簡單運(yùn)算,組的管理方法,完成對整個群組的控制。難點(diǎn):整理邏輯的整理,權(quán)重的把控。教學(xué)進(jìn)程安排3群組行為的作用群組行為隊(duì)列聚集分離力學(xué)計(jì)算距離檢測碰撞組管理當(dāng)有一群的人或者動物與環(huán)境進(jìn)行真實(shí)的交互的時候,我們要想模擬出最真實(shí)的行為,就要讓群體的行為符合群體的特征。在不加入unity3d環(huán)境中的人工智能的情況下,用簡單的視覺模糊來進(jìn)行鳥群的行為模擬。主要方法隊(duì)列的力力學(xué)計(jì)算聚集的力距離檢測分離的力碰撞組管理整個集體的前進(jìn)方向恒定,不會因?yàn)閭€體而進(jìn)行變動。每個個體都會向集體匯聚,不會脫離大部隊(duì),分散太遠(yuǎn)。每個個體都會與其他個體保持一定距離,不會非常靠近。通過牛頓第二定律計(jì)算每一個個體的前進(jìn)方向和速度每一個個體通過距離檢測判斷自身附近是否有其他個體將附近的同類放到一個碰撞組中進(jìn)行管理。群組行為的實(shí)現(xiàn)定義并初始化變量:publicTransformtarget;publicVector3velocity=Vector3.forward;privateVector3startVelocity;publicVector3SumForce=Vector3.zero;voidStart(){target=GameObject.Find("Target").transform;startVelocity=velocity;}ForceCompute(){SumForce=Vector3.zero;

Lisan_Force=Vector3.zero;Duilie_Partner.Clear();//清除隊(duì)列數(shù)據(jù)

Collider[]colliders=Physics.OverlapSphere(transform.position,Lisan_Distance);//physicis之后代碼的作用:用來檢測以某個位置為半徑發(fā)射一個圓以檢測球體內(nèi)有哪些游戲物體(用來做物理檢測,得到的結(jié)果是coliider的集合)for(inti=0;i<colliders.Length;i++){if(colliders[i]!=null&&colliders[i].gameObject!=this.gameObject){Duilie_Partner.Add(colliders[i].gameObject);}}for(inti=0;i<Duilie_Partner.Count;i++){//計(jì)算位置距離

Vector3dir=transform.position-Duilie_Partner[i].transform.position;Lisan_Force+=dir.normalized/dir.magnitude;//計(jì)算所有鄰居向前的向量和

}if(Duilie_Partner.Count>0){Lisan_Force*=Lisan_Weight;SumForce+=Lisan_Force;}}定義計(jì)算合力的函數(shù)并添加分離的力:群組行為的實(shí)現(xiàn)定義隊(duì)列的力變量:publicfloatDuilie_Distance=6;//檢測距離publicList<GameObject>Duilie_Partner=newList<GameObject>();publicfloatDuilie_Weight=3;publicVector3Duilie_Force=Vector3.zero;SumForce=Vector3.zero;

Lisan_Force=Vector3.zero;Duilie_Partner.Clear();//清除隊(duì)列數(shù)據(jù)

Collider[]colliders=Physics.OverlapSphere(transform.position,Lisan_Distance);//physicis之后代碼的作用:用來檢測以某個位置為半徑發(fā)射一個圓以檢測球體內(nèi)有哪些游戲物體(用來做物理檢測,得到的結(jié)果是coliider的集合)for(inti=0;i<colliders.Length;i++){if(colliders[i]!=null&&colliders[i].gameObject!=this.gameObject){Duilie_Partner.Add(colliders[i].gameObject);}}for(inti=0;i<Duilie_Partner.Count;i++){//計(jì)算位置距離Vector3dir=transform.position-Duilie_Partner[i].transform.position;Lisan_Force+=dir.normalized/dir.magnitude;//計(jì)算所有鄰居向前的向量和

}if(Duilie_Partner.Count>0){Lisan_Force*=Lisan_Weight;SumForce+=Lisan_Force;}}在合力計(jì)算中添加隊(duì)列的力:群組行為的實(shí)現(xiàn)定義聚集的力變量:publicTransformtarget;publicVector3velocity=Vector3.forward;privateVector3startVelocity;publicVector3SumForce=Vector3.zero;voidStart(){target=GameObject.Find("Target").transform;startVelocity=velocity;}ForceCompute(){SumForce=Vector3.zero;

Lisan_Force=Vector3.zero;Duilie_Partner.Clear();//清除隊(duì)列數(shù)據(jù)

Collider[]colliders=Physics.OverlapSphere(transform.position,Lisan_Distance);//physicis之后代碼的作用:用來檢測以某個位置為半徑發(fā)射一個圓以檢測球體內(nèi)有哪些游戲物體(用來做物理檢測,得到的結(jié)果是coliider的集合)for(inti=0;i<colliders.Length;i++){if(colliders[i]!=null&&colliders[i].gameObject!=this.gameObject){Duilie_Partner.Add(colliders[i].gameObject);}}for(inti=0;i<Duilie_Partner.Count;i++){//計(jì)算位置距離

Vector3dir=transform.position-Duilie_Partner[i].transform.position;Lisan_Force+=dir.normalized/dir.magnitude;//計(jì)算所有鄰居向前的向量和

}if(Duilie_Partner.Count>0){Lisan_Force*=Lisan_Weight;SumForce+=Lisan_Force;}}在合力計(jì)算中添加聚集的力:群組行為的實(shí)現(xiàn)在合力中添加恒定飛行速度的力變量:ForceCompute(){…………//保持恒定飛行速度的力

Vector3engineForce=startVelocity-velocity;SumForce+=engineForce*0.1f;Vector3targetDir=target.position-transform.position;SumForce+=(targetDir.normalized-transform.forward)*speed*10f;}publicfloatTimer=0;publicfloatcheckTime=0.2f;publicfloatmass=1;voidUpdate(){Timer+=Time.deltaTime;if(Timer>checkTime){ForceCompute();//每0.2秒調(diào)用一次函數(shù)

Timer=0;}velocity+=(SumForce/mass)*Time.deltaTime*0.1f;transform.rotation=Quaternion.Slerp(transform.rotation,Quaternion.LookRotation(velocity),Time.deltaTime*3);transform.Translate(transform.forward*Time.deltaTime*velocity.magnitude,Space.World);}穩(wěn)定頻率調(diào)用計(jì)算合力的函數(shù):課后學(xué)習(xí)任務(wù)布置4課后學(xué)習(xí)任務(wù)布置學(xué)生分組討論,整理群組行為實(shí)現(xiàn)過程的筆記并理清整個功能的邏輯。THANKYOU人機(jī)交互技術(shù)Human-ComputerInteractionTechnology——基于LeapMotion的《夢幻森林》案例學(xué)習(xí)目的和要求1

重點(diǎn)和難點(diǎn)2《夢幻森林》LeapMotion和完善3

課后總結(jié)4目錄CONTENTS學(xué)習(xí)指導(dǎo)建議重點(diǎn)掌握LeapMotion基本手勢控制函數(shù),能夠替換不同的手部模型控制場景中的物體將LeapMotion與Unity3D進(jìn)行連接,能夠理解相關(guān)的參數(shù)設(shè)定,并且能夠熟練的掌握位移、換色等基本操作強(qiáng)化練習(xí)LeapMotion的使用,通過相關(guān)的粒子特效案例增加趣味性、通過群組行為的控制使其和其他知識單元能夠緊密結(jié)合,并且能夠掌握相關(guān)的可穿戴設(shè)備的優(yōu)缺點(diǎn),參加各項(xiàng)學(xué)科賽事本章的學(xué)習(xí)建議在實(shí)驗(yàn)室的環(huán)境中進(jìn)行,能夠結(jié)合相應(yīng)的設(shè)備進(jìn)行不斷的測試,同時本章的案例源代碼在本書的配套光盤中,課后的案例和課程回顧等保存在本書的慕課資源中,建議讀者先學(xué)習(xí)本章的基礎(chǔ)知識,在最后通過線上教學(xué)資源進(jìn)行不斷的提升和課程的內(nèi)容的加強(qiáng)練習(xí)。

學(xué)習(xí)目的和要求1學(xué)習(xí)目的和要求目的:

通過對《夢幻森林》案例的分析和學(xué)習(xí),了解完整項(xiàng)目的制作過程,學(xué)習(xí)交互設(shè)計(jì)思路。將素材與技術(shù)更好的結(jié)合。目的:

通過對《夢幻森林》案例的分析和學(xué)習(xí),了解完整項(xiàng)目的制作過程,學(xué)習(xí)交互設(shè)計(jì)思路。將素材與技術(shù)更好的結(jié)合。要求:

基于《夢幻森林》案例的了解結(jié)合對LeapMotion的學(xué)習(xí),設(shè)計(jì)并創(chuàng)新新的交互創(chuàng)意和ji'yu玩法。

重點(diǎn)和難點(diǎn)2重點(diǎn)和難點(diǎn)重點(diǎn):

掌握LeapMotion的基礎(chǔ)知識,學(xué)會靈活運(yùn)用,完善項(xiàng)目。難點(diǎn):

對LeapMotion的運(yùn)用,研究出符合自己主題的功能,設(shè)計(jì)合理有趣。LeapMotion和項(xiàng)目完善3LeapMotion和項(xiàng)目完善本節(jié)主要是對《夢幻森林》案例的最后一個交互模塊LeapMotion交互和整個項(xiàng)目最好完善部分的分析,在《夢幻森林》的LeapMotion中,用簡單的交互方式,實(shí)現(xiàn)蝴蝶群對LeapMotion手部的追蹤。LeapMotion和項(xiàng)目完善首先,先導(dǎo)入LeapMotion,進(jìn)入場景測試設(shè)備是否正常。,正常狀態(tài)如下圖所示將3D場景導(dǎo)入到LeapMotion場景中,導(dǎo)入蝴蝶資源包,添加進(jìn)入場景中。LeapMotion和項(xiàng)目完善LeapMotion和項(xiàng)目完善以下腳本負(fù)責(zé)控制蝴蝶的群組行為控制。usingSystem.Collections;usingSystem.Collections.Generic;usingunityEngine;publicclassBufferController:MonoBehaviour{publicfloatspeed=1;publicVector3velocity=Vector3.forward;privateVector3startVelocity;publicTransformtarget;publicVector3sumForce=Vector3.zero;

LeapMotion和項(xiàng)目完善

publicfloatm=10;publicfloatseparationDistance=3;publicList<GameObject>seprationNeighbors=newList<GameObject>();publicfloatseparationWeight=1;//publicVector3separationForce=Vector3.zero;//分離的力publicfloatalignmentDistance=6;publicList<GameObject>alignmentNeighbors=newList<GameObject>();publicfloatalignmentWeight=3;publicVector3alignmentForce=Vector3.zero;//隊(duì)列的力publicfloatcohesionWeight=1;publicVector3cohesionForce=Vector3.zero;//聚合的力publicfloatcheckInterval=0.2f;publicfloatanimRandomTime=2f;

privateAnimationanim;

LeapMotion和項(xiàng)目完善

privatevoidStart(){target=GameObject.Find("Target").transform;startVelocity=velocity;InvokeRepeating("CalcForce",0,checkInterval);anim=GetComponentInChildren<Animation>();Invoke("PlayAnim",Random.Range(0,animRandomTime));}voidPlayAnim(){anim.Play();}voidCalcForce(){print("calcForce");sumForce=Vector3.zero;separationForce=Vector3.zero;

LeapMotion和項(xiàng)目完善//計(jì)算分離的力seprationNeighbors.Clear();Collider[]colliders=Physics.OverlapSphere(transform.position,separationDistance);foreach(Collidercincolliders){if(c!=null&&c.gameObject!=this.gameObject){

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論