文档库 最新最全的文档下载
当前位置:文档库 › JAVA在VRML中的引用

JAVA在VRML中的引用

JAVA在VRML中的引用
JAVA在VRML中的引用

研究开发

电脑知识与技术虚拟现实(VR)技术诞生于上个世纪的60年代,经过几十年的发展,现已演变为一门集技术、理论与硬件设备为一体的热门信息研究领域。九十年代出现的VRML,被广泛应用于创建各种虚拟世界的实际工作之中,它被认为是构造网络三维世界的最理想通用标准。VRML是一种基于文本的描述性语言,它可以用来在网络上建立用户所需的各种三维立体虚拟世界。VRML是继HTML之后的第二代WEB语言。VRML具有分布式多媒体集成性、平台无关=可交互性等等多个特征。VRML文件的扩展名为.wrl,每一个VRML文件都有若干个场景(scene)构成,而每一个场景又有许多节点(node)和事件(event)组成。通过路由(ROUTE)语句将这些节点和事件连结起来就可形成各种简单的动态效果。建立完整的

VRML文件,通过那些专门支持VRML文件播放功能的浏览器如

Cosmoplay或IE4.0以上版本对其进行渲染和理解,就能将栩栩

如生的虚拟世界展现在我们的眼前。

JAVA是一种专门为网络设计应用而开发的面向对象语言。JAVA与VRML同样都是上个世纪90年代研制发展的,时至今日,JAVA已演变为兼备解释型语言和编译型语言两方面的优点,

并有算法简单、运行效率高、可移植性强等及安全性稳定其他语言唢呐无法与之相匹敌的特点,这使得JAVA成为INTERNET上最受欢迎的开发和编程语言。

在许多领域如旅游景点的仿真、虚拟三维城市的漫游、大气环境模型的制作、及河道地形显示等方面VRML以得到最大程度的运用,但有一个问题值得重视:那就是我们只是利用VRML所包含的标准节点去创建场景,只能实现静态虚拟效果,即使用

VRML本身所支持的路由将各个事件联结到一起也只停留在一些

简单交互式处理功能。当要生成功能强大的虚拟场景时,对于这些复杂动画、事件众多的场景建立往往需要描述几十个,甚至上百个节点才能完成,这对于开发着来说是一项极其繁琐的的工作过程。可是值得欣慰的是VRML事件体系的Script节点中的URL域可以将JAVA进行导入。可以将JAVA编写的程序以脚本的形式完整的引用在URL域里。高效率的JAVA语言可以编制出非常具有复杂度的程序,JAVA在VRML中的出现,使得VRML的能实

现功能大大扩展和加强,能够按照用户的要求来设置各种精度高、灵活性强的场景参数,使VRML的实现了一些很重要高级交互功能。

1JAVA程序与VRML场景间的连接

JAVA对VRML的扩展和支持是通过JAVA的附加封装类(class)而实现的.类是所有相似对象的状态变量与行为构成的模板(template)或原型(prototype)。而每一个类和界面的名字又包含在可以避免冲突出现的包(package)中.通过这些类,VRML中的场景,在接受和发送事件等各个环节都可以被JAVA访问。

目前,JAVA对VRML场景的访问控制有以下两种方式1.1SAI(scriptAuthoringInterface)脚本编程接口方式

在此方式中,JAVA充当JAVASCRIPT或VRMLSCRIPT等脚本语言。其所在的SCRIPT节点定义如下:

