CN109366489A - 一种可重构的虚拟图形建模方法 - Google Patents

一种可重构的虚拟图形建模方法 Download PDF

Info

Publication number
CN109366489A
CN109366489A CN201811494764.5A CN201811494764A CN109366489A CN 109366489 A CN109366489 A CN 109366489A CN 201811494764 A CN201811494764 A CN 201811494764A CN 109366489 A CN109366489 A CN 109366489A
Authority
CN
China
Prior art keywords
model
node
mechanical arm
joint
coordinate system
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.)
Pending
Application number
CN201811494764.5A
Other languages
English (en)
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.)
Harbin Institute of Technology
Original Assignee
Harbin Institute of Technology
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 Harbin Institute of Technology filed Critical Harbin Institute of Technology
Priority to CN201811494764.5A priority Critical patent/CN109366489A/zh
Publication of CN109366489A publication Critical patent/CN109366489A/zh
Pending legal-status Critical Current

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1602Programme controls characterised by the control system, structure, architecture
    • B25J9/1605Simulation of manipulator lay-out, design, modelling of manipulator

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Processing Or Creating Images (AREA)

Abstract

本发明提出了一种可重构的虚拟图形建模方法,包括以下步骤:步骤一:对机械臂进行建模,将机械臂模型导入到机械臂工作的图形场景中,并在所述图形场景中基于Open Inventor建立机械臂节点的连接;步骤二:建立机械臂模型和图形场景所用的坐标系;步骤三:基于vector进行动态内存分配以实现模型的添加与删除以及通过定义几何变换节点进行模型的移动。本发明使操作简单便捷,不用修改创建场景的源代码,可以应用到各种机械臂仿真平台上。

Description

