三维建筑材质的区域刷帖方法、装置及设备、存储介质
文献发布时间:2023-06-19 09:27:35
技术领域
本申请涉及三维建模技术领域,具体涉及一种三维建筑材质的区域刷帖方法、装置及设备、存储介质。
背景技术
目前,市场上利用三维设计软件对建筑刷帖材质时,首先要通过对建筑主体模型进行切割布线、UV展开等方式将建筑所需刷帖各种材质的面区分开来。这个过程需要重复对建筑主体模型进行调整、编辑,并且,再次修改时还需要重新布线整理模型,不仅操作繁琐,还会持续增加软件负荷。
发明内容
有鉴于此,本申请的目的在于克服现有技术的不足,提供一种三维建筑材质的区域刷帖方法、装置及设备、存储介质。
为实现以上目的,本申请采用如下技术方案:
本申请的第一方面提供一种三维建筑材质的区域刷帖方法,包括:
获取输入点信息、生成方式以及目标建筑的几何数据;
根据所述输入点信息、生成方式和所述几何数据生成刷帖区域,利用所述刷帖区域创建区域分层实体;
获取材质对象,将所述材质对象设置给所述区域分层实体。
可选的,所述根据所述输入点信息、生成方式和所述几何数据生成刷帖区域,利用所述刷帖区域创建区域分层实体,包括:
根据所述生成方式判断当前刷帖区域的创建是否需要进行映射;
若不需要,根据所述输入点信息、所述生成方式和所述目标建筑的几何数据得到刷帖区域;
关联所述刷帖区域和所述目标建筑,将所述刷帖区域转换为所述区域分层实体。
可选的,所述根据所述生成方式判断当前刷帖区域的创建是否需要进行映射之后,所述方法还包括:
若需要,获取输入的刷帖图像,对所述刷帖图像进行拉伸得到中间体;
基于所述输入点信息,将所述中间体与所述目标建筑的面域进行求交运算,得到刷帖区域;
关联所述刷帖区域和所述目标建筑,将所述刷帖区域转换为所述区域分层实体。
可选的,所述方法还包括:
获取所述区域分层实体的面域数据;
通过所述面域数据确定所述区域分层实体的每条边的中点;
将所述每条边的中点作为自由编辑的夹点,以使得用户可以根据所述夹点编辑所述区域分层实体的范围;
获取用户输入的编辑数据,根据所述编辑数据更新当前夹点的位置。
可选的,所述利用所述刷帖区域创建区域分层实体之后,所述方法还包括:
获取层级需求,根据所述层级需求确定所述区域分层实体的层级属性。
可选的,所述生成方式包括:横向、竖向、横向环绕、竖向环绕和自定义对象。
可选的,所述获取材质对象,包括:
确定需要刷帖的纹理图片,根据所述纹理图片创建所述材质对象,并确定所述材质对象的属性。
本申请的第二方面提供一种三维建筑材质的区域刷帖装置,包括:
获取模块,用于获取输入点信息、生成方式以及目标建筑的几何数据;
创建模块,用于根据所述输入点信息、生成方式和所述几何数据生成刷帖区域,利用所述刷帖区域创建区域分层实体;
刷帖模块,用于获取材质对象,将所述材质对象设置给所述区域分层实体。
本申请的第三方面提供一种三维建筑材质的区域刷帖设备,包括:
处理器,以及与所述处理器相连接的存储器;
所述存储器用于存储计算机程序;
所述处理器用于调用并执行所述存储器中的所述计算机程序,以执行如本申请的第一方面所述的方法。
本申请的第四方面提供一种存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时,实现如本申请的第一方面所述的三维建筑材质的区域刷帖方法的各个步骤。
本申请提供的技术方案可以包括以下有益效果:
本申请的方案中,通过获取到的输入点信息、生成方式以及目标建筑的几何数据来生成刷帖区域,并利用生成的刷帖区域创建区域分层实体,以使得每个创建的区域分层实体都能够呈现在三维建筑的表层,且彼此独立又与三维建筑相互关联;通过获取到的材质对象来实现对区域分层实体的材质刷帖,如此,无需利用切割布线等方式将目标建筑所需刷帖各种材质的面区分开来,通过生成刷帖区域并转换为区域分层实体即可实现对目标建筑表面上各个待刷帖区域的划分,且各个待刷帖区域之间呈现的各个区域分层实体的相互独立使得材质的刷帖都能够精确到指定范围,有效提高了刷贴速度和灵活性,同时,不会对目标建筑模型造成任何影响,减轻了对三维建筑实体重复编辑的压力。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一个实施例提供的一种三维建筑材质的区域刷帖方法的流程图。
图2是本申请另一个实施例提供的一种三维建筑材质的区域刷帖装置的结构示意图。
图3是本申请另一个实施例提供的一种三维建筑材质的区域刷帖设备的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将对本申请的技术方案进行详细的描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本申请所保护的范围。
参见图1是本申请一个实施例提供的一种三维建筑材质的区域刷帖方法的流程图。本申请的实施例提供一种三维建筑材质的区域刷帖方法,如图所示,三维建筑材质的区域刷帖方法具体可以包括如下操作步骤:
步骤11、获取输入点信息、生成方式以及目标建筑的几何数据。
其中,生成方式可以但不限于包括:横向、竖向、横向环绕、竖向环绕和自定义对象。
步骤12、根据输入点信息、生成方式和几何数据生成刷帖区域,利用刷帖区域创建区域分层实体。
步骤13、获取材质对象,将材质对象设置给区域分层实体。
本实施例中,通过获取到的输入点信息、生成方式以及目标建筑的几何数据来生成刷帖区域,并利用生成的刷帖区域创建区域分层实体,以使得每个创建的区域分层实体都能够呈现在三维建筑的表层,且彼此独立又与三维建筑相互关联;通过获取到的材质对象来实现对区域分层实体的材质刷帖,如此,无需利用切割布线等方式将目标建筑所需刷帖各种材质的面区分开来,通过生成刷帖区域并转换为区域分层实体即可实现对目标建筑表面上各个待刷帖区域的划分,且各个待刷帖区域之间呈现的各个区域分层实体的相互独立使得材质的刷帖都能够精确到指定范围,有效提高了刷贴速度和灵活性,同时,不会对目标建筑模型造成任何影响,减轻了对三维建筑实体重复编辑的压力。
具体实施时,输入点信息用于确定目标建筑上的待刷帖区域,例如,在三维建模界面,目标建筑为一栋六层楼的建筑模型,待刷帖区域为第二层楼,那么,输入点信息即为操作人员在建筑模型第二层楼的顶层和底层边沿各任意选中的一个点击点信息。
由于获取到的生成方式不同,生成刷帖区域的步骤也会存在不同,在一些实施例中,上述根据输入点信息、生成方式和几何数据生成刷帖区域,利用刷帖区域创建区域分层实体,具体可以包括:可以根据获取到的生成方式来判断当前区域分层实体的创建是否需要进行映射,若判断结果为不需要,例如,生成方式为横向、竖向、横向环绕或者竖向环绕时,不需要进行映射,那么就可以根据输入点信息、生成方式和目标建筑的几何数据生成刷帖区域,关联得到的刷帖区域与目标建筑,将刷帖区域转换为区域分层实体。
具体实施时,在确定当前区域分层实体的创建不需要进行映射后,通过生成方式和目标建筑的几何数据,可以确定一个法向,根据获取到的输入点信息确定点击点,通过点击点和法向可以构造无限面域,利用无限面域对目标建筑进行虚拟切割限定,就可以创建出与目标建筑上待刷帖区域对应的刷帖区域,将得到的刷帖区域与目标建筑进行关联,并将刷帖区域转换为区域分层实体,以使得得到的刷帖区域的数据可以以区域分层实体的形式展现在目标建筑表面,并且,可以随着目标建筑的变化相应做出改变。例如,目标建筑为一栋六层楼,待刷帖区域为第三层楼,那么获取到的生成方式可以为横向环绕,在三维操作界面上,操作人员可以利用鼠标箭头在目标建筑第三层楼的顶层边沿和底层边沿各任意点击一下,以确定待刷帖区域为第三层楼,则输入点信息为两个点击点,通过获取到的目标建筑的几何数据和生成方式,可以得到待生成区域的法向,根据确定的输入点信息和待生成区域的法向,可以确定出两个无限面域,一个位于第二层楼与第三层楼的交界处(第三层楼底层),另一个位于第三层楼与第四层楼的交界处(第三层楼顶层),两个无限面域可以将目标建筑虚拟切割为三部分,中间那部分即为第三层楼的部分,又由于生成方式为横向环绕,如此,即可通过横向环绕中间的部分构建出刷帖区域,将得到的刷帖区域与目标建筑关联,并转换为区域分层实体,刷帖区域即可通过区域分层实体展现在目标建筑表面。
相应的,上述根据生成方式判断当前刷帖区域的创建是否需要进行映射之后,三维建筑材质的区域刷帖方法还可以包括:若判断结果为需要,则可以获取输入的刷帖图像,利用映射的方式将刷帖图像投影到目标建筑上,得到映射结果,并通过映射结果得到刷帖区域;关联刷帖区域和目标建筑,将刷帖区域转换为区域分层实体。
实施时,利用映射的方式将刷帖图像投影到目标建筑上,得到映射结果,并通过映射结果得到刷帖区域,具体可以包括:对刷帖图像进行拉伸得到中间体;基于输入点信息,将中间体与目标建筑的面域进行求交运算,得到刷帖区域;关联刷帖区域和目标建筑,将刷帖区域转换为区域分层实体。
其中,刷帖图像是需要刷贴到目标建筑上的待刷帖目标图像。实施时,刷帖图像可以是预先创建好的图像,也可以是操作人员当前自行绘制的图像,还可以是其他方式获取到的图像。
具体实施时,在三维操作界面中,在确定当前刷帖区域的创建需要进行映射后,获取输入的刷帖图像,以当前呈现的三维操作界面为基准,以垂直于三维操作界面的方向为拉伸方向,对刷帖图像进行拉伸,得到中间体;基于操作人员在目标建筑上确定的输入点信息,将中间体与目标建筑的面域进行boolean求交运算,获取求交结果,利用求交结果即可构建出刷帖区域,将构建出的刷帖区域与目标建筑的待刷帖区域进行绑定,并利用刷帖区域的数据构建区域分层实体,刷帖区域即可通过区域分层实体展现在目标建筑表面。
一些实施例中,为了便于修改区域分层实体的区域范围,三维建筑材质的区域刷帖方法还可以包括:获取区域分层实体的面域数据;通过面域数据确定区域分层实体的每条边的中点;将每条边的中点作为自由编辑的夹点,以使得用户可以根据夹点编辑区域分层实体的范围;获取用户输入的编辑数据,根据编辑数据更新当前夹点的位置。
实际应用时,在三维操作界面中,操作人员可以利用夹点编辑区域分层实体的大小,例如,展示在目标建筑上的区域分层实体为一个长方形,长方形四个边的中点都是区域分层实体的夹点,操作人员可以通过鼠标拖动夹点移动来改变区域分层实体的大小。
在一些实施例中,目标建筑上可能存在有多层待刷帖区域,对应的区域分层实体也有多个,为了保证各个区域分层实体之间重叠区域的独立和关联,在利用生成的刷帖区域创建区域分层实体之后,三维建筑材质的区域刷帖方法还可以包括:获取层级需求,根据层级需求确定区域分层实体的层级属性。
具体实施时,一个目标建筑上可能存在多个区域分层实体,每个区域分层实体都对应有层级属性,例如,两个区域分层实体有重叠的区域,那么层级属性高的区域分层实体就在层级属性低的区域分层实体上面;默认情况下,可以设置最新创建的区域分层实体的层级属性为最高级,层层递进,每一次新创建的区域分层实体都置于上一次创建的区域分层实体的顶层。并且,操作人员可以根据实际需求设置层级需求,如此,可以根据层级需求确定区域分层实体的层级属性,保证三维建筑材质的区域刷帖结果符合实际要求的情况。
一些实施例中,上述获取材质对象,具体可以包括:确定需要刷帖的纹理图片,根据纹理图片创建材质对象,并确定材质对象的属性。
具体实施时,操作人员可以根据材质刷帖的需求选择需要刷帖的纹理图片,通过纹理图片获取到纹理数据,根据纹理数据创建材质对象,并设置材质对象的属性。如此,即可将材质对象设置给区域分层实体,以保证材质对象在目标建筑上的应用。
本申请的实施例提供一种三维建筑材质的区域刷帖装置,如图2所示,该装置具体可以包括:获取模块201,用于获取输入点信息、生成方式以及目标建筑的几何数据;创建模块202,用于根据输入点信息、生成方式和几何数据生成刷帖区域,利用刷帖区域创建区域分层实体;刷帖模块203,用于获取材质对象,将材质对象设置给区域分层实体。
可选的,上述根据输入点信息、生成方式和几何数据生成刷帖区域,利用刷帖区域创建区域分层实体,创建模块,具体可以用于:根据生成方式判断当前刷帖区域的创建是否需要进行映射;若不需要,根据输入点信息、生成方式和目标建筑的几何数据得到刷帖区域;关联刷帖区域和目标建筑,关联刷帖区域和目标建筑,将刷帖区域转换为区域分层实体。
可选的,根据生成方式判断当前刷帖区域的创建是否需要进行映射之后,创建模块,具体还可以用于:若需要,获取输入的刷帖图像,对刷帖图像进行拉伸得到中间体;基于输入点信息,将中间体与目标建筑的面域进行求交运算,得到刷帖区域;关联刷帖区域和目标建筑,将刷帖区域转换为区域分层实体。
可选的,三维建筑材质的区域刷帖装置还可以包括编辑模块,编辑模块具体用于:获取区域分层实体的面域数据;通过面域数据确定区域分层实体的每条边的中点;将每条边的中点作为自由编辑的夹点,以使得用户可以根据夹点编辑区域分层实体的范围;获取用户输入的编辑数据,根据编辑数据更新当前夹点的位置。
可选的,上述利用刷帖区域创建区域分层实体之后,三维建筑材质的区域刷帖装置还可以包括层级设定模块,层级设定模块具体用于:获取层级需求,根据层级需求确定区域分层实体的层级属性。
可选的,上述生成方式可以包括:横向、竖向、横向环绕、竖向环绕和自定义对象。
可选的,上述获取材质对象,刷帖模块,具体可以用于:确定需要刷帖的纹理图片,根据纹理图片创建材质对象,并确定材质对象的属性。
本实施例提供的三维建筑材质的区域刷帖装置的具体实现方式可以参考以上任意实施例所述的三维建筑材质的区域刷帖方法的具体实现方式,此处不再赘述。
本申请的实施例提供一种三维建筑材质的区域刷帖设备,如图3所示,该设备可以包括:处理器301,以及与处理器301相连接的存储器302;存储器302用于存储计算机程序;处理器301用于调用并执行存储器302中的计算机程序,以执行如以上任意实施例所述的三维建筑材质的区域刷帖方法。
本实施例提供的三维建筑材质的区域刷帖设备的具体实现方式可以参考以上任意实施例所述的三维建筑材质的区域刷帖方法的具体实现方式,此处不再赘述。
本申请的实施例提供一种存储介质,存储介质存储有计算机程序,计算机程序被处理器执行时,实现如以上任意实施例所述的三维建筑材质的区域刷帖方法的各个步骤。
可以理解的是,上述各实施例中相同或相似部分可以相互参考,在一些实施例中未详细说明的内容可以参见其他实施例中相同或相似的内容。
需要说明的是,在本申请的描述中,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本申请的描述中,除非另有说明,“多个”的含义是指至少两个。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。
- 三维建筑材质的区域刷帖方法、装置及设备、存储介质
- 仿真材质模仿刷帖方法、装置和设备