Script{eventIneventTypeeventName<定义输入事件

eventOuteventTypeeventName〈

定义输出事件fieldfieldTypeNamefieldNameinitialValue〈

定义私有域URL'example.class'〈

程序模块列表}在Script节点中,事件输入(eventIn)和事件输入(eventOut)主要用来接受和发送事件的处理值;私有(域(field)是标识VRML场景里被JAVA所访问控制的节点;URL域值设置了用JAVA语言编写的类example.class,在这个类中定义了intialize、shutdown#enentProcessed#processEvent#processEvent五个特定的成员函数,浏览器会自动调用这几个函数:保护getField和getEventOut函数来获取节点的私有域和事件输出。开发者只需要提供域或事件的名称,这些函数就能给出Field派生类的实例。另外,调用Browser类定义的createVrmlFromString等标准成员函数,

都可以实现动态、改变节点、事件路由生成的功能。

1.2EAI(ExternalAuthoringInterface)外部编程接口来访问这种方式主要用于Applet和VRML场景都内置在HTML(超文本标记语言)页面上时的连接。在此情况下,Applet主要利用封装在Vrml.external包中的Broseser类来控制访问场景Browser类的基类IBroser的接口类,它封装有VRML场景中除了SAI可使

收稿日期:2005-11-30

作者简介:王宏福(1980-),男,回族,河南安阳市人,助教,大学本科学历,主要从事虚拟现实技术以及应用研究;马辉(1978-),男,河南安阳市人,助教,主要从事虚拟现实相关领域的研究。

JAVA在VRML中的引用

王宏福,马辉

(河南安阳师范学院计科系,河南安阳455000)

摘要:VRML作为虚拟现实技术的一个里程碑式的立体建模语言,在Internet上得到了日益广泛的应用。伴随着Java语言的引入,使得VRML的虚拟场景所能实现的功能更加强大。本文通过实例来论述Java在控制所创建场景实现机制以及Java与VRML相互结合所带来的现实意义。

关键词:VRML;JAVA;场景;节点;事件中图分类号:TP311

文献标识码:A

文章编号:1009-3044(2006)05-0163-02

TheIntroductionoftheJAVALanguageintheVRML

WANGHong-fu,MA-Hui

(DeptofComputerScience,AnyangTeachersCollege,Anyang455000,China)

Abstract:VRML,amodelinglanguageservingasamilestoneofthevirtualrealitytechnique,iswidelyusedontheInternet.TheintroductionoftheJavalanguagemakesVRML’svirtualscenebeachievedevenbetter.ThisthesisdiscussestheaccomplishingmethodwhichJavausedtocontrolthesceneestablishedbyVRMLthroughexamples,andtherealisticsignificancebroughtaboutbytheperfectcombinationofJavaandVRML.

Keywords:VRML;JAVA;Sceneevent;Node

163

用的函数外,还有getNode()函数直接获得场景中使用DEF语句定义的节点。与SAI方式类似,EAI中也可调用getEventOut、getEventIn来获取那些事件的输入、输出的实例,从而引起场景的变化。

2VRML中引用JAVA的实例

2.1静态VRML场景的制作

在VRML中,我们可以利用VRML本身所制定的节点来创建长方体、圆锥体、球体等几何造型之外,还可用IndexedFaceset、In-edxedLineset、Pointset构造那些不规则的复杂几何造型。现在我们以IndexedFaceset索引面集节点创建的扇子造型为例,并将此扇子造型进行旋转,这样就可以生成一个复杂而有趣的虚拟现实场景。

代码如下:

DEFbeijingBackground{skyColor0.20.60.7}#定义场景背景色

DEFbianhuanTransform{#定义bianhuan为最外层编组节点children[#以下是含有的节点列表

DEFtouchTouchSensor{

}#定义一个名为touch的接触传感器

DEFsphereSphereSensor{}#定义一个名为sphere的球体传感器节点

DEFfanTransform{rotation0020.786#定义基本造型名为fan的扇子节点

children[

Shape{

appearanceAppearance{

materialMaterial{#定义扇子的材质

diffuseColor0.60.50.7

emissiveColor0.60.30.5

transparency0.8

shininess0.8

specularColor0.40.60.3

ambientIntensity0.8}

textureImageTexture{#给扇子表面添加图片纹理

url"flower.jpg"}}

geometryDEFfaceIndexedFaceSet{}#定义几何节点face}]}

]}

#通过以下路由(ROUTE)语句将球体传感器sphere发送到bianhuan编组节点使其沿球体表面产生旋转

ROUTEcylinder.rotation_changedTObianhuan.rotation

2.2动态复杂功能的实现

DEFxuanzhuanScript{#定义脚本节点xuanzhuan

url"rotation.class"#定义用JAVA编写的rotation.class脚本

eventInSFBooltochched#入事件

eventOutMFNodeRotIt#出事件}

ROUTEtouch.isActiveTOxuanzhuan.tochched

ROUTExuanzhuan.RotItTObianhuan.addChildren

利用URL与"rotation.class"类连接,而脚本xuanzhuan中tochched作为事件入口,RotIt则作为事件出口。当用户按下鼠标时并对准对象后,ROUTE“touch.isActiveTOxuanzhuan.tochched”使touch变为TURE值。

由EAI的访问方式可知,getEvent、getOut得到的事件输入、输出实例中,只是保持最近一次事件值。所以,假如得到随机事件值,我们需要借助于JAVA程序。代码如下:

importjava.util.*

importvrml*;

importvrml.node.*;

importvrml.field.*;

#线程接口

publicclassRotationextendsScriptimplementsRunnable{

MFNodeRotIt;

Intk;

FloatR=1.0f;

ThreadclockThread=null;

#进行初始化,向RotIt赋值

Publicvoidinitialize(){

RotIt=(MFNode)getEventOut(“RotIt”);}

#循环语句,使其循环100次

publicvoidrun(){

for(k=0;k<100;k++){

R=(float)k/100*3.14;

Rotation();

Try{Thread.slee(5);}

Catch(InterruptedExceptione){}}}

#开始线程

publicvoidstart(){

if(clockThread==null){

try{

clockThread=newThread(this);

clockThread.start();}}

#停止条件

publicvoidstop(){

try{

clockThread.stop;

clockThread.=null;}}catch(Exceptione){}}

#重复增加动态节点

publicvoidrotation(){

StringRotatin1=

“Transform{“+

“rotation010”;

StringRotatin2=

“children[“+

“Transform{rotation0020.786

children[“+

Shape{“+

appearanceAppearance{“+

materialMaterial{“+

diffuseColor0.60.50.7“+

}“+

}“+

geometryDEFfaceIndexedFaceSet{}“+

}“+

]“+

}“+

]“+}“+;

#获取VRML浏览器的句柄,产生新的节点

Browserbrowser=getBrowser();

BaseNodebaseNodes[];

#借口函数createVrmlFrontString生成新的几何形体并用IF语句进行检测

Try{

BaseNodes=browser.createVrmlFrontString(Rotation1+R+Rota-tion2);

#设立新的RotIt取值

If(null!=baseNodes){

RotIt.setValue(baseNodes);}}}

catch(Exceptionex{

ex.printStackTrace();}}

#接收定义事件,可获的与输入事件同名touched变量的值

(下转第166页)

164

电脑知识与技术

(上接第164页)

publicvoidprocessEvent(Eventev){

if(ev.getName().equals(‘touched”)){

start();

}}

当VRML文件接收到JAVA函数返回的值后就会触发bian-huan节点,这样就完成了我们最初的目的,通过浏览器即可看到一个逼真的扇子旋转变化的虚拟动态世界了。

3结束语

基于WEB的文件,已由最初的文字、图文并茂、声音以至到视频的二维显示应用,发展到今天的三维立体显示技术。而当VRML有JAVA的强有力的支持下,VRML所带来的各种感官享受和冲击,必将未来的WWW上得到更为广泛的应用。

参考文献:

[1]陈守满.虚拟现实技术在教学中的应用[J].计算机应用,2002,22(4):111-112.

[2]段新昱.虚拟现实基础与VRML编程[M].北京:高等教育出版社,2004.

[3]张茂军.虚拟现实系统.北京:科学出版社,2001.

[4]朱杰杰.基于VRML的虚拟教学研究与现状[J].计算机应用,2002,22(8):97-98.

}paint(g);//绘图形

3动画文字的程序设计

将动画效果加进网页,需要先将Applet小程序在编译后,利用浏览器通过使用特定的HTML标记运行。即Applet可利用浏览器提供的环境,如窗口、事件处理、图像表示及用户界面等去开发小应用程序。

另外,对需要改变的信息可作为配置参数由HTML文件给Applet传送,这样能避免Applet源代码因数据的改变而要反复编译。

主要的程序代码如下:

importjava.awt.*;

importjava.applet.*;

publicclasscsblwzextendsAppletimplementsRunnable{

Stringstr=null;

intdirect=1;

intHrad=12;

intVrad=12;

Threadthread=null;

charwords[];

intphase=0;

ImageIOB;

GraphicsIOG;

Colorcolors[];

privateFontf;

privateFontMetricsfm;

publicvoidinit(){

Stringparam=null;

str=getParameter("word");

setBackground(Color.gray);

words=newchar[str.length()];

str.getChars(0,s.length(),words,0);

IOB=createImage(getSize().width,getSize().height);

IOG=IOB.getGraphics();

f=newFont("TimesRoman",Font.BOLD,36);

fm=getFontMetrics(f);

IOG.setFont(f);

floath;

colors=newColor[str.length()];

for(inti=0;i<str.length();i++){

h=((float)i)/((float)str.length());

colors[i]=newColor(Color.HSBtoRGB(h,1.0f,1.0f));

}}

publicvoidstart(){//线程启动

if(thread==null){

thread=newThread(this);

thread.start();

}}

publicvoidstop(){

if(thread!=null){

thread.stop();

thread=null;

}}

publicvoidrun(){

while(thread!=null){

try{

Thread.sleep(200);

}catch(InterruptedExceptione){}//异常处理

repaint();

}}

publicvoidupdate(Graphicsg){

intx,y;

doubleang;

//略

paint(g);//显示图形

publicvoidpaint(Graphicsg){

g.drawImage(IOB,0,0,this);

}}

下面是运行该Applet需要的csblwz.html的内容:

<HTML>

<HEAD>

<TITLE>一个动画的例子</TITLE>

</HEAD>

<BODY>

<hr>

<appletcode="csblwz.class"width=500height=100>

<paramname=wordvalue="动态文字的示例">

</applet>

</BODY>

</HTML>

4总结

在Applet动画设计中不是简单地将动画循环放在paint()中,而应生成一个独立的动画线程来完成图像的显示和更新。在屏幕上画出一系列的帧来造成运动的感觉,从而达到显示动画的目的。另外,用重载update()方法输出图像并消除画面的闪烁现象,使动画程序优化。

参考文献:

[1]Java函数实用手册[M],冶金工业出版社.

[2]Java语言程序设计[M],中国铁道出版社.

[3]Java图形用户界面设计与实例,冶金工业出版社.

166

电脑知识与技术

虚拟现实技术考试题答案

虚拟现实技术试题(一) 1、虚拟现实是一种高端人机接口,包括通过视觉、听觉、触觉、嗅觉和味觉等多种感觉通道的实时模拟和实时交互。 2、虚拟现实与通常CAD系统所产生的模型以及传统的三维动画是不一样的。 3、虚拟现实技术应该具备的三个特征:Immersion(沉浸) Interaction(交互) Imagination(想象) 4、一个典型的虚拟现实系统的组成主要由头盔显示设备\多传感器组\力反馈装置 5、从虚拟现实技术的相关概念可以看出,虚拟现实技术在人机交互方面有了很大的改进。常被称之为“基于自然的人机界面”计算机综合技术,是一个发展前景非常广阔的新技术。 6、根据虚拟现实对“沉浸性”程度和交互程度的不同,可把虚拟现实系统划分为四种典型类型沉浸式\桌面式\增强式\分布式。 7、有关虚拟现实的输入设备主要分为两类。三维位置跟踪器 8、在虚拟现实系统的输入设部分,基于自然交互设备主要有力反馈设备\数据手套\三维鼠标. 9、三维定位跟踪设备是虚拟现实系统中关键设备之一,一般要跟踪参与对象的宽度、高度、深度、俯仰角(pitch)、转动角(yaw)和偏转角(roll),我们称为6自由度(6DOF)。 10、空间位置跟踪技术有多种,常见的跟踪系统有机械跟踪器\电磁跟踪器\超声波跟踪器\惯性跟踪器\光学跟踪器。 11、所谓力反馈,是运用先进的技术手段将虚拟物体的空间无能运动转变成物理设备的机械运动,使用户能够体验到真实的力度感和方向感,从而提供一个崭新的人机交互界面。该项技术最早应用于尖端医学和军事领域。 12、立体显示技术是虚拟现实系统的一种极为重要的支撑技术。要实现立体的显示。现已有多种方法与手段进行实现。主要有互补色\偏振光\时分式\光栅式\真三维显示 . 12、正是由于人类两眼的视差,使人的大脑能将两眼所得到的细微差别的图像进行融合,从而在大脑中产生有空间感的立体物体视觉。 13、HMD(Head_Mounted_Display),头盔式显示器,主要组成是显示元件\ 光学系统 14、洞穴式立体显示装置(CAVE Computer Automatic Virtual Enviroment)系统是一套基于高端计算机的多面式的房间式立体投影解决方案,CAVE主要组成由高性能图形工作站\投影设备\跟踪系统\声音系统。 13、三维视觉建模又可细分为几何建模、物理建模、行为建模技术,分别是基于物体的几何信息来描述物体模型的建

JAVA类和对象的关系

1、JAVA中的参数传递问题(理解内存图) 基本类型:形式参数的改变对实际参数没有影响 引用类型:形式参数的改变直接影响实际参数 2、面向对象(理解,升就业班问说说什么是面向对象和思想特点) 1、面向对象(从三点回答) A面向过程是以函数为基础,完成各种操作,强调的是过程 B面向对象以对象为基础,完成各种操作,强调的是对象,结果 C面向对象是基于面向过程的 2、面向对象的思想特点: a)是一种更符合人们思考习惯的思想 b)把复杂的事情简单化 c)把我们从执行者变成了指挥者 3、举例: a)买电脑 b)洗衣做饭 c)旅游 d)把大象装进冰箱(伪代码体现) 4、事物是如何体现的 a)属性有哪些特征名词提取法 b)行为有哪些功能 5、类与对象的关系(掌握) 把事物转换成类 A:成员变量 定义在类中,方法外 B:成员方法 和以前的区别是去掉static 把这个说完还没有说道类与对象的概念,对不对 类:是相关的属性和行为的集合,集合就是一堆东西,是一个抽象的概念 对象:是某种事物的具体的存在,具体的表现形式 举例: 学生:类 对象:小明 6、案例 A学生类 B手机类 C汽车类(在这里画了内存图,有空看一下) 7、如何使用呢 a)创建对象 i.格式 a)类名变量= new 类名() b)使用成员变量和成员方法