一种可重构的虚拟图形建模方法
技术领域
本发明涉及的一种可重构的虚拟图形建模方法,属于机械臂仿真技术领域。
背景技术
伴随着机器人技术的迅速发展,机械臂已经能够以较高的灵活性辅助甚至代替人类去执行一些精密的、复杂的、危险的任务,大大降低了特种环境下人类执行任务的风险,减轻了工作的压力,提高了各种活动的效率,成为工业、航天、深海探测等领域不可或缺的关键设备之一。然而,随着机械臂的任务越来越复杂,其工作任务难以完全通过地面实验进行验证或实体实验验证的代价较大。因此,研究具有安全、便捷、低成本特点的机器人仿真技术,实现在虚拟环境中对机械臂任务进行仿真,具有重要的应用前景。
近年来,许多国家都针对特殊工作环境开发了基于虚拟现实的机器人仿真系统。这些仿真系统的共同之处在于,它们将远程遥控操作作为主要控制模式,使操作者能够将自己沉浸在虚拟环境中,从而实现对机器人运动的直观和准确控制。目前国内外在机器人仿真研究方面都获得了一些成果,但虚拟环境中的模型的专用性很强,即针对一个仿真软件平台,其所用的模型通常采用预先离线构建方式,难以适合动态变化等复杂环境的仿真。
因此,单一、固定的模型已经满足不了动态变化的环境下复杂任务仿真的需求。若要对模型的配置,如场景中某构型的数量、位置等进行改变,传统的方法是修改程序的源代码中构建场景的部分,进而改变模型的构型。然而这个操作过程十分费时费力,而且要求操作者熟悉相关的编程知识,不利于普及使用。故本发明提出了一种可重构的虚拟图形建模方法。
发明内容
本发明目的是为了解决现有技术中的问题,提供了一种可重构的虚拟图形建模方法。本发明是基于C++语言vector容器的简单便捷的可重构虚拟图形建模方法,本发明基于OpenInventor创建了机械臂工作空间的图形场景,并通过对模型动态分配内存,实现让使用者能够便捷地在软件人机交互界面对模型构型进行重构。
本发明是通过以下技术方案实现的,本发明提出一种可重构的虚拟图形建模方法,包括以下步骤:
步骤一:对机械臂进行建模,将机械臂模型导入到机械臂工作的图形场景中,并在所述图形场景中基于OpenInventor建立机械臂节点的连接;
步骤二:建立机械臂模型和图形场景所用的坐标系;
步骤三:基于vector进行动态内存分配以实现模型的添加与删除以及通过定义几何变换节点进行模型的移动。
进一步地,所述并在所述图形场景中基于OpenInventor建立机械臂节点的连接,具体为:组合体主体位置的机械臂大臂肩部末端执行器首先与组合体模型主体上的机械臂适配器相连,然后依次为:大臂肩部回转关节、大臂肩部偏航关节、大臂肩部俯仰关节、大臂肘部俯仰关节、大臂腕部俯仰关节、大臂腕部偏航关节、大臂腕部回转关节和大臂腕部末端执行器;在与其他位置辅助用的机械臂小臂连接时,需要通过一个转接件将大臂腕部末端执行器和小臂肩部末端执行器相连,然后依次为:小臂肩部回转关节、小臂肩部偏航关节、小臂肩部俯仰关节、小臂肘部俯仰关节、小臂腕部俯仰关节、小臂腕部偏航关节、小臂腕部回转关节和小臂腕部末端执行器;连接操作使用addChild()命令完成。
进一步地,图形场景中的模型是在三维建模软件Creo中绘制,在Creo中绘制模型时的坐标系等同于Inventor中的世界坐标系;图形场景中的模型包括机械臂和其他组合体,在组合体模型中选择连接机械臂大臂的部分模型作为整体的核心部分,即把所有其他组合体看作都是在核心部分的基础上扩展出来的,同时在组合体核心位置定义本体坐标系;模型核心部分的象限定义为沿组合体的纵向几何轴向前看,按顺时针方向依次为I、II、III、IV,象限间隔90°,I象限线对地;模型核心部分几何坐标系原点O0d定义在核心模型上将要执行添加的连接端面中心点上,定义O0dX0d轴沿组合体纵轴,正方向根据实际需要选定,O0dZ0d轴指向核心模型IV象限线,O0dY0d轴垂直于O0dX0d、O0dZ0d轴,指向核心部分的III象限线,
进一步地,所述基于vector进行动态内存分配以实现模型的添加与删除,具体为:定义读取模型Inventor文件返回的隔离节点为a节点,读取的所述模型的属性描述放入一个隔离节点,该隔离节点称之为b节点;
当需要添加模型时,选择模型iv文件,并将其加入a节点,将a节点及其描述放入b节点,将b节点放入可动态分配内存的空间,即vector容器,将b节点添加到图形场景根节点;
当需要删除模型时,选用removeChild()移除相应节点。
进一步地,所述vector容器存放SoSeparator指针。进一步地,所述通过定义几何变换节点进行模型的移动,具体为:为模型定义几何变换节点,如下:
SoTransform*testTranslation=newSoTransform;
testTranslation→translation.setValue(x,y,z);
SoTransform*testRotationX=newSoTransform;
testRotationX→rotation.setValue(SbVec3f(1,0,0),alpha*JTOH);
SoTransform*testRotationY=newSoTransform;
testRotationY→rotation.setValue(SbVec3f(0,1,0),beta*JTOH);
SoTransform*testRotationZ=newSoTransform;
testRotationZ→rotation.setValue(SbVec3f(0,0,1),gamma*JTOH);
其中x、y、z表示模型沿世界坐标系的OX、OY和OZ轴的位移,alpha、beta、gamma表示模型绕其自身的局部坐标系的O’X’、O’Y’和O’Z’轴旋转的角度;
几何变换的变换矩阵如式(1)~(4)所示,其中Tran(x,y,z)是平移变换矩阵,所述平移变换矩阵为绝对变换;R(x,α)、R(y,β)、R(z,γ)是旋转变换矩阵,所述旋转变换矩阵是相对变换;
式中c、s是cos和sin的缩写形式,α、β和γ指的是绕x,y,z轴的转角;
将所述几何变换节点作为模型的描述,同读取模型Inventor文件后返回的a节点一起放入b节点中,为了使几何变换作用到a节点中的模型上,需要按照从上到下、从左到右的顺序添加节点;进行移动操作时,直接在软件窗口选择模型中的移动命令,然后在弹出的“移动模型”对话框中选择要移动的场景中的模型序号,所述序号是在将b节点装入vector容器中的时候确定的;之后根据实际需要,设置几何变换的x、y、z、alpha、beta、gamma的数值;最后选择对应的移动命令,即可将模型移动到期望的位置。
本发明的有益效果:本发明提出了基于C++语言vector容器的可重构虚拟图形建模方法。该方法在OpenInventor三维图形开发包创建场景的基础上,利用C++语言中的vector容器能够动态分配内存的能力,实现了在仿真软件的虚拟环境中直接添加、删除和移动模型的可重构虚拟图形建模方法,从而满足了未知动态环境下复杂任务仿真的模型需求,大大提高了机械臂仿真软件在使用上的灵活性。本发明使操作简单便捷,不用修改创建场景的源代码,可以应用到各种机械臂仿真平台上。
附图说明
图1是本发明所述可重构的虚拟图形建模方法的流程图;
图2为两个机械臂节点的连接顺序图;
图3为组合体核心位置规定的象限图;
图4为组合体本体几何坐标系图;
图5是实现模型的添加、删除与移动的流程图;
图6为vector容器的结构图;
图7为场景节点的树结构模型图。
具体实施方式
下面将结合本发明实施例中的附图对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图1-7说明本实施方式,机械臂仿真软件的人机交互界面可以基于MFC框架编写,场景模型须在Creo中绘制并保存为OIV可识别的.iv格式。其中图形场景的创建首先是场景文件的读入,利用模型的Inventor文件中的信息,用Inventor对模型进行建模和渲染,并最终在屏幕上显示出模型的图像。
如图1所示,本发明提出本发明提出一种可重构的虚拟图形建模方法,包括以下步骤:
步骤一:对机械臂进行建模,将机械臂模型导入到机械臂工作的图形场景中,并在所述图形场景中基于OpenInventor建立机械臂节点的连接;
对机械臂进行建模,以两个机械臂模型为操作范例:有组合体主体位置的机械臂(大臂)和其他位置辅助用的机械臂(小臂),由于两者的构型一致,因此可采用相同的方法进行建模。过程如图2所示,大臂肩部末端执行器首先与组合体模型主体上的机械臂适配器相连,然后依次为:大臂肩部回转关节(JOINT1)、大臂肩部偏航关节(JOINT2)、大臂肩部俯仰关节(JOINT3)、大臂肘部俯仰关节(JOINT4)、大臂腕部俯仰关节(JOINT5)、大臂腕部偏航关节(JOINT6)、大臂腕部回转关节(JOINT7)、大臂腕部末端执行器;在与小臂连接时,需要通过一个转接件将大臂腕部末端执行器和小臂肩部末端执行器相连,然后依次为:小臂肩部回转关节(joint1)、小臂肩部偏航关节(joint2)、小臂肩部俯仰关节(joint3)、小臂肘部俯仰关节(joint4)、小臂腕部俯仰关节(joint5)、小臂腕部偏航关节(joint6)、小臂腕部回转关节(joint7)、小臂腕部末端执行器。连接操作使用addChild()命令完成。
这一过程中,节点的连接顺序是非常重要的,因为在虚拟场景中,父节点可以驱动子节点移动,反之则不能。以机械臂的建模为例,关节joint1的旋转会导致joint2、joint3、joint4等机械臂杆件都发生位姿的改变,反之则不成立。这样,从机械臂的基座到末端执行器就形成了一个开环的控制链,只要改变某一节点的几何变换子节点(SoTransform节点)的属性,就可以实现对该节点及其子节点的运动控制。
步骤二:建立机械臂模型和图形场景所用的坐标系;
对机械臂进行建模之后,需要将其放置到场景中。需要对场景和模型所用坐标系进行规定,只有事先确定坐标系,才能知道模型导入场景后所处的位置以及所使用的坐标系统,从而进行后面的操作。组成场景的物体有自己的局部坐标系,场景的全局坐标系称为“世界坐标系”。Inventor使用右手坐标系,z轴的正方向从屏幕内指向外。此坐标系为世界坐标系,所有的角度单位都是弧度。
图形场景中的模型是在三维建模软件Creo中绘制,由于本方法采取的是读入节点并将其直接添加到场景根节点的方法,因此,在Creo中绘制模型时的坐标系等同于Inventor中的世界坐标系;图形场景中的模型包括机械臂和其他组合体,在组合体模型中选择连接机械臂大臂的部分模型作为整体的核心部分,即把所有其他组合体看作都是在核心部分的基础上扩展出来的,同时在组合体核心位置定义本体坐标系;模型核心部分的象限可以定义为如图3,沿组合体的纵向几何轴向前看,按顺时针方向依次为I、II、III、IV,象限间隔90°,I象限线对地;模型核心部分几何坐标系原点O0d定义在核心模型上将要执行添加的连接端面中心点上,定义O0dX0d轴沿组合体纵轴,正方向根据实际需要选定,O0dZ0d轴指向核心模型IV象限线,O0dY0d轴垂直于O0dX0d、O0dZ0d轴,指向核心部分的III象限线,如图4所示。
除了预先添加到场景中的已知模型之外,根据实际需求,操作者还可以向已有的组合体模型上添加自定义模型,这一过程是通过readfile实现的。需要注意的是,为了便于进行后续的移动操作,在绘制模型的时候,规定其局部坐标系一致采用与组合体核心部分上定义的几何坐标系相同的坐标系。这样,当模型导入场景中时,它自身的局部坐标系原点O'将与核心部分本体几何坐标系原点O0d重合,坐标系O'X'Y'Z'与原定义坐标系方向一致。据此可以对其进行几何变换操作。
步骤三:基于vector进行动态内存分配以实现模型的添加与删除以及通过定义几何变换节点进行模型的移动,如图5所示。
通常在Inventor中可以修改代码来实现对场景中物体的修改,本发明的目标则是不通过修改代码来重新搭建场景,完全在软件的人机交互界面上实现这些修改。由于将要向场景中添加的模型的数量是无法预先知道的,即无法事先为将要加入场景中的模型分配内存空间,因此,有必要为模型动态分配内存,以便虚拟图形建模具有良好的扩展性。要从场景中移除模型,需要调用removeChild(),来移除相应的节点。而移动模型则通过修改位于模型节点左侧的几何变换节点的属性来实现。
在Inventor中,尽管场景负责组织和管理所有的Inventor节点,但是Inventor并没有强制规定场景数据库的内部是如何组织的。因此,可以创建自己的节点,并将新节点保存在自己的数据结构中,而不一定非要保存在场景中。因此,可以将前面读取模型Inventor文件返回的隔离节点(称之为a节点)和对这个模型的属性描述(几何变换、材质等)放入一个隔离节点(称之为b节点)中。
定义读取模型Inventor文件返回的隔离节点为a节点,读取的所述模型的属性描述放入一个隔离节点,该隔离节点称之为b节点;
当需要添加模型时,选择模型iv文件,并将其加入a节点,将a节点及其描述放入b节点,将b节点放入可动态分配内存的空间,即vector容器,将b节点添加到图形场景根节点;
当需要删除模型时,选用removeChild()移除相应节点。
vector可以存储各种对象,相当于一个动态数组,当不可能知道需要的数组有多大时,用它来解决问题可以达到最大程度地节约空间的目的。实际应用时,将b节点装进vector容器里面,在需要的时候再从vector容器中取出即可。和数组一样,vector也使用从0开始的下标表示元素的位置,所以将隔离节点放入vector后,该节点就有了属于自己的序号,在将对应模型加入场景后,可以使用相应的序号找到它,进行删除、移动等操作。
将SoSeparator对象添加到容器时,容器中的元素是指定对象的副本。如果其中的数据非常多,或者包含其他复杂的自定义类型,那么此时类的拷贝构造的开销是非常巨大的,很容易带来性能上的瓶颈。除此之外,在软件的实际应用中,对中间和开始处进行添加删除元素操作需要移动内存,对于SoSeparator类,在移动的同时还会进行构造和析构操作,所以性能不高。因此,本方法在vector容器中存放的是SoSeparator指针(SoSeparator*)。因为指针长度只有一个机器字长,拷贝代价可以忽略不计,这样就避免了多余的拷贝消耗,这样还可以避免移动时的构造与析构,使软件的性能得到了提高。
vector容器的结构以及将SoSeparator指针装入容器的过程如图6所示,虽然图中是直接在原来的存储空间之后画上新增空间,但是实际上vector每次扩充内存空间并不是在原有空间基础上进行叠加,而是按照当前容器的一倍,重新申请更大的内存,并将现有容器中的元素逐一复制到新内存空间的前端,然后销毁旧的内存。
对于具有少量数据的vector,不需要主动释放内存,因为这对程序的效率几乎没有影响。但是,当大量数据存储在vector中并且对数据执行了一些操作(例如删除和移动)时,如果能够积极主动地去释放内存,那么将会大大提高软件运行的性能。结合本软件的实际应用情况,应在退出模型显示窗口时释放vector的内存。最后,按图7所示,使用addChild()方法将vector容器中的元素添加到场景的根节点下,实现场景中模型的添加;需要删除场景中模型时,使用的是removeChild()方法。
整个过程的具体实现代码如下:
通过前述过程,即可在设计的软件界面中选择相应的模型进行添加和删除操作,自定义的模型也可以相同的原理添加到虚拟场景中或进行删除。
出于一些情况下的特殊需要,组合体模型的一些组成部分可能需要进行平移、旋转等移动操作。这时就需要对模型进行几何变换操作,为此需要事先为模型定义一些几何变换节点(SoTransform节点)如下:
SoTransform*testTranslation=newSoTransform;
testTranslation→translation.setValue(x,y,z);
SoTransform*testRotationX=newSoTransform;
testRotationX→rotation.setValue(SbVec3f(1,0,0),alpha*JTOH);
SoTransform*testRotationY=newSoTransform;
testRotationY→rotation.setValue(SbVec3f(0,1,0),beta*JTOH);
SoTransform*testRotationZ=newSoTransform;
testRotationZ→rotation.setValue(SbVec3f(0,0,1),gamma*JTOH);
其中x、y、z表示模型沿世界坐标系的OX、OY和OZ轴的位移,alpha、beta、gamma表示模型绕其自身的局部坐标系的O’X’、O’Y’和O’Z’轴旋转的角度(弧度);
几何变换的变换矩阵如式(1)~(4)所示,其中Tran(x,y,z)是平移变换矩阵,所述平移变换矩阵为绝对变换;R(x,α)、R(y,β)、R(z,γ)是旋转变换矩阵,所述旋转变换矩阵是相对变换;
式中c、s是cos和sin的缩写形式,α、β和γ指的是绕x,y,z轴的转角。
将所述几何变换节点作为模型的描述,同读取模型Inventor文件后返回的a节点一起放入b节点中,为了使几何变换作用到a节点中的模型上,需要按图7的顺序从上到下、从左到右添加节点;进行移动操作时,直接在软件窗口选择模型中的移动命令,然后在弹出的“移动模型”对话框中选择要移动的场景中的模型序号,所述序号是在将b节点装入vector容器中的时候确定的;之后根据实际需要,设置几何变换的x、y、z、alpha、beta、gamma的数值;最后选择对应的移动命令,即可将模型移动到期望的位置。
以上对本发明所提供的一种可重构的虚拟图形建模方法,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (6)

