CN1299244C - 一种三维场景动态建模和实时仿真的系统及方法 - Google Patents

一种三维场景动态建模和实时仿真的系统及方法 Download PDF

Info

Publication number
CN1299244C
CN1299244C CNB2005100733501A CN200510073350A CN1299244C CN 1299244 C CN1299244 C CN 1299244C CN B2005100733501 A CNB2005100733501 A CN B2005100733501A CN 200510073350 A CN200510073350 A CN 200510073350A CN 1299244 C CN1299244 C CN 1299244C
Authority
CN
China
Prior art keywords
scene
primitive
coordinate system
joint
local coordinate
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2005100733501A
Other languages
English (en)
Other versions
CN1694126A (zh
Inventor
刘宇翔
张珩
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Mechanics of CAS
Original Assignee
Institute of Mechanics of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Mechanics of CAS filed Critical Institute of Mechanics of CAS
Priority to CNB2005100733501A priority Critical patent/CN1299244C/zh
Publication of CN1694126A publication Critical patent/CN1694126A/zh
Application granted granted Critical
Publication of CN1299244C publication Critical patent/CN1299244C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本发明涉及一种三维场景动态建模和实时仿真的系统及方法,该系统包括:CPU用于建立虚拟场景模型;场景初始化单元,用于导入虚拟场景数据库文件;场景绘制单元,用于生成场景连接图并对三维模型进行初始化;以及场景更新单元,用于对场景绘制单元所绘制的场景进行更新,并且由场景绘制单元重新绘制场景。该方法包括:(A)建立虚拟场景模型;(B)导入虚拟场景数据库文件;(C)生成场景连接图;(D)对三维模型进行初始化;(E)绘制三维场景;(F)对所绘制的场景进行更新;以及(G)重新绘制场景。

Description

一种三维场景动态建模和实时仿真的系统及方法
技术领域
本发明涉及虚拟现实及可视化图形处理技术领域,特别涉及一种虚拟三维场景的动态建模和实时仿真的系统及方法。该系统和方法可以用于在三维动画的制作及虚拟场景的可视化实时仿真应用中,对三维场景中的实体进行描述和建模,以及对实体的位置及状态变化进行实时的更新,并将虚拟场景显示于输出设备(显示器、打印机等)。
背景技术
虚拟现实技术(Virtual Reality),又称灵境技术,是一种通过计算机模拟人在自然环境中视、听、动等行为的高级人机交互技术。这种技术的特点在于,计算机产生一种人为虚拟的环境,这种虚拟的环境是通过计算机图形构成的三维数字模型,编制到计算机中去产生逼真的“虚拟环境”,从而使得用户在视觉上产生一种沉浸于虚拟环境的感觉,这就是虚拟现实技术的临境感(Immersion)。虚拟现实场景是一个开放、互动的环境,虚拟现实环境可以通过控制与监视装置影响或被使用者影响,即虚拟现实技术的交互性(Interaction)。
通过计算机图形处理技术构造三维立体的虚拟场景并将其实时显示给用户是虚拟现实的关键技术和主要研究内容之一。传统三维场景的建模方法将实体主体的位置参数和实体个组成部件间的不同连接关系分开处理;通常将虚拟场景划分为背景环境和若干独立的实体,每一个实体都有其独立的位置及状态参量描述;每一个实体又被进一步分解成若干独立的位置及状态属性的组成部件;通过定义不同的连接方式(如固连、关节)描述部件间的连接方式,将这些部件拼接成完整的实体。在更新场景信息时,需要更新每一个实体的位置状态属性以及其上所有的关节状态。显而易见,当所描述的场景变得复杂时,由于实体及其部件的数量极其庞大、连接方式复杂,这种传统的场景描述方式极大地增加了建立及更新三维虚拟模型的复杂度,降低了模型处理的速度,使得在即有的计算资源下不能同时保证模拟仿真的效果和实时性要求。
发明内容
鉴于以上讨论,本发明针对传统三维图形建模方法的困难而提出了一种三维动态可视化建模和实时仿真的方法及系统以简化模型描述及降低模型仿真处理开销。
本发明的一个目的是用户可以方便地编辑场景中场景元素的种类、数量、相互间的连接关系及初始状态。
本发明的另一个目的是用户在给虚拟场景建模时不必为每一种类型的连接关系分别建立独立的数据结构,而采用统一的关节模型描述。
本发明的第三个目的是用户在更新虚拟场景时只需要更新相关关节结构的属性变量值即可将场景中各个场景元素的位置及姿态调整至所需状态。
本发明的第四个目的是在显示虚拟场景时支持多视窗显示及多相机取景,用户通过输入设备可以随时改变视点、视角、光照等参量。
本发明的这些和其它目的是通过一种关节驱动的三维场景动态建模和实时仿真的计算机系统而提供的,该计算机系统包括:CPU、内存储器、外存储器、系统总线场景数据库文件、图形加速卡、显示器、标准图形库,其特征在于:CPU用于建立虚拟场景模型,并且该系统还进一步包括:场景初始化单元,用于导入虚拟场景数据库文件;场景绘制单元,用于生成场景连接图并对三维模型进行初始化;以及场景更新单元,用于对场景绘制单元所绘制的场景进行更新,并且由场景绘制单元重新绘制场景。
本发明的这些和其它目的是通过一种关节驱动的三维场景动态建模和实时仿真的方法而提供的,该方法包括:(A)建立虚拟场景模型;(B)导入虚拟场景数据库文件;
(C)生成场景连接图;(D)对三维模型进行初始化;(E)绘制三维场景;
(F)对所绘制的场景进行更新;以及(G)重新绘制场景。
附图说明
从下面的详细说明中可显而易见的得知本发明的上述及其他目的、特征、以及优点,在附图中:
图1是根据本发明的计算机系统结构方框图;
图2是三维场景动态建模和实时仿真流程图;
图3是关节示意图。图中基元0304连接于关节0305,关节0305依附于基元0303。O(0301)是基元0303局部坐标系的原点,O1(0302)是关节0305局部坐标系的原点同时也是基元0304局部坐标系的原点。关节0305的属性参量(Tx,Ty,Tz,Rx,Ry,Rz)是O1(0302)在O(0301)坐标系中的位置和坐标轴相对转角;
图4是本发明的最佳实施例中将虚拟场景中的实体拆分成基元的示意图;
图5是本发明的最佳实施例中用关节模型描述虚拟场景中实体及其基元的位置和连接关系的示意图;
图6~8是本发明的最佳实施例中虚拟场景建模若干典型步骤的示意图;
图9是本发明的最佳实施例中场景元素对应数据项的在模型数据库文件中存储的格式;
图10是场景结构图;
图11是场景绘制单元绘制主视窗时绘制初始基元的流程图;
图12是绘制单元绘制实体基元的流程图;
图13是绘制单元绘制关节的流程图;
图14是绘制单元绘制主视窗时相机节点的流程图;
图15是绘制单元绘制相机视窗时初始基元的流程图;以及
图16是绘制单元绘制相机视窗时相机节点的流程图。
具体实施方式
对下面我们参考附图,对本发明的实施例进行详细的说明。
如图1所示,图1给出了根据本发明的计算机系统结构方框图,该计算机系统包括中央处理器(CPU)、内存、外存储器、系统总线场景数据库文件、图形加速卡、显示器、标准图形库(如OpenGL)、场景初始化单元、场景绘制单元、场景更新单元。图1所示系统的运行分为场景建模(0202)和实时仿真(0203)两个阶段。接下来,对该系统所运行的场景建模和实时仿真进行详细的描述。
图2给出了图1所示系统所执行的三维场景动态建模和实时仿真的主流程图。在步骤0204,CPU建立虚拟场景模型;在步骤0205,场景初始化单元导入虚拟场景数据库文件;在步骤0206,场景初始化单元生成场景连接图;在步骤0207,场景初始化单元对三维模型进行初始化;在步骤0208,场景绘制单元绘制三维场景;在步骤0209,场景更新单元对场景绘制单元所绘制的场景进行更新;在步骤0208,场景绘制单元重新绘制场景。
接下来,参考图3-9,对建立虚拟场景模型这一处理进行详细的描述。图4具体示了一机械臂抓取物体的虚拟场景,场景中有两个实体:机械臂和夹持物。其具体的实现方法如下:
(1)向场景中加入初始基元(或0号基元),用以表示整个场景,初始基元的局部坐标系与场景的世界坐标系始终保持一致,在建模及仿真过程中不可修改。
(2)将场景中实体的组成部件分解成的具有独立几何属性的基元,为了计算机处理方便基元一般是可以用基本的几何形状描述的简单几何体。如图4所示,将场景中的实体拆分成若干基元(0401~0416),其中初始基元0401代表场景的世界坐标系;相机0404是一个相机节点,用于相机视窗的取景;其余基元分别是机械臂实体和夹持物实体的组成基元,从逻辑上讲机械臂基座0402和夹持物基座0415分别是两个实体的主体基元。其中相机节点所定义的一种特殊实体,相机节点是一个空间上无大小,无颜色、质量属性的点,其功能在于在三维场景变化时实时记录相机节点的局部坐标系原点在世界坐标系中的坐标以及坐标轴的相对转角(或可以推出以上参量的数据结构),并可以随时导出,以提供给显示相机拍摄场景的窗口。
(3)场景实体拆分完成后,将场景中独立实体的位置状态及其组成基元相互间的各种连接关系(固连、滑动连接、转动连接)用关节模型描述以生成场景元素,关节对象通过6个状态参量——关节在其依附体局部坐标系的位置坐标(x、y、z分量)及关节局部坐标系坐标轴相对其依附体体局部坐标系坐标轴的转角(x、y、z轴转角)描述。具体方法如下:
●连接基元的局部坐标系原点与所连接关节的局部坐标系原点重合。(图3)
●独立实体主体基元的位置描述方式。独立实体是指在三维场景中与其他实体对象没有任何连接,可以自由移动的实体对象。在组成独立实体的基元中选取一个作为该实体的主体基元。主体基元连接于一个以初始基元为依附体的关节之上。由于关节局部坐标系的原点和所连接基元的局部坐标系重合,该关节位置坐标参量及坐标轴旋转分量的实际意义是主体基元在世界坐标系中的位置和基元局部坐标系坐标轴相对世界坐标系的坐标轴的转角,即独立实体的位置及姿态属性(以下简称“位姿”属性)。在模型处理过程中,独立实体所连接的关节的6个属性参量可以改变不受任何约束。(这种关节可以称为自由型连接关系)
●具有相对位置关系的实体间的连接方式描述。在实际环境中有一类实体对(群),对中的两个实体在几何上完全独立没有任何连接,但在空间位置上却存在一定的约束(如地球和太阳)。从实体对(群)中选取一个核心实体,核心实体的主体基元所连接的关节依附于初始基元,非核心实体的主体基元所连接的关节依附于核心实体上的某个基元,该关节的6个属性参量可以按需要变化,但必须满足一定的约束条件(如约束方程)。(这种关节可以成为受限型连接关系)
●基元之间固定连接的描述方式。通过固连方式连接的两个基元相对位置及转角固定(但空间上不一定相接触)。固连方式对应的关节的6个属性参量均不能改变,其初值在模型建立时预设。
●基元间滑动连接的描述方式。通过滑动方式连接的两个基元相对位置可变,转角相对固定(如火车在轨道上滑动)。滑动方式对应的关节的转角属性参量不能改变,位置属性参量可变,但必须使滑动基元与承载基元保持接触。
●基元间转动连接的描述方式。通过转动方式连接的两个基元相对位置固定,转动基元的一个或多个坐标轴可以转动(如轮子绕转轴转动)。转动方式对应的关节位置属性参量固定不变,转角属性参量的一个或多个可变。
●基元间组合方式(滑动+转动)连接的描述方式。实际中还存在一类组合连接方式,以组合方式连接的基元间可以发生滑动,也可以绕某一轴转动。组合式连接方式对应的关节的转角属性参量和位置属性参量均可变,但必须使滑动基元与承载基元保持接触。
经过上述步骤,场景中存在四类场景元素——初始基元、实体基元、相机节点和关节。为了模型处理方便在模型描述时遵循(但不局限于):关节可以依附于任何场景元素且必须依附于某一场景元素;除初始基元外任何场景元素都可以连接于关节且必须连接于某一关节。在此基础上,任何场景元素在场景中的位姿属性可以完全由其连接的关节状态参量直接确定或递推求出。如图5所示,场景中存在15个关节对象(0501~0515)。其中关节0501和0514依附于初始基元(0401),连接于这两个关节的基元分别是两个独立实体的主体基元——机械臂基座0402和夹持物基座0415,由于机械臂基座可以在平面内任意移动并可以绕纵轴转动所以关节0501属于组合型关节(滑动+转动),而由于夹持物可以被机械臂夹持到空间中任意位置,因此关节0514属于自由型关节;关节0505、0507、0509、0512、0513属于转动型关节;其余关节属于固连型关节。
(4)将步骤(1)~(5)生成的场景元素以场景元素列表的形式存入场景模型数据库文件。该文件可以是由数据库管理系统管理的数据库文件也可以是用户自定义格式的常规文件。在场景数据库文件中每一个场景元素对应的数据项至少包含以下字段:
●每一个场景元素都具有一个唯一的场景元素标识符(ID)字段;
●每一个场景元素都具有一个类型标识符(Type)字段。Type字段可以标识元素所属的种类(初始基元、关节、相机节点和实体基元),实体基元的Type字段还可以反映该基元的形状;
●实体基元具有颜色、材质、纹理属性参量字段以及相应的扩展几何属性参量(如长方体型基元具有长、宽、高,圆台型基元具有底半径和高属性等,不同形状的基元属性参量的数量和类型可以不同)字段;
●实体基元和相机节点具有记录其所连接关节的字段;
●关节具有关节状态参量字段和记录关节依附体字段。
图9出示了若干场景元素在模型数据库文件中对应数据项的结构。
接下来,参考图10-16对实时仿真功能阶段进行详细的描述。实时仿真功能由系统的场景初始化单元、场景绘制单元和场景更新单元共同协作完成。
首先由场景初始化单元装载场景数据库文件,导入场景元素列表(步骤0205),生成树状的场景结构图,并将场景结构图以特定的数据结构存储于内存中(步骤0206)。
在场景结构图中,节点对应各自的场景元素,边则表示父节点和子节点间的连接/依附关系,而树的根节点为初始基元。图中的每一个节点都有一个相关的数据结构存储其对应场景元素的属性/状态参量(在基于面向对象语言实现中这个数据结构可以是一个对象,在基于非面向对象语言实现中则可以是一个结构体变量)。例如关节可以用以下数据结构表示:
Joint
{
    Integer id;
    Integer type;
    Float Tx,Ty,Tz;
    Float Rx,Ry,Rz;
    Bool SetStatus(float[6]);
}
不同类型的场景元素对应的数据结构格式可以不同,但这些数据结构应该包含模型数据库文件中对应数据项的所有属性。除此之外,关节型元素的数据结构还应包含连接于该关节的元素列表;非关节型元素的数据结构还应包含依附于该基元的关节列表;相机节点的数据结构包含记录或可以推出其局部坐标系原点在世界坐标系中的坐标以及坐标轴的相对转角的数据结构。
生成场景连接图后,由场景绘制单元初始化三维显示模型(步骤0207),包括设置显示设备的像素格式、生成显示列表、开启深度缓存、启动刷新定时器等。
在系统仿真的过程中,场景绘制单元需要定时绘制/刷新虚拟场景(步骤0208)。一个完整的绘制流程包括绘制主视窗和绘制相机视窗两个部分。由于相机场景的生成依赖于相机节点记录的视点和视角,而这些信息通常在绘制全局场景时记录,因此刷新场景时先绘制全局场景再绘制相机场景。
在绘制主视窗时,从初始基元开始依据连接关系采用深度优先方式遍历绘制场景连接图中的每一个场景元素。不同类型场景元素的绘制函数流程如下:
图11给出了初始基元的绘制流程:在步骤1102,设置全局环境(视点、视角、视口、背景、环境光源等);在步骤1103,保存当前局部坐标系现场,在OpenGL实现中通过压入模型转换矩阵指令完成上述功能;在步骤1104至1106,依次调用依附于初始基元的关节的绘制函数;在步骤1107,恢复局部坐标系现场,在OpenGL实现中通过弹出模型转换矩阵指令完成该功能。
图12给出了实体基元的绘制流程:在步骤1202,保存当前局部坐标系现场;在步骤1203,设置基元属性参量(颜色、材质、纹理等);在步骤1204,依据基元形状绘制基元;在步骤1205至1207,依次调用依附于该基元的关节的绘制函数;在步骤1208,恢复局部坐标系现场。
图13给出了关节绘制的流程:在步骤1302,保存当前局部坐标系现场;在步骤1303,变换当前坐标系至所需的关节局部坐标系;在步骤1304至1306,依次调用连接于该关节的基元的绘制函数;在步骤1307,恢复局部坐标系现场。
图14给出了相机节点的绘制流程:在步骤1402,保存当前局部坐标系现场;在步骤1403,更新局部坐标系相对世界坐标系的位置及转轴关系,OpenGL实现中可以获得当前的模型转换矩阵,从中可以推出所需参量;在步骤1404至1406,依次调用依附于该基元的关节的绘制函数;在步骤1407,恢复局部坐标系现场。
相机视窗的绘制和主视窗绘制流程大体相同,只是绘制初始基元和相机节点时略有变化。
图15给出了绘制相机视窗时的初始基元的绘制流程:在步骤1502,设置全局环境(视点、视角、视口、背景、环境光源等);在步骤1503,保存当前局部坐标系现场;在步骤1504,进行视图变换,将相机视窗的视点置于相机节点的位置;在步骤1505至1507,依次调用依附于初始基元的关节的绘制函数;在步骤1508,恢复局部坐标系现场。
在基于OpenGL的实现中有两种方法进行步骤C的视图变换。
方法1.从相机节点记录的模型变换矩阵中推出相机节点局部坐标系相对于世界坐标系的位置和转角,设置相机视窗的视图变换矩阵(使用glLookAt命令)将视点设置在世界坐标系的相应位置。从相机节点记录的模型变换矩阵中推出相机节点局部坐标系相对于世界坐标系的位置和转角的步骤如下:
由计算机图形学原理知
坐标原点平移的转换矩阵T为: 1 0 0 T x 0 1 0 T y 0 0 1 T z 0 0 0 1
依次绕X,Y,Z轴旋转α,β,γ角的转换矩阵R=Rx×Ry×Rz为:
1 0 0 0 0 cos α - sin α 0 0 sin α cos α 0 0 0 0 1 cos β 0 sin β 0 0 1 0 0 - sin β 0 cos β 0 0 0 0 1 cos γ sin γ 0 0 sin γ cos γ 0 0 0 0 1 0 0 0 0 1
= cos β cos γ - cos β sin γ sin β 0 sin α sin β cos γ + cos sin - sin α sin β sin γ + cos α cos γ - sin α cos β 0 - cos α sin β cos γ + sin α sin γ cos α sin β sin γ + sin α cos γ cos α cos β 0 0 0 0 1
最终的模型变换矩阵为T×R:
cos β cos γ - cos β sin γ sin β T x ′ sin α sin β cos γ + cos α sin γ - sin α sin β sin γ + cos α cos γ - sin α cos β T y ′ - cos α sin β cos γ + sin α sin γ cos α sin β sin γ + sin α cos γ cos α cos β T z ′ 0 0 0 1
(其中向量(Tx′,Ty′,Tz′)为向量(Tx,Ty,Tz)依次绕X,Y,Z轴旋转α,β,γ角所得)。
所以若设相机节点的模型转换矩阵为: m 11 m 12 m 13 v x m 21 m 22 m 23 v y m 31 m 32 m 33 v z 0 0 0 1
则可通过以下伪代码求出X,Y,Z轴的转角:
    D=ArcSin(m[3,1]);
angle_y=D;
C=cos(angle_y);
    if Abs(C)>0.005then
begin
    tx=m[3,3]/C;
    ty=-m[2,3]/C;
    angle_x=ArcTan(ty,tx);
    tx=m[1,1]/C;
ty=-m[1,2]/C;
    angle_z=ArcTan(ty,tx);endelse begin
angle_x=0;
    tx=m[2,2];
ty=m[2,1];
    angle_z=ArcTan(ty,tx);end;
if angle_x<0 then angle_x=angle_x+2*PI;if angle_y<0 then angle_y=angle_y+2*PI;if angle_z<0 then angle_z=angle_z+2*PI;
    Result.pitch=angle_x;
Result.yaw=angle_y;
Result.roll=angle_z;
而相机节点位置可以将向量(vx,vy,vz)依次绕Z,Y,X轴旋转-γ,-β,-α角得到,以Z轴为例,将向量v绕Z轴旋转a角度的伪代码如下:
Result.x:=(v.x*cos(a))+(v.y*-sin(a));
Result.y:=(v.x*sin(a))+(v.y*cos(a));
Result.z:=v.z;
方法2.利用视图变换和模型变换的对偶性,将相机节点记录的模型变换矩阵求逆,并和当前的模型变换矩阵相乘,直接将初始坐标系的原点和坐标轴定位于相机节点的位置。
图16给出了在绘制相机视窗时相机节点的处理流程:在步骤1602,保存当前局部坐标系现场;在步骤1603至1605,依次调用依附于该基元的关节的绘制函数;在步骤1606,恢复局部坐标系现场。
在实时仿真和动画处理中,由场景更新单元更新虚拟场景。场景更新单元采用关节驱动基元的方式,其实现方法是直接修改对应关节对象的状态域变量,从而改变关节的状态,通过关节的连带效应,连接于该关节的基元及相关后继场景元素的位姿属性也随之改变。
现在以图8为例解释关节状态参量改变时对连接于该关节的场景元素及其连带的场景元素产生的连带效应。当关节0509的状态改变时,其局部坐标系相对于世界坐标系的位姿发生改变,由于机械臂关节球0410的局部坐标系和关节0509的局部坐标系保持一致,所以机械臂关节球0410的局部坐标系相对于世界坐标系的位姿状态与关节0509的局部坐标系发生同样的变化,而依附于机械臂关节球0410的关节0510的状态参量是表示关节0510的局部坐标系相对于其依附体——机械臂关节球0410的局部坐标系的相对位姿,因此关节0510的局部坐标系相对于世界坐标系的位姿也会发生相关变化。依次类推,关节0509连带的所有场景元素在世界坐标系中的位置属性都会发生改变。目前大多数通用的计算机图形库都提供相应接口,因此场景更新单元使用堆栈保存当前模型变换矩阵的方法可以很方便的实现关节的连带效应。
修改关节对象域变量时可以根据关节的类型对域变量的修改添加相应的约束条件(如固连型关节域变量不许修改、转动型关节位置域变量不许修改等),不满足约束条件的修改操作被取消。在基于面向对象语言的实现中,可以根据关节的类型生成各自类型的子类,在子类中重载更新关节状态的成员函数,在重载时加入对约束条件判断的代码。
上面结合本发明的一个最佳实施例对本发明的实施细节进行了详细介绍。但是本发明可以用不同的形式实施,因此在此介绍的特定实施用例细节(如数据格式、单元组织方式等)仅仅是代表性的,而不应将本发明解释成仅限于这里提出的实施例,而是这里之所以提出这些实施例是为了本公开更彻底和完全,并向本专业的技术人员更清晰的传达本发明的范围。同时本发明可以作为方法或设备来实施,因此本发明中的全部或部分处理单元均可以采用软件或硬件的方式实施。
对于本领域的普通技术人员来说可显而易见的得出其他优点和修改。因此,具有更广方面的本发明并不局限于这里所示出的并且所描述的具体说明及示例性实施例。因此,在不脱离由随后权利要求及其等价体所定义的一般发明构思的精神和范围的情况下,可对其作出各种修改。

Claims (10)

1、一种三维场景动态建模和实时仿真的系统,该系统包括CPU、内存储器、外存储器、系统总线场景数据库文件、图形加速卡、显示器、标准图形库,其特征在于:CPU用于建立虚拟场景模型,并且该系统还进一步包括:
场景初始化单元,用于导入虚拟场景数据库文件;
场景绘制单元,用于生成场景连接图并对三维模型进行初始化;以及
场景更新单元,用于对场景绘制单元所绘制的场景进行更新,并且由场景绘制单元重新绘制场景。
2、一种三维场景动态建模和实时仿真的方法,该方法包括:
(A)建立虚拟场景模型,包括步骤:
A1、向场景中加入初始基元;
A2、将场景中实体的组成部件分解成具有独立几何属性的基元;
A3、将场景中独立实体的位置状态及其组成基元相互间的各种连接关系用关节模型描述以生成场景元素;以及
A4、将生成的场景元素以场景元素列表的形式存入场景模型数据库文件中;
(B)导入虚拟场景数据库文件;
(C)生成场景连接图;
(D)对三维模型进行初始化;
(E)绘制三维场景;
(F)对所绘制的场景进行更新;以及
(G)重新绘制场景。
3、如权利要求2所述的方法,其中所述连接关系包括固定连接、滑动连接、转动连接、以及组合连接。
4、如权利要求2所述的方法,其中步骤(E)和(G)进一步包括步骤:绘制主视窗和绘制相机视窗。
5、如权利要求4所述的方法,其中绘制主视窗的步骤进一步包括绘制初始基元,其包括步骤:
设置全局环境;
保存当前局部坐标系现场;
依次调用依附于初始基元的关节的绘制函数;以及
恢复局部坐标系现场。
6、如权利要求4所述的方法,其中绘制主视窗的步骤进一步包括绘制实体基元,其包括步骤:
保存当前局部坐标系现场;
设置基元属性参量;
依据基元形状绘制基元;
依次调用依附于该基元的关节的绘制函数;以及
恢复局部坐标系现场。
7、如权利要求4所述的方法,其中绘制主视窗的步骤进一步包括绘制关节,其包括步骤:
保存当前局部坐标系现场;
变换当前坐标系至所需的关节局部坐标系;
依次调用连接于该关节的基元的绘制函数;以及
恢复局部坐标系现场。
8、如权利要求4所述的方法,其中绘制主视窗的步骤进一步包括绘制实体基元,其包括步骤:
保存当前局部坐标系现场;
更新局部坐标系相对世界坐标系的位置及转轴关系;
依次调用依附于该基元的关节的绘制函数;以及
恢复局部坐标系现场。
9、如权利要求4所述的方法,其中绘制相机视窗的步骤进一步包括绘制初始基元,其包括步骤:
设置全局环境;
保存当前局部坐标系现场;
进行视图变换,将相机视窗的视点置于相机节点的位置;
依次调用依附于初始基元的关节的绘制函数;以及
恢复局部坐标系现场。
10、如权利要求4所述的方法,其中绘制相机视窗的步骤进一步包括绘制初始基元,其包括步骤:
保存当前局部坐标系现场;
依次调用依附于该基元的关节的绘制函数;以及
恢复局部坐标系现场。
CNB2005100733501A 2005-06-02 2005-06-02 一种三维场景动态建模和实时仿真的系统及方法 Expired - Fee Related CN1299244C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100733501A CN1299244C (zh) 2005-06-02 2005-06-02 一种三维场景动态建模和实时仿真的系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100733501A CN1299244C (zh) 2005-06-02 2005-06-02 一种三维场景动态建模和实时仿真的系统及方法

Publications (2)

Publication Number Publication Date
CN1694126A CN1694126A (zh) 2005-11-09
CN1299244C true CN1299244C (zh) 2007-02-07

Family

ID=35353078

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100733501A Expired - Fee Related CN1299244C (zh) 2005-06-02 2005-06-02 一种三维场景动态建模和实时仿真的系统及方法

Country Status (1)

Country Link
CN (1) CN1299244C (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853162A (zh) * 2010-06-01 2010-10-06 电子科技大学 一种可编辑的网页三维几何造型渲染方法

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100433065C (zh) * 2006-03-06 2008-11-12 上海宝信软件股份有限公司 应用三维景观仿真进行实时监控的方法
CN101383052B (zh) * 2008-01-16 2012-05-23 清华大学 基于球面分段常数基函数的动态场景实时绘制方法
CN101908232B (zh) * 2010-07-30 2012-09-12 重庆埃默科技有限责任公司 一种交互式场景仿真系统及场景虚拟仿真方法
CN101989075B (zh) * 2010-08-24 2012-06-27 北京水晶石数字科技股份有限公司 一种三维软件控制演出的方法
CN102542602A (zh) * 2010-12-15 2012-07-04 平安煤矿瓦斯治理国家工程研究中心有限责任公司 煤与瓦斯共采仿真模型的建立方法
CN102267662A (zh) * 2011-05-23 2011-12-07 上海三一科技有限公司 起重机的三维力矩限制器和包括该力矩限制器的起重机
CN104063904B (zh) * 2013-06-03 2016-02-17 腾讯科技(深圳)有限公司 一种模拟虚拟场景实时处理的方法和装置
CN103729887A (zh) * 2013-12-25 2014-04-16 湖南三一智能控制设备有限公司 三维模型动态显示方法及装置
CN104484522B (zh) * 2014-12-11 2017-10-27 西南科技大学 一种基于现实场景的机器人模拟演练系统的构建方法
WO2018070810A1 (ko) * 2016-10-12 2018-04-19 삼성전자 주식회사 가상 현실 영상을 처리하는 방법 및 장치
CN108665758A (zh) * 2018-04-15 2018-10-16 广东电网有限责任公司 高压巡线vr场景实现方法
CN108769228A (zh) * 2018-06-05 2018-11-06 北京知道创宇信息技术有限公司 3d场景构建方法以及装置
CN109801357B (zh) * 2018-12-04 2023-10-31 先临三维科技股份有限公司 显示三维数字模型的方法及装置、存储介质、处理器
CN109366489A (zh) * 2018-12-07 2019-02-22 哈尔滨工业大学 一种可重构的虚拟图形建模方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1090684A (ja) * 1996-09-12 1998-04-10 Ushio Inc 液晶表示素子の配向膜光配向用偏光光照射装置
JPH1090685A (ja) * 1996-09-12 1998-04-10 Matsushita Electric Ind Co Ltd 液晶表示装置の製造方法
WO2002021451A1 (en) * 2000-09-07 2002-03-14 Neochi Llc Method and system for simultaneously creating and using multiple virtual reality programs

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1090684A (ja) * 1996-09-12 1998-04-10 Ushio Inc 液晶表示素子の配向膜光配向用偏光光照射装置
JPH1090685A (ja) * 1996-09-12 1998-04-10 Matsushita Electric Ind Co Ltd 液晶表示装置の製造方法
WO2002021451A1 (en) * 2000-09-07 2002-03-14 Neochi Llc Method and system for simultaneously creating and using multiple virtual reality programs

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101853162A (zh) * 2010-06-01 2010-10-06 电子科技大学 一种可编辑的网页三维几何造型渲染方法
CN101853162B (zh) * 2010-06-01 2013-01-09 电子科技大学 一种可编辑的网页三维几何造型渲染方法

Also Published As

Publication number Publication date
CN1694126A (zh) 2005-11-09

Similar Documents

Publication Publication Date Title
CN1299244C (zh) 一种三维场景动态建模和实时仿真的系统及方法
Nishida et al. Interactive sketching of urban procedural models
CN101685547B (zh) 用于使用曲面法向约束的曲面膨胀的方法和装置
US9508179B2 (en) Flexible 3-D character rigging development architecture
CN1113666A (zh) 图形边系统
CN1150675A (zh) 用于纹理映射的方法和装置
CN101051390A (zh) 一种用于河流模拟的方法和系统
Lee et al. An easy-to-use three-dimensional molecular visualization and analysis program: POSMOL
CN1055439A (zh) 在二维图形显示中指定三维点
Scalera et al. Robotic sponge and watercolor painting based on image-processing and contour-filling algorithms
Dannenhoffer et al. Generation of Multi-fidelity, Multi-discipline Air Vehicle Models with the Engineering Sketch Pad
Koved et al. GROOP: An object-oriented toolkit for animated 3D graphics
Autin et al. uPy: a ubiquitous CG Python API with biological-modeling applications
Yu The Application of 3D Printing Technology in Sculpture
Venter et al. Unreal Engine 5 Character Creation, Animation, and Cinematics: Create custom 3D assets and bring them to life in Unreal Engine 5 using MetaHuman, Lumen, and Nanite
CN1738247A (zh) 移动图形渐进传输引擎技术
Hadjri Bridging the gap between physical and digital models in architectural design studios
Zhao Research on virtual human animation based on motion capture data
US9128516B1 (en) Computer-generated imagery using hierarchical models and rigging
Zheng et al. Mixed-reality-based product display technology and implementation
He AI‐Generated Content: From Conception to Communal Engagement
Paulus et al. Software engineering for image processing and analysis
Costello ARCAD: Augmented Reality Computer Aided Design
Kravtsov Hybrid modelling of time-variant heterogeneous objects.
US20220405447A1 (en) Machine learning-based selective incarnation of computer-aided design objects

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20070207