i.对象名.成员变量 ii.对象名.成员方法 8、成员变量和局部变量的区别(理解) A 定义位置 成员变量:在类中方法外 局部变量,在类中方法中,或者方法上的形式参数 B 初始化的区别 成员变量:有默认的初始化值 局部变量:无 C 存储位置 成员变量:堆随着对象的存在而存在 局部变量:栈随着方法的存在而存在 9、匿名对象 a)概念:没有名字的对象 b)使用场景 i.当对象中的方法只掉用一次的情况下使用(一般不用,测试时使用)new Student().sayHello(); ii.匿名对象作为实际参数传递

VRML三维立体空间的着色

VRML三维立体空间着色 一、VRML三维立体空间的着色,无论是立体空间背景,光线的颜色,还是立体空间中的各种物体,它们的颜色都是由3种基本颜色红、绿、蓝(RGB)组合而成。红、绿、蓝(RGB)3种基本颜色对应3个浮点数,它们的域值分别在0.0 ~ 1.0之间。红、绿、蓝3种颜色组成各种各样姹紫嫣红的“颜色”,如表。 二、Shape 空间物体造型模型节点 Shape节点定义了一个VRML立体空间造型所具有的几何尺寸、材料、纹理和外观特征等,这下特征定义了VRML虚拟空间中创建的空间中造型。Shape节点是VRML的核心节点,VRML的所有立体空间造型均使用Shape节点创建,所以Shape节点在VRML中显得尤为重要。此外,在VRML中,要特别注意大小写,即区分域名、节点的大小写。