1.一种可重构的虚拟图形建模方法,其特征在于:包括以下步骤:
步骤一:对机械臂进行建模,将机械臂模型导入到机械臂工作的图形场景中,并在所述图形场景中基于Open Inventor建立机械臂节点的连接;
步骤二:建立机械臂模型和图形场景所用的坐标系;
步骤三:基于vector进行动态内存分配以实现模型的添加与删除以及通过定义几何变换节点进行模型的移动。
2.根据权利要求1所述的方法,其特征在于:所述并在所述图形场景中基于OpenInventor建立机械臂节点的连接,具体为:组合体主体位置的机械臂大臂肩部末端执行器首先与组合体模型主体上的机械臂适配器相连,然后依次为:大臂肩部回转关节、大臂肩部偏航关节、大臂肩部俯仰关节、大臂肘部俯仰关节、大臂腕部俯仰关节、大臂腕部偏航关节、大臂腕部回转关节和大臂腕部末端执行器;在与其他位置辅助用的机械臂小臂连接时,需要通过一个转接件将大臂腕部末端执行器和小臂肩部末端执行器相连,然后依次为:小臂肩部回转关节、小臂肩部偏航关节、小臂肩部俯仰关节、小臂肘部俯仰关节、小臂腕部俯仰关节、小臂腕部偏航关节、小臂腕部回转关节和小臂腕部末端执行器;连接操作使用addChild()命令完成。
3.根据权利要求2所述的方法,其特征在于:图形场景中的模型是在三维建模软件Creo中绘制,在Creo中绘制模型时的坐标系等同于Inventor中的世界坐标系;图形场景中的模型包括机械臂和其他组合体,在组合体模型中选择连接机械臂大臂的部分模型作为整体的核心部分,即把所有其他组合体看作都是在核心部分的基础上扩展出来的,同时在组合体核心位置定义本体坐标系;模型核心部分的象限定义为沿组合体的纵向几何轴向前看,按顺时针方向依次为I、II、III、IV,象限间隔90°,I象限线对地;模型核心部分几何坐标系原点O0d定义在核心模型上将要执行添加的连接端面中心点上,定义O0dX0d轴沿组合体纵轴,正方向根据实际需要选定,O0dZ0d轴指向核心模型IV象限线,O0dY0d轴垂直于O0dX0d、O0dZ0d轴,指向核心部分的III象限线,
4.根据权利要求3所述的方法,其特征在于:所述基于vector进行动态内存分配以实现模型的添加与删除,具体为:定义读取模型Inventor文件返回的隔离节点为a节点,读取的所述模型的属性描述放入一个隔离节点,该隔离节点称之为b节点;
当需要添加模型时,选择模型iv文件,并将其加入a节点,将a节点及其描述放入b节点,将b节点放入可动态分配内存的空间,即vector容器,将b节点添加到图形场景根节点;
当需要删除模型时,选用removeChild()移除相应节点。
5.根据权利要求4所述的方法,其特征在于:所述vector容器存放SoSeparator指针。
6.根据权利要求5所述的方法,其特征在于:所述通过定义几何变换节点进行模型的移动,具体为:为模型定义几何变换节点,如下:
SoTransform*testTranslation=new SoTransform;
testTranslation→translation.setValue(x,y,z);
SoTransform*testRotationX=new SoTransform;
testRotationX→rotation.setValue(SbVec3f(1,0,0),alpha*JTOH);
SoTransform*testRotationY=new SoTransform;
testRotationY→rotation.setValue(SbVec3f(0,1,0),beta*JTOH);
SoTransform*testRotationZ=new SoTransform;
testRotationZ→rotation.setValue(SbVec3f(0,0,1),gamma*JTOH);
其中x、y、z表示模型沿世界坐标系的OX、OY和OZ轴的位移,alpha、beta、gamma表示模型绕其自身的局部坐标系的O’X’、O’Y’和O’Z’轴旋转的角度;
几何变换的变换矩阵如式(1)~(4)所示,其中Tran(x,y,z)是平移变换矩阵,所述平移变换矩阵为绝对变换;R(x,α)、R(y,β)、R(z,γ)是旋转变换矩阵,所述旋转变换矩阵是相对变换;
式中c、s是cos和sin的缩写形式,α、β和γ指的是绕x,y,z轴的转角;
将所述几何变换节点作为模型的描述,同读取模型Inventor文件后返回的a节点一起放入b节点中,为了使几何变换作用到a节点中的模型上,需要按照从上到下、从左到右的顺序添加节点;进行移动操作时,直接在软件窗口选择模型中的移动命令,然后在弹出的“移动模型”对话框中选择要移动的场景中的模型序号,所述序号是在将b节点装入vector容器中的时候确定的;之后根据实际需要,设置几何变换的x、y、z、alpha、beta、gamma的数值;最后选择对应的移动命令,即可将模型移动到期望的位置。
CN201811494764.5A 2018-12-07 2018-12-07 一种可重构的虚拟图形建模方法 Pending CN109366489A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811494764.5A CN109366489A (zh) 2018-12-07 2018-12-07 一种可重构的虚拟图形建模方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811494764.5A CN109366489A (zh) 2018-12-07 2018-12-07 一种可重构的虚拟图形建模方法

