一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种建模方法、装置及电子设备与流程

2022-06-05 06:28:11 来源:中国专利 TAG:


1.本发明涉及建模技术领域,具体涉及一种建模方法、装置及电子设备。


背景技术:

2.在建模过程中,用户在对三维模型进行建模过程中,需要进行多种建模操作,比如对模型进行纹理设计、材质匹配以及灯光设计等。但现有技术中在进行建模操作时对任一个用户视角下的三维模型进行修改时,其他用户视角并不会发生改变,需要用户调整三维模型的用户视角再重复对其他用户视角做相同的建模操作,导致建模效率低。


技术实现要素:

3.因此,本发明要解决的技术问题在于克服现有对不同用户视角下的模型的建模方式效率低的缺陷,从而提供一种建模方法、装置及电子设备。
4.根据第一方面,本发明实施例公开了一种建模方法,应用于建模平台,所述建模平台的显示界面包含多个视图窗口,所述方法包括:响应对目标视图窗口中显示的目标模型的监控操作;当所述目标视图窗口中所述目标模型发生变化,将变化后的模型对应的建模数据与预存的、变化前的模型对应的建模数据进行比对得到模型变化数据;当其他视图窗口存在同一目标模型,将所述模型变化数据发送至模型管理器,使得所述模型管理器根据所述模型变化数据对其他视图窗口中存在的同一目标模型进行调整。
5.可选地,所述响应对目标视图窗口中显示的模型的监控操作,包括:当接收到由模型管理器提取并发送的模型信息,根据所述模型信息确定目标模型,并将所述目标模型所在的视图窗口作为目标视图窗口;触发对所述对目标视图窗口中显示的目标模型的监控操作。
6.可选地,所述多个视图窗口根据下述方式创建得到:当在当前窗口捕获到用于进行窗口构建的鼠标事件,将所述鼠标事件对应的操作信息发送给窗口管理器,使得所述窗口管理器根据接收到操作信息创建新的窗口。
7.可选地,所述方法还包括:当窗口管理器接收到的操作信息中未包含用户视角信息,对所述当前窗口进行复制得到新的窗口;当窗口管理器接收到的操作信息中包含用户视角信息,对所述当前窗口进行复制得到新的窗口并根据所述用户视角信息对所述新的窗口中的模型进行视角调整。
8.根据第二方面,本发明实施例还公开了一种建模装置,应用于建模平台,所述建模平台的显示界面包含多个视图窗口,不同的视图窗口显示不同用户视角下的模型;所述装置包括:监控模块,用于响应对目标视图窗口中显示的目标模型的监控操作;比对模块,用于当所述目标视图窗口中所述目标模型发生变化,将变化后的模型对应的建模数据与预存的、变化前的模型对应的建模数据进行比对得到模型变化数据;发送模块,用于当其他视图窗口存在同一目标模型,将所述模型变化数据发送至模型管理器,使得所述模型管理器根据所述模型变化数据对其他视图窗口中存在的同一目标模型进行调整。
9.可选地,所述监控模块,包括:接收子模块,用于当接收到由模型管理器提取并发送的模型信息,根据所述模型信息确定目标模型,并将所述目标模型所在的视图窗口作为目标视图窗口;监控子模块,用于触发对所述对目标视图窗口中显示的目标模型的监控操作。
10.可选地,所述装置包括创建模块,用于根据下述方式创建得到多个视图窗口:当在当前窗口捕获到用于进行窗口构建的鼠标事件,将所述鼠标事件对应的操作信息发送给窗口管理器,使得所述窗口管理器根据接收到操作信息创建新的窗口。
11.可选地,所述装置还包括:第一创建子模块,用于当窗口管理器接收到的操作信息中未包含用户视角信息,对所述当前窗口进行复制得到新的窗口;第二创建子模块,用于当窗口管理器接收到的操作信息中包含用户视角信息,对所述当前窗口进行复制得到新的窗口并根据所述用户视角信息对所述新的窗口中的模型进行视角调整。
12.根据第三方面,本发明实施例还公开了一种电子设备,包括:至少一个处理器;以及与所述至少一个处理器通信连接的存储器;其中,所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器执行如第一方面或第一方面任一可选实施方式所述的建模方法的步骤。
13.根据第四方面,本发明实施方式还公开了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面或第一方面任一可选实施方式所述的建模方法的步骤。
14.本发明技术方案,具有如下优点:
15.本发明提供的建模方法/装置,应用于建模平台,建模平台的显示界面包含多个视图窗口,建模平台响应对目标视图窗口中显示的目标模型的监控操作,当目标视图窗口中目标模型发生变化,将变化后的模型对应的建模数据与预存的、变化前的模型对应的建模数据进行比对得到模型变化数据,当其他视图窗口存在同一目标模型,将模型变化数据发送至模型管理器,使得所述模型管理器根据模型变化数据对其他视图窗口中存在的同一目标模型进行调整。通过对目标模型进行监控操作,当目标模型发生变化时,对变化前后的建模数据进行比对,得到建模数据变换信息,通过模型管理器根据建模数据变换信息对其他视图窗口中存在的同一目标模型同步进行调整,相比于现有技术中的调整用户视角并需要用户重新对同一模型进行相同建模操作的方式,本发明提供的方法可以同时对不同用户视角下的三维模型进行建模操作,提高了建模效率。
附图说明
16.为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
17.图1为本发明实施例中建模方法的一个具体示例的流程图;
18.图2a和2b为本发明实施例中建模方法的一个具体示例的示意图;
19.图3为本发明实施例中建模装置的一个具体示例的原理框图;
20.图4为本发明实施例中电子设备的一个具体示例图。
具体实施方式
21.下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
22.在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
23.此外,下面所描述的本发明不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
24.本发明实施例公开了一种建模方法,如图1所示,应用于建模平台,所述建模平台的显示界面包含多个视图窗口,不同的视图窗口显示不同用户视角下的模型,比如一个视图窗口显示模型的主视图,另一个视图窗口显示模型的左视图,即可以通过多个视图窗口展现一个模型的不同用户视角,便于用户观察和建模。该方法包括如下步骤:
25.步骤101,响应对目标视图窗口中显示的目标模型的监控操作;示例性地,该目标视图窗口可以是多个视图窗口中的任意一个。具体方式可以是监测目标视图窗口中的目标模型是否被选中,当目标模型被选中则响应对该目标模型的监控操作。
26.作为本发明一个可选实施方式,步骤101,包括:当接收到由模型管理器提取并发送的模型信息,根据所述模型信息确定目标模型,并将所述目标模型所在的视图窗口作为目标视图窗口;触发对所述对目标视图窗口中显示的目标模型的监控操作。
27.示例性地,通过模型管理器对多个视图窗口进行监控,当任一视图窗口中的模型被选中,则将被选中的模型信息(如几何信息、空间位置信息、材质信息等)通过消息机制发送至建模平台的视图管理器,当接收到模型管理器发送的模型信息,根据该模型信息确定待监控的目标模型,并将该目标模型所在的视图窗口作为目标视图窗口并同时触发建模平台的视图管理器对目标视图窗口中显示的目标模型的监控操作。通过模型管理器对多个视图窗口的视图进行监控操作,再将被选中的模型发送至建模平台的视图管理器进行监控,使得视图管理器只需要对接收到的模型进行监控,减少了视图管理器的监控压力。
28.步骤102,当所述目标视图窗口中所述目标模型发生变化,将变化后的模型对应的建模数据与预存的、变化前的模型对应的建模数据进行比对得到模型变化数据;
29.示例性地,窗口展现的视图可以共享一份建模数据,该建模数据可以通过视图管理器进行集中管理。确定目标视图窗口中的目标模型是否发生变化的方式可以是对目标视图对应的建模操作的建模数据进行监控,当建模数据发生变换即可判定该目标模型发生改变,该建模数据可以存储有历史建模过程中的所有建模数据,包括但不限于该目标模型的历史设计的纹理数据、材质数据、灯光的设计数据以及模型的视图矩阵等,通过对该后台建模数据的实时监控来判定该目标模型是否发生变换。当目标模型发生变化,对变换前、后的建模数据进行比对得到模型变化数据,如当通过比对模型的前、后建模数据得到变化的视图矩阵。
30.步骤103,当其他视图窗口存在同一目标模型,将所述模型变化数据发送至模型管
理器,使得所述模型管理器根据所述模型变化数据对其他视图窗口中存在的同一目标模型进行调整。
31.示例性地,如图2a和图2b所示分别为同一模型在不同用户视角下的显示,图2a为任一视图窗口中一用户视角view1下的模型,当模型管理器监控到该模型被选择后,模型管理器提取该模型的模型信息,通过消息机制发送给视图管理器,视图管理器根据接收到的模型信息会对view1下的该目标模型进行监控并可以同步选中view2中的同一个模型对象,当view1下的该目标模型发生变化时同时对同一模型进行调整。
32.以变化的建模数据为模型的视图矩阵为例,如图2a和图2b所示,两个独立视图窗口的用户视角分别是view1和view2,同一个长方体模型在两个视图窗口中的物理信息是一致的,如长方体模型的大小、形状、中心点坐标等等。为节省资源消耗、提高处理效率,多视图中相对不变的信息可以在视图管理器中仅存储一份,多视图中的用户视角参数在视图管理器中分别存储。
33.每个视图窗口可以根据不同的用户视角进行视图矩阵计算,当所有视图窗口的视图都渲染完毕,记录当前所有视图窗口中每一个模型的视图矩阵信息,并把视图窗口的视图矩阵以数组的形式存储到内存中。图2a中view1下的模型的用户视角沿逆时针方向旋转90度可得到view2下的用户视角。若view1的视图矩阵为:{{v1,v2,v3}{v4,v5,v6}{v7,v8,v9}},则通过矩阵旋转变换计算可以得出view2视角下的视图矩阵为:{{v7,v4,v1}{v8,v5,v2}{v9,v6,v3}}。视图管理器会分别存储这两组视图矩阵参数。
34.当其中的一个视图中的模型发生变化时,首先捕获当前的视图窗口,通过矩阵转换计算呈现变化后的模型,同时可以基于双向绑定技术与虚拟内存技术,把当前视图窗口变化后的视图矩阵参数存储到视图管理器的内存中,获取到变化的视图矩阵跟原始数据作比对计算变化的信息,并把变化的信息告知其他窗口视图,并通过矩阵转换和计算进行相对应的视图转换操作。
35.本发明提供的建模方法,通过对目标模型进行监控操作,当目标模型发生变化时,对变化前后的建模数据进行比对,得到建模数据变换信息,通过模型管理器根据建模数据变换信息对其他视图窗口中存在的同一目标模型同步进行调整,相比于现有技术中的调整用户视角并需要用户重新对同一模型进行相同建模操作的方式,本发明提供的方法可以同时对不同用户视角下的三维模型进行建模操作,提高了建模效率。
36.作为本发明一个可选实施方式,所述多个视图窗口根据下述方式创建得到:
37.当在当前窗口捕获到用于进行窗口构建的鼠标事件,将所述鼠标事件对应的操作信息发送给窗口管理器,使得所述窗口管理器根据接收到操作信息创建新的窗口。
38.示例性地,当前窗口所在的窗体可内置菜单栏,方便进行增/删查找等基础操作,同时也内置了对视图的操作功能,比如对画布大小的调整以及撤销、回退、新建窗口等功能。通过对窗体的菜单进行操作时,当在当前窗口捕获到用于进行窗口构建的鼠标事件,将该鼠标事件及其对应的操作信息通过消息机制发送给窗口管理器,使得窗口管理器根据接收到的操作信息新建一个窗体对象。
39.作为本发明一个可选实施方式,所述方法还包括:当窗口管理器接收到的操作信息中未包含用户视角信息,对所述当前窗口进行复制得到新的窗口;当窗口管理器接收到的操作信息中包含用户视角信息,对所述当前窗口进行复制得到新的窗口并根据所述用户
视角信息对所述新的窗口中的模型进行视角调整。
40.示例性地,在创建新的窗口之前,窗口管理器会解析操作信息中包含的具体参数信息,如果参数信息中未指定用户视角,则窗口管理器会通过直接复制现有窗体对象来生成新的窗口并展示给用户。如果参数中指定用户视角参数,则窗口管理器首先复制现有窗体对象以生成新的窗口,并根据用户视角参数来调整新生成的窗口中的模型。
41.如图2a和2b所示,在view1中沿z轴负方向看,保持中心点不变,将模型逆时针旋转90度,该旋转操作改变了长方体模型对象在空间场景中的位置信息,视图管理器会从开始到结束追踪整个旋转操作过程,变换过程中实时同步模型位置信息至模型管理器,并根据view1与view2的用户视角相对关系,实时更新view2中的场景展示效果。从view2视角观察view1视图中的操作,可以发现同样是沿z轴负方向,保持中心点不变,将该长方体模型对象顺时针旋转了90度。通过利用数据处理和存储技术,实现窗口与窗口之间的无缝协同,便于多个任务在一个大屏上的多个视图窗口快速完成,提升设计效率。
42.本发明实施例还公开了一种建模装置,应用于建模平台,所述建模平台的显示界面包含多个视图窗口,不同的视图窗口显示不同用户视角下的模型;如图3所示,该装置包括:
43.监控模块201,用于响应对目标视图窗口中显示的目标模型的监控操作;
44.比对模块202,用于当所述目标视图窗口中所述目标模型发生变化,将变化后的模型对应的建模数据与预存的、变化前的模型对应的建模数据进行比对得到模型变化数据;
45.发送模块203,用于当其他视图窗口存在同一目标模型,将所述模型变化数据发送至模型管理器,使得所述模型管理器根据所述模型变化数据对其他视图窗口中存在的同一目标模型进行调整。
46.本发明提供的建模装置,通过对目标模型进行监控操作,当目标模型发生变化时,对变化前后的建模数据进行比对,得到建模数据变换信息,通过模型管理器根据建模数据变换信息对其他视图窗口中存在的同一目标模型同步进行调整,相比于现有技术中的调整用户视角并需要用户重新对同一模型进行相同建模操作的方式,本发明提供的方法可以同时对不同用户视角下的三维模型进行建模操作,提高了建模效率。
47.作为本发明一个可选实施方式,所述监控模块201,包括:接收子模块,用于当接收到由模型管理器提取并发送的模型信息,根据所述模型信息确定目标模型,并将所述目标模型所在的视图窗口作为目标视图窗口;监控子模块,用于触发对所述对目标视图窗口中显示的目标模型的监控操作。
48.作为本发明一个可选实施方式,所述装置包括创建模块,用于根据下述方式创建得到多个视图窗口:当在当前窗口捕获到用于进行窗口构建的鼠标事件,将所述鼠标事件对应的操作信息发送给窗口管理器,使得所述窗口管理器根据接收到操作信息创建新的窗口。
49.作为本发明一个可选实施方式,所述装置还包括:第一创建子模块,用于当窗口管理器接收到的操作信息中未包含用户视角信息,对所述当前窗口进行复制得到新的窗口;第二创建子模块,用于当窗口管理器接收到的操作信息中包含用户视角信息,对所述当前窗口进行复制得到新的窗口并根据所述用户视角信息对所述新的窗口中的模型进行视角调整。
50.本发明实施例还提供了一种电子设备,如图4所示,该电子设备可以包括处理器401和存储器402,其中处理器401和存储器402可以通过总线或者其他方式连接,图4中以通过总线连接为例。
51.处理器401可以为中央处理器(central processing unit,cpu)。处理器401还可以为其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等芯片,或者上述各类芯片的组合。
52.存储器402作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序、非暂态计算机可执行程序以及模块,如本发明实施例中的建模方法对应的程序指令/模块。处理器401通过运行存储在存储器402中的非暂态软件程序、指令以及模块,从而执行处理器的各种功能应用以及数据处理,即实现上述方法实施例中的建模方法。
53.存储器402可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储处理器401所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施例中,存储器402可选包括相对于处理器401远程设置的存储器,这些远程存储器可以通过网络连接至处理器401。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
54.所述一个或者多个模块存储在所述存储器402中,当被所述处理器401执行时,执行如图1所示实施例中的建模方法。
55.上述电子设备具体细节可以对应参阅图1所示的实施例中对应的相关描述和效果进行理解,此处不再赘述。
56.本领域技术人员可以理解,实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述存储介质可为磁碟、光盘、只读存储记忆体(read-only memory,rom)、随机存储记忆体(randomaccessmemory,ram)、快闪存储器(flash memory)、硬盘(hard disk drive,缩写:hdd)或固态硬盘(solid-state drive,ssd)等;所述存储介质还可以包括上述种类的存储器的组合。
57.虽然结合附图描述了本发明的实施例,但是本领域技术人员可以在不脱离本发明的精神和范围的情况下作出各种修改和变型,这样的修改和变型均落入由所附权利要求所限定的范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献