Shape模型节点系统层次图 Shape 节点的语法定义: Shape { appearance NULL #exposedField SFNode geometry NULL #exposedField SFNode } 域值类型注释 ExposedfField为暴露域;SFNode域含有一个单节点。 域名与域值详解 1 appearance域的域值定义了一个节点Appearance,Appearance节点定义了物体造型的外观,包括纹理映像、纹理坐标变换及外观的材料节点。Appearance域的默认值为NULL,表示其外观为白色光。 2 geometry域的域值定义了一个几何造型节点,包括Box节点、Cone节点、cylinder节点和sphere节点等原始几何结构。Geometry域的默认值为NULL,表示没有任何几何造型节点。 Appearance节点用来定义物体造型的外观属性,通常作为Shape节点的appearance域的域值Appearance节点语法定义: Appearance{ material NULL #外观的材料节点 texture NULL #纹理映像 textureTransform NULL #纹理坐标变换 } 三、material节点空间造型外观节点设计 Material节点描述立体空间造型外观,造型的外观设计包括造型的颜色、发光效果、明暗、

类和对象练习题

类和对象 一、选择题 1、下面对方法的作用描述不正确的是:( d ) A、使程序结构清晰 B、功能复用 C、代码简洁 D、重复代码 2、方法定义的变量:( b ) A 、一定在方法所有位置可见B、可能在方法的局部位置可见 C、在方法外可以使用 D、在方法外可见 3、方法的形参:(a) A、可以没有 B、至少有一个 C、必须定义多个形参 D、只能是简单变量 4、方法的调用:(c) A、必须是一条完整的语句 B、只能是一个表达式 C、可能是语句,也可能是表达式 D、必须提供实际参数 5、return 语句:( d) A、不能用来返回对象 B、只可以返回数值 C、方法都必须含有 D、一个方法中可以有多个return 语句 6、void 的含义:(d) A、方法体为空 B、方法体没有意义 C、定义方法时必须使用 D、方法没有返回值 7、main()方法的返回类型是:( c ) A 、boolean B、int C、void D、static 8、方法重载所涉及的方法:( a ) A、有相同的名字 B、参数个数必须不同 C、参数类型必须不同 D、返回类型必须不同 9、下面关于类和对象之间关系的描述,正确的是( c ) A、联接关系B、包含关系C、具体与抽象的关系D、类是对象的具体化 10、下面关于java中类的说法哪个是不正确的( c ) A、类体中只能有变量定义和成员方法的定义,不能有其他语句。 B、构造方法是类中的特殊方法。 C、类一定要声明为public的,才可以执行。

D、一个java文件中可以有多个class定义。 11、下列哪个类声明是正确的( d) A、public void H1{…} B 、public class Move(){…} C、public class void number{} D、public class Car{…} 12、下面的方法声明中,哪个是正确的(c) A、public class methodName(){} B、public void int methodName(){} C、public void methodName(){} D、public void methodName{} 13、下述哪些说法是不正确的?( b ) A、实例变量是类的成员变量 B、实例变量是用static关键字声明的 C、方法变量在方法执行时创建 D、方法变量在使用之前必须初始化 14、下面对构造方法的描述不正确是( b)。 A、系统提供默认的构造方法 B、构造方法可以有参数,所以也可以有返回值 C、构造方法可以重载 D、构造方法可以设置参数 15、定义类头时,不可能用到的关键字是( b)。 A、class B、private C、extends D、public 16、下列类头定义中,错误的是( )。 A、public x extends y {...} B、public class x extends y {...} C、class x extends y implements y1 {...} D、class x {...} 17、设A为已定义的类名,下列声明A类的对象a的语句中正确的是( ) 。 A、float A a; B、public A a=A( ); C、A a=new int( ); D、static A a=new A( ); 18、设i , j为类X中定义的int型变量名,下列X类的构造方法中不正确的是( a )。 A、void X(int k ){ i=k; } B、X(int k ){ i=k; } C、X(int m, int n ){ i=m; j=n; } D、X( ){i=0;j=0; } 19、有一个类A,以下为其构造方法的声明,其中正确的是

JAVA类与对象及数组习题及答案

JAV A类和对象及数组习题 一、选择题 (1)下列构造方法的调用方式中,正确的是(D )--原因:在通过new实例化一个类对象时系统会自动调用该类相应的构造方法。 A.按照一般方法调用B.由用户直接调用 C.只能通过new自动调用D.被系统调用 (2)在Java中,能实现多重继承效果的方式是(C )--原因:一个类可以同时实现多个接口。Java接口反映了对象较高层次的抽象,还弥补了Java只支持单继承的不足,可用它来完成多继承的一些功能。 A.内部类B.适配器C.接口D.同步 (3)int型public成员变量MAX_LENGTH,该值保持为常数100,则定义这个变量的语句是( D )—原因:java中定义常量用关键字final来定义。 A.public int MAX_LENGTH=100 B.final int MAX_LENGTH=100 C.public const int MAX_LENGTH=100 D.public final int MAX_LENGTH=100 (4)下列叙述中,正确的是( A )—原因:Java严格区分大小写,所以变量number 与Number不相同;Java 中的注释方式除了“//”行注释之外还有段注释“/*-------*/”和文档注释/**-------*/。Java源文件中的public类只能有一个。 A. 声明变量时必须指定一个类型 B. Java认为变量number与Number相同 C. Java中唯一的注释方式是"//" D. 源文件中public类可以有0或多个 (5)下列叙述中,错误的是( D )—原因:子类继承父类,并且可以有自己的成员变量和成员方法。所以可以认为子类是父类的扩展。

VRML介绍--虚拟现实造型语言

VRML介绍--虚拟现实造型语言 VRML是“Virtual Reality Modeling Language”的缩写形式,意思是“虚拟现实造型语言”。 熟悉WWW的人们都知道,受HTML语言的局限性,VRML之前的网页只能是简单的平面结构,就算Java语言能够为WWW增色不少,但也仅仅停留在平面设计阶段,而且实现环境与参与者的动态交互是非常烦琐的。于是,VRML就应运而生了。第一代Web是以HTML为核心的二维浏览技术,第二代Web是以VRML为核心的三维浏览技术。第二代Web把VRML与HTML、Java、媒体信息流等技术有机地结合起来,形成一种新的三维超媒体Web。 RML被称为继HTML之后的第二代Web语言,它本身是一种建模语言,也就是说,它是用来描述三维物体及其行为的,可以构建虚拟境界(Virtural World),可以集成文本、图像、音响、MPEG影像等多种媒体类型,还可以内嵌用Java、ECMAScript等语言编写的程序代码。VRML的基本目标是建立因特网上的交互式三维多媒体,基本特征包括分布式、三维、交互性、多媒体集成、境界*真性等。 VRML的出现使得虚拟现实象多媒体和因特网一样逐渐走进我们的生活,简单地说,以VRML为基础的第二代万维网=多媒体+虚拟现实+因特网。第一代万维网是一种访问文档的媒体,能够提供阅读的感受,使那些对Windows风格的PC环境熟悉的人们容易使用因特网,而以VRML为核心的第二代万维网将使用户如身处真实世界,在一个三维环境里随意探究因特网上无比丰富的巨大信息资源。每个人都可以从不同的路线进入虚拟世界,和虚拟物体交互,这样控制感受的就不再是计算机,而是用户自己,人们可以以习惯的自然方式访问各种场所,在虚拟社区中“直接”交谈和交往。事实上,目前采用VRML技术取得成功的案例已经很多,例如探路者到达火星后的信息就是利用VRML在因特网上即时发布的,网络用户可以以三维方式随探路者探索火星。 VRML的工作原理 VRML是一种用在Internet 和Web超链上的,多用户交互的,独立于计算机平台的,网络虚拟现实建模语言。虚拟世界的显示、交互及网络互连都可以用VRML 来描述。

JAVA类与对象习题

JAVA类与对象习题 一、写出一个类People,并由该类做基类派生出子类Employee和Teacher。其中People 类具有name、age两个保护成员变量,分别为String类型、整型,且具有公有的getAge 成员函数,用于返回age变量的值。Employee类具有保护成员变量empno,Teacher类有teano和zc成员变量。 二、(1)创建Rectangle类,添加属性width、height; (2)在Rectangle类中添加两种方法计算矩形的周长和面积; (3)编程利用Rectangle输出一个矩形的周长和面积 三、(1)设计一个User类,其中包括用户名、口令等属性以及构造方法(至少重载2 个)。获取和设置口令的方法,显示和修改用户名的方法等。编写应用程序测试User 类。 (2)定义一个student类,其中包括用户名、姓名、性别、出生年月等属行以及init()——初始化各属性、display()——显示各属性、modify()——修改姓名等方法。实现并测试这个类。 (3)从上题的student类中派生出Granduate(研究生)类,添加属性:专业subject、导师adviser。重载相应的成员方法。并测试这个类。 四、项目名称:Bank Account Management System 银行账户管理系统简称BAM 练习1:(面向对象基础语法) 写一个账户类(Account), 属性: id:账户号码长整数 password:账户密码 name:真实姓名 personId:身份证号码字符串类型 email:客户的电子邮箱 balance:账户余额 方法: deposit: 存款方法,参数是double型的金额 withdraw:取款方法,参数是double型的金额

Java类与对象实验报告

实验报告 一、实验项目:类与对象 二、实验目的: 1. 学会使用类来封装对象的属性和功能 2. 掌握类变量与实例变量,以及类方法与实例方法的区别 3. 掌握使用package和import语 三、实验器材:计算机、Java编程软件JCreator 四、实验原理(或仪器装置图): 1. 类与对象 类是组成Java程序的基本要素。类封装了一类对象的状态和方法。类是用来定义对象的模板。 类声明 class 类名{ 类体 } 对象的声明 一般格式为: 类的名字对象名字; 定义对象引用后,用new运算符完成对象的创建工作,分配存储空间,并对其初始化。 变量名=new 类名([构造方法实参表]); 对象的使用 访问成员的基本语法形式如下:

对象名.变量成员名 对象名.方法成员名([实际参数表]) 2.成员变量和局部变量 成员变量格式:[修饰符] 变量类型变量名[=初值]; 成员方法: 格式:[修饰符] 返回值的数据类型方法名(参数1,参数2,…) { 语句序列; return[表达式]; } 类中定义的变量是成员变量,而方法中定义的变量是局部变量。 3. 构造方法 构造方法是一种特殊的方法,创建对象时被自动调用。与一般的方法不同,它没有返回值类型的说明,方法体中也不可以用return语句带回返回值。构造方法的方法名与类名相同在构造方法中可以通过this关键字调用该类中其他的构造方法。 4.包 包是Java语言中有效地管理类的一个机制。 ①通过关键字package声明包语句。package 语句作为Java源文件的第一条语句,指 明该源文件定义的类所在的包。package语句的一般格式为:package 包名; ②import 语句:使用import 语句可以引入包中的类。 五、实验步骤及数据记录: 1.定义一个圆柱体类Cylinder,并创建相应的对象,然后计算圆柱体的底面积与体积。

虚拟现实技术及应用

虚拟现实技术及应用 Virtual Reality Technology and Application 课程编号:30420132 学分数:2 开课单位:计算机技术与自动化学院 课内总时数:40(其中实验14学时) 任课教师姓名及职称:张大坤教授、刘坤良讲师 开课学期:第2学期教学方式:讲授+实践 一、教学要求及目的 本课程是介绍计算机学科前沿技术的一门任选课。着重介绍20世纪90年代末兴起的虚拟现实技术的发展概况,并讲述最有影响力的基于Internet的虚拟现实建模语言VRML,使学生能采用VRML语言创建一个多彩的三维虚拟世界。 二、课程的主要内容 1.虚拟现实技术概论 人机交互技术的历史与发展 虚拟现实技术的基本概念 虚拟现实系统的分类 虚拟现实技术的主要应用领域 2.实现VR系统的三维交互设备 VR的三维跟踪传感设备 VR的立体显示设备 手数字化设备 其他交互设备 3.实现VR系统的相关技术 实时显示处理技术 三维虚拟声音 触摸和力反馈技术 三维建模技术 4.虚拟现实建模语言VRML基础知识 VRML语言简介 VRML的编辑器和浏览器 VRML的基础知识 VRML基本的节点介绍

5.设计VRML的虚拟世界 设计故事梗概 创建构件 传感器、事件及路由 动画和脚本 修改与调试 6.实践环节 实验1:VRML编程环境及简单形体创建 实验2:简单的虚拟场景的搭建 实验3:在虚拟场景中实现动态效果 实验4:创建一个实时漫游的虚拟场景 综合测试(考核) 三、教材及主要参考书 1、虚拟现实系统,张茂军,科学出版社,2001 2、虚拟现实技术,申蔚等,北京希望电子出版社,2002,9 四、预修课程 计算机图形学、多媒体技术 五、适用专业、范围 计算机应用技术专业、计算机软件与理论专业

java类与对象

5.2.1 编程实验1:基本类定义 本实验要求在封闭实验课中在教师指导下完成。 1. 实验目的 本实验旨在巩固学生对《Java语言程序设计》中第5章内容的掌握。在这个实验中学生将练习: ? 基本类的定义。 ? 使用自定义的基本类创建对象,并进行调用。 在强化练习中,学生将练习: ? 给基本类中增加属性 ? 在测试类中将增加的属性向控制台打印输出 2. 问题描述 编写一个类,描述学生的学号、姓名、成绩。学号用整型,成绩用浮点型,姓名用String类型。 编写一个测试类,输入学生的学号和成绩,并显示该学号的学生姓名,以及成绩。 3. 示例输出 4. 程序模板 class Student{ /* 此处创建三个属性。 */ } public class T1_Student{ public static void main(String[] args){ /* 先构造Student对象,然后分别为对象的属性赋值 最后打印输出对象的各个属性。 */ } } 5. 解答提示 1)在基本类的定义中描述学生类,学生的学号、成绩和姓名作为学生类的属性来描述。2)在测试类中写main方法,作为程序的入口进行运行,在main方法中创建学生对象,并