Publications (1)

Publication Number Publication Date
CN109366489A true CN109366489A (zh) 2019-02-22

Family

ID=65373758

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811494764.5A Pending CN109366489A (zh) 2018-12-07 2018-12-07 一种可重构的虚拟图形建模方法

Country Status (1)

Country Link
CN (1) CN109366489A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111476882A (zh) * 2020-03-26 2020-07-31 哈尔滨工业大学 一种面向浏览器的机器人虚拟图形建模方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004003167A1 (de) * 2004-01-21 2005-08-18 Siemens Ag Verfahren zum Entwickeln einer Maschine
CN1694126A (zh) * 2005-06-02 2005-11-09 中国科学院力学研究所 一种三维场景动态建模和实时仿真的系统及方法
CN1710607A (zh) * 2005-07-08 2005-12-21 北京航空航天大学 一种面向虚拟现实三维图形引擎的三维场景组织方法
CN102254464A (zh) * 2011-08-10 2011-11-23 上海交通大学 基于构件机械原理的机构运动虚拟实验仿真方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004003167A1 (de) * 2004-01-21 2005-08-18 Siemens Ag Verfahren zum Entwickeln einer Maschine
CN1694126A (zh) * 2005-06-02 2005-11-09 中国科学院力学研究所 一种三维场景动态建模和实时仿真的系统及方法
CN1710607A (zh) * 2005-07-08 2005-12-21 北京航空航天大学 一种面向虚拟现实三维图形引擎的三维场景组织方法
CN102254464A (zh) * 2011-08-10 2011-11-23 上海交通大学 基于构件机械原理的机构运动虚拟实验仿真方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JINGDONG ZHAO, YAN WANG AND ZAINAN JIANG: "A Reconfigurable Virtual Modeling Method", 《2018 IEEE INTERNATIONAL CONFERENCE ON MECHATRONICS AND AUTOMATION》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111476882A (zh) * 2020-03-26 2020-07-31 哈尔滨工业大学 一种面向浏览器的机器人虚拟图形建模方法
CN111476882B (zh) * 2020-03-26 2023-09-08 哈尔滨工业大学 一种面向浏览器的机器人虚拟图形建模方法