给对象的各个属性赋予具体值。 3)在测试类中用System.out.println()方法将属性的具体值输出到控制台,完成程序的输出结果要求。 6. 强化练习 1)给学生类添加性别属性,取值为boolean类型,用true表示男,用false表示女。 2)在测试类中输出学生的姓名、学号、成绩的同时,输出性别为:男或女。 5.2.2 编程实验2:构造方法 本实验要求在封闭实验课中在教师指导下完成。 1. 实验目的 本实验旨在巩固学生对《Java语言程序设计》中第5章内容的掌握。在这个实验中学生将练习: ? 定义多个基本类 ? 构造方法的定义 ? 构造方法的重载 在强化练习中,学生将练习: ? 构造方法的多个重载 ? 只通过指定长和宽来定制桌子。 2. 问题描述 编写一个类,描述桌子,包括以下几种属性:长、宽、高、颜色。并且使该类具有这样的功能:在定制桌子(即创建桌子对象时),就可以同时指定桌子的长宽高来订制。也可以同时指定长、宽、高、颜色来订制,也可单独指定桌子颜色来订制。 并编写一个测试类测试这几种定制方法。 5.2.3 编程实验3:访问器方法 本实验要求在封闭实验课中在教师指导下完成。 1. 实验目的 本实验旨在巩固学生对《Java语言程序设计》中第5章内容的掌握。在这个实验中学生将练习: ? 编写基本类,包括私有属性 ? 给基本类添加访问器方法,从而限制属性的读、写。 ? 测试类的编写,测试访问器方法对属性的读、写限制。 在强化练习中,学生将练习: ? 在基本类中添加私有属性。 ? 给该私有属性分别添加get和set访问器方法进行读、写。 2. 问题描述 编写一个类,描述银行账户,包括收入、支出和账户余额三种属性,同时包括对这三种

虚拟现实技术实验报告----创建VRML基本造型

虚拟现实技术实验报告----创建VRML基本 造型 华北水利水电学院虚拟现实技术实验报告 20XX~20XX学年第二学期 20XX 级计算机科学与技术专业班级: 20XX153 学号: 20XX15320 姓名:李晓娜 实验二创建VRML基本形体 一、实验目的: 掌握创建虚拟现实复杂形体的方法与步骤,掌握虚拟现实背景环境、光照、纹理贴图、视点的创建与使用。 二、试验内容: 1)虚拟现实复杂组合形体的构建 2)虚拟现实背景建模与特殊场景效果的实现 3)虚拟现实光照与纹理贴图 4)虚拟现实视点的创建与使用 三、试验步骤: 1)虚拟现实复杂组合形体的构建 1、设置背景颜色,skyColor 1 1 1,即白色。 2、构造Shape造型节点。设置外观,材质漫反射颜色为:,即红色;几何造型为Box,其size为:10 5。 3、创建坐标变换节点。位置变换translation为- 0 ,旋转rotation为:1 0 0 ,子结点为挤压造型,外观颜色

设置为红色,其中crossSection [0 0 0 2 0 2 ] spine [ 0 0 0 9 0 0] solid 为:FALSE。 4、构造坐标变换节点,translation 为:2 - - rotation为: 0 1 0 其子结点children为文本造型,字符串为:“20XX15320”。 5、构造坐标变换节点,translation为:-4 -5 ,其子结点children中定义shape节点造型,命名为:leg,材质漫反射颜色为红色,几何造型节点为:Box,其size为: 6 6、连续创建3个坐标变换节点,分别设置其translation 值,子结点children引用leg。 7、创建桌子下面的横木。构造坐标变换节点,translation为:-4 -6 0 子结点children中为shape节点命名为:hengmu,外观漫反射颜色为:红色;几何造型为:Box,大小size为: 3。然后再构造一个坐标变换节点,子结点引用hengmu。 2)虚拟现实背景建模与特殊场景效果的实现 1、背景建模。构建空间全景:skyAngle [ ] skyColor [ 0 0 1 0 1 1 ] groundAngle [ ] groundColor [ ] 2、创建树坐标变换节点,命名为Tree,子节点项目children中的值为老师所给的素材shu, 第 1 页共 4 页 以备以后调用。

JAVA类与对象的创建

试验四 类和对象的创建 一.类的定义 类是组成Java程序的基本要素。类封装了一类对象的状态和方法。类用来定义对象的模板。 类的实现包括两部分:类声明和类体。基本格式为: 修饰符class类名[extends父类名]{ /*类体的内容*/ } 1.类声明 以下是一个类声明的例子。 class People成为类声明,People是类名。习惯上,类名的第一个字母大写,但这不是必须的。类的名字不能是Java中的关键字,要符合标识符规定,即类的名字可以由字母、下划线、数字或美元符号组成,并且第一个字母不能是数字。但给类命名时,最好遵守下列规则: (1)如果类名使用拉丁字母,那么名字的首写字母使用大写字母,如Hello、Time、People等。 (2)类名最好容易识别,当类名由几个“单词”复合而成时,每个单词的首写字母使用大写,如BeijingTi me、AmericanGame、HelloChina等。 2.类体 编写类的目的是为了描述一类事物共有的属性和功能,描述过程由类体来实现。类声明之后的一对大括号“{”、“}”以及它们之间的内容称为类体,大括号之间的内容称为类体的内容。 类体的内容由两部分构成:一部分是变量的定义,用来刻画属性;另一部分是方法的定义,用来刻画功能。 下面是一个类名为“Trapezia”的类,类体内容的变量定义部分定义了4个float类型变量:top、bottom、h igh和laderArea,方法定义部分定义了两个方法:“getArea”和“setHigh”。

二.对象 1.对象的创建 创建一个对象包括对象的声明和为对象分配内存两个步骤。 (1)对象的声明。 一般格式为: 类的名字对象名字; 如: 这里People是类的名字,zhubajie是我们声明的对象的名字。 (2)为声明的对象分配内存。 使用new运算符和类的构造方法为声明的对象分配内存,如果类中没有构造方法,系统会调用默认的构造方法(你一定还记得构造方法的名字必须和类名相同这一规定),如: 例1: 「注」如果类里定义了一个或多个构造方法,那么Java不提供默认的构造方法。 2.对象的使用 对象不仅可以改变自己变量的状态,而且还拥有了使用创建它的那个类中的方法的能力,对象通过使用这些方法可以产生一定的行为。 通过使用运算符“.”,对象可以实现对自己的变量访问和方法的调用。 例2:

VRML使用说明

VRML工具使用说明 一、浏览器使用说明 1.常用快捷键 Shift+鼠标前后托动:加速行走; ALT+鼠标托动:平移; CTRL+鼠标前后托动:抬头或低头 2.导航工具栏 二、VRML语法结构 #VRML V2.0 utf8——文件头 Group——主编组结点 { Children——引出成员结点 [ Background——环境结点(FOG:大气效果;SOUND:声音结点;POINtlight\direction\spotlight:光照效果结点):空间背景(成员结点) { skyAngle[1.308,1.570]——天空角(从X负向到Y正向到X正向)[天空角1,天空角2….]Y轴正向为0,X 正向为90度即水平面 skyColor [0.5 0.1 0.9,0.0 0.5 1.0,1.0 0.5 6.0]——天空色[天空色0,….] groundAngle [1.308,1.570]——地面角(从X负向到Y负向到X正向)从Y负向开始 groundColor [0.1 0.0 0.0,0.4 0.3 0.2,0.6 0.6 0.6]——颜色由R(红)G(绿)B(蓝)三色合成,数值范围从0.0—1.0,0.0最弱,1.0最强。 frontUrl [] backUrl [] leftUrl [] rightUrl [] 此六个域用于为VRML虚拟空间分别添加前、后、左、右、上、下背景图像,以生成空 topUrl [] 间立方体全景图像背景一般可不指定topUrl和bottomUrl从而使地面和天空透过全景显 bottomUrl [] 示。 set_bind ——入事件,与isBound出事件用于进行VRML空间背景切换。Ture\false isBound——出事件,切换时为FALSE } } Fog——大气效果结点 { Color r g b ——定义雾的颜色 fogType type——密度类型,有两种值:“LINEAR”,“EXPONENTIAL”,默认为前者,在此中雾的浓度与浏览者观察物体的距离成正比,称线性雾;在后者中雾的浓度与之距离的平方成正比,也称指数雾。 visibilityRange s——规定了游览者在雾中的最大可视距离,在此距离以内的物体是可见的,且由近及远,雾的浓度渐增,之外的不可见;默认为0.0表示无穷大. set_bind ——入事件,与isBound出事件用于进行VRML空间背景切换。Ture\false isBound——出事件,切换时为FALSE } Shape——实物结点:几何造型和文字结点(成员结点) { appearance Appearance(外观域结点)

java类和对象的例子

1.实现简易计算器,分别实现两个整数、三个浮点数的加法运算.(用JAVA中的类和对象) 源码如下: package days;//包名自己修改 import java.util.Scanner;//注意别忘记导入这个包名了public class NumSum { public int add(int num1,int num2){ return num1+num2; } public double add(double num1,double num2,double num3){ return num1+num2+num3; } public static void main(String[] args) { // TODO Auto-generated method stub NumSum nc=new NumSum(); NumSum nc1=new NumSum();

//调用2个整数相加的方法 //Scanner是用键盘手动输入数字。 System.out.println("请用键盘手动输入两个整数:"); System.out.println(nc.add(new Scanner(System.in) .nextInt(),new Scanner(System.in).nextInt())); //调用3个浮点数相加的方法 System.out.println("请用键盘手动输入三个浮点数:"); System.out.println(nc1.add(new Scanner(System .in).nextDouble(), new Scanner(System.in).nextDouble( ), new Scanner(System.in).nextDouble())); } }

数字虚拟技术简介

数字虚拟技术: 数字虚拟技术是基于数字影像的虚拟在线技术,能够实现超越3D建模的真实再现能力,以达到对环境或物体对象进行逼真再现。通过后期加工制作,使文件能够在flash的支持下进行流畅、快速的播放。通过鼠标或键盘控制使画面实现全方位的视角观看,以达到身临其境的视觉感受。是博物馆、美术馆等实现数字展示的最佳方式。 数字虚拟技术特点: 1. 高清、超真实: 纯真实的虚拟三维影像技术, 有高清晰的视觉效果,具有3D建模无可比拟的真实再现能力。 2. 更强大的交互功能: a.具有很强的交互功能,导览性、交互操作性强,在flash 的支持下, 使用鼠标控制环视的方向,通过点击即可以自由从一个场馆到另一个场馆漫步, 同时360度观看各种展品。 b.还可添加各种多媒体内容,如视频,音乐,语音,动画,

游戏,浏览者不仅仅是阅览,而是参与其中,进行各种互动体验,接受丰富多彩的多媒体内容。 c.此外,针对器物等立体收藏品,我们能提供三百六十度的观看角度,让观者立体的观察文物及展品的同时记录下藏品的每一个细枝末节。 3.无障碍展示和浏览: 文件量小,无需插件,下载速度快,在Flash的支持下轻松一键超清晰高速浏览。 4.效率高、成本低 相对于3D建模技术,影像数字技术具有:制作周期短,占用硬盘空间小,回应效率高等特点,并且很容易分辨作品的细节及特点。 5.多终端、多媒介展示 支持各种终端媒介使用,支持多种多媒体格式(swf、QuickTime (mov)、JAVA、VRML、avi),不仅可在网络上轻松浏览,支持互

联网网络环境传播,支持光盘存储。还可使用电脑、触摸屏现场展示、Ipad、手机等终端随时随地浏览项目,成为展馆或博物馆等机构更有效地拓展及传播方式。 6.数字化信息的保存 数字展厅不单只还原展览场景,对于场景中的每个器物同样可以做深化展示,因此可以将展览中的每个展品的数字档案利用数字展厅有机组织起来,形成更加完整和有组织性的博物馆数字档案。

java中类与类之间的关系

类与类之间的关系对于理解面向对象具有很重要的作用,以前在面试的时候也经常被问到这个问题,在这里我就介绍一下。 类与类之间存在以下关系: (1)泛化(Generalization) (2)关联(Association) (3)依赖(Dependency) (4)聚合(Aggregation) UML图与应用代码例子: 1.泛化(Generalization) [泛化] 表示类与类之间的继承关系,接口与接口之间的继承关系,或类对接口的实现关系。一般化的关系是从子类指向父类的,与继承或实现的方法相反。 [具体表现] 父类父类实例=new 子类() [UML图](图1.1) 图1.1Animal类与Tiger类,Dog类的泛化关系 [代码表现] 1.class Animal{} 2.class Tiger extends Animal{} 3.public class Test 4.{ 5. public void test() 6. { 7. Animal a=new Tiger(); 8. } 9.} 2.依赖(Dependency) [依赖] 对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象之间主要体现为依赖关系。 [具体表现]