Similar Documents

Publication Publication Date Title
US5278983A (en) Boundary representation solid modeling system
CN111230880A (zh) 一种离线编程中的复杂曲面加工轨迹生成方法
Boulic et al. 3d hierarchies for animation
CN111390908B (zh) 一种基于网页的机械臂虚拟拖动方法
CN106846468B (zh) 一种基于ros系统的机械臂建模及运动规划实现方法
CN111476882B (zh) 一种面向浏览器的机器人虚拟图形建模方法
Lu Using CAD functionalities for the kinematics analysis of spatial parallel manipulators with 3-, 4-, 5-, 6-linearly driven limbs
CN109760059A (zh) 基于bim的机械臂装配任务规划方法及建筑装配方法
US12011835B2 (en) Engineering autonomous systems with reusable skills
Dannenhoffer Opencsm: An open-source constructive solid modeler for mdao
CN112114663A (zh) 适用于视触觉融合反馈的虚拟现实软件框架的实现方法
CN109366489A (zh) 一种可重构的虚拟图形建模方法
CN102214365A (zh) 基于骨骼动画原理的通用虚拟人仿真技术
CN116958426A (zh) 虚拟调试配置方法、装置、计算机设备、存储介质
CN113609556A (zh) 一种基础c#的gim格式与xdb格式无损转换方法
JPH02132573A (ja) 境界表現ソリツド・モデリング・システム
Kim et al. Encapsulation of geometric functions for ship structural CAD using a STEP database as native storage
Li et al. An effective construction method of modular manipulator 3D virtual simulation platform
Bottazzi et al. Off-line programming industrial robots based in the information extracted from neutral files generated by the commercial CAD tools
Chang An integrated finite-element nonlinear shell analysis system with interactive computer graphics
CN114187430B (zh) 一种三维模型转化方法
Kiss Web based VRML modeling
CN118097057B (zh) 一种针对水利水电工程的通用几何造型体构建方法及装置
Ye et al. Design of Parametric CAD System for Ceramic Products Based on Virtual Reality Technology
WO2023221683A1 (zh) 图像渲染方法、装置、设备和介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190222