依赖关系表现在局部变量,方法的参数,以及对静态方法的调用 [现实例子] 比如说你要去拧螺丝,你是不是要借助(也就是依赖)螺丝刀(Screwdriver)来帮助你完成拧螺丝(screw)的工作 [UML表现](图1.2) 图1.2 Person类与Screwdriver类的依赖关系 [代码表现] 1.public class Person{ 2. /** 拧螺丝 */ 3. public void screw(Screwdriver screwdriver){ 4. screwdriver.screw(); 5. } 6.} 3.关联(Association) [关联] 对于两个相对独立的对象,当一个对象的实例与另一个对象的一些特定实例存在固定的对应关系时,这两个对象之间为关联关系。 [具体表现] 关联关系是使用实例变量来实现 [现实例子] 比如客户和订单,每个订单对应特定的客户,每个客户对应一些特定的订单;再例如公司和员工,每个公司对应一些特定的员工,每个员工对应一特定的公司 [UML图] (图1.3) 图1.3 公司和员工的关联关系 [代码表现] 1.public class Company{ 2. private Employee employee;

虚拟现实技术简介

虚拟现实简介及行业发展前景 一、虚拟现实简介 虚拟现实(Virtual Reality,简称VR,又译作灵境、幻真)是近年来出现的高新技术,也称灵境技术或人工环境。虚拟现实是利用电脑模拟产生一个三维空间的虚拟世界,提供使用者关于视觉、听觉、触觉等感官的模拟,让使用者如同身历其境一般,可以及时、没有限制地观察三度空间内的事物 百科内容: VR是一项综合集成技术,涉及计算机图形学、人机交互技术、传感技术、人工智能等领域,它用计算机生成逼真的三维视、听、嗅觉等感觉,使人作为参与者通过适当装置,自然地对虚拟世界进行体验和交互作用。使用者进行位置移动时,电脑可以立即进行复杂的运算,将精确的3D世界影像传回产生临场感。该技术集成了计算机图形(CG)技术、计算机仿真技术、人工智能、传感技术、显示技术、网络并行处理等技术的最新发展成果,是一种由计算机技术辅助生成的高技术模拟系统。 概括地说,虚拟现实是人们通过计算机对复杂数据进行可视化操作与交互的一种全新方式,与传统的人机界面以及流行的视窗操作相比,虚拟现实在技术思想上有了质的飞跃。 虚拟现实中的“现实”是泛指在物理意义上或功能意义上存在于世界上的任何事物或环境,它可以是实际上可实现的,也可以是实际上难以实现的或根本无法实现的。而“虚拟”是指用计算机生成的意思。因此,虚拟现实是指用计算机生成的一种特殊环境,人可以通过使用各种特殊装置将自己“投射”到这个环境中,并操作、控制环境,实现特殊的目的,即人是这种环境的主宰。

二、虚拟现实分类 行业概况: 北京傲唯刃道科技有限公司甘健先生认为:供求关系是一个行业能否快速发展的前提。目前来看,市场需求是很大的,而供应方面却略显不足,尤其是拥有核心知识产权,专利产品及服务质量过硬的企业并不多,行业整体缺乏品牌效应。在需求旺盛的阶段,行业需求巨大,发展前景好,这是毋庸置疑的。但如何保持行业的健康,稳定且可持续发展,需要业内企业的共同努力,尤其需要发挥吃毛求疵的研发精神,进一步提高研发技艺,降低成本,真正解决客户的实际困难,严把质量关,提供最可靠的产品及服务。当前,北京傲唯刃道科技有限公司比较关注的领域包括:(AR、增强现实、VR、虚拟现实、多点触摸、多点触控、云技术、云端、云智慧、数字沙盘、电子沙盘、数字城市、数字社区、数码城市、智慧城市、互联网城市、数字地产、虚拟旅游、数字旅游、汽车仿真、军事仿真、多媒体沙盘、互动沙盘、数字家庭、数字农业、数字地球、数字校园、地理信息系统、城市作息化、Ipad售楼、边缘融合、三维数字仿真、全息技术、数字模型、环幕投影、虚拟楼盘、文物古物复原、展品复原、电子翻书、虚拟仿真、建筑动画、三维图形、企业宣传片、仿真技术、立体投影、影视动画、非线性编辑、电脑动画、数字媒体、虚拟制造、视景仿真、人工智能、虚拟世界、产品动画、虚拟社区、增强实境、体感游戏、体感手机、、体感运动机、体感技术、体感控制、数字互动媒体、人机交互等)

虚拟现实技术考试地的题目及详解

实用标准文案 虚拟现实技术试题(一) 1、虚拟现实是一种高端人机接口,包括通过视觉、听觉、触觉、嗅觉和味觉等多种感觉通道的实时模拟和实时交互。 2、虚拟现实与通常CAD系统所产生的模型以及传统的三维动画是不一样的。 3、虚拟现实技术应该具备的三个特征:Immersion(沉浸) Interaction(交互) Imagination(想象) 4、一个典型的虚拟现实系统的组成主要由头盔显示设备\多传感器组\力反馈装置 5、从虚拟现实技术的相关概念可以看出,虚拟现实技术在人机交互方面有了很大的改进。常被称之为“基于自然的人机界面”计算机综合技术,是一个发展前景非常广阔的新技术。 6、根据虚拟现实对“沉浸性”程度和交互程度的不同,可把虚拟现实系统划分为四种典型类型沉浸式\桌面式\增强式\分布式。 7、有关虚拟现实的输入设备主要分为两类。三维位置跟踪器 8、在虚拟现实系统的输入设部分,基于自然交互设备主要有力反馈设备\数据手套\三维鼠标. 9、三维定位跟踪设备是虚拟现实系统中关键设备之一,一般要跟踪参与对象的宽度、高度、深度、俯仰角(pitch)、转动角(yaw)和偏转角(roll),我们称为6自由度(6DOF)。 10、空间位置跟踪技术有多种,常见的跟踪系统有机械跟踪器\电磁跟踪器\超声波跟踪器\惯性跟踪器\光学跟踪器。 11、所谓力反馈,是运用先进的技术手段将虚拟物体的空间无能运动转变成物理设备的机械运动,使用户能够体验到真实的力度感和方向感,从而提供一个崭新的人机交互界面。该项技术最早应用于尖端医学和军事领域。 12、立体显示技术是虚拟现实系统的一种极为重要的支撑技术。要实现立体的显示。现已有多种方法与手段进行实现。主要有互补色\偏振光\时分式\光栅式\真三维显示 . 12、正是由于人类两眼的视差,使人的大脑能将两眼所得到的细微差别的图像进行融合,从而在大脑中产生有空间感的立体物体视觉。 13、HMD(Head_Mounted_Display),头盔式显示器,主要组成是显示元件\ 光学系统 14、洞穴式立体显示装置(CAVE Computer Automatic Virtual Enviroment)系统是一套基于高端计算机的多面式的房间式立体投影解决方案,CAVE主要组成由高性能图形工作站\投影设备\跟踪系统\声音系统。 13、三维视觉建模又可细分为几何建模、物理建模、行为建模技术,分别是基于物体的几何信息来描述物体模型的建模方法、涉及到物体的物理属性,行为建模反映研究对象的物理本质及其内在的工作原理。 14、在真实感实时绘制技术中,为了提高显示的逼真度,加强真实性,常利用的方法有纹理映射\反走样\环境映射。 15、在基于几何图形的实时绘制技术实现过程中,目前有下面几种用来降低场景的复杂度,以提高三维场景的动态显示速度的方法:预测计算法、脱机计算法、3D剪切法、可见消隐法、细节层次模型法。其中细节层次模型法应用较为普

相关文档
相关文档 最新文档