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

一种基于CAD二维图纸的机房三维模型自动生成方法及装置与流程

2022-02-25 22:27:55 来源:中国专利 TAG:

一种基于cad二维图纸的机房三维模型自动生成方法及装置
技术领域
1.本发明属于it与软件开发中的三维模型自动生成技术领域,具体地涉及一种基于cad二维图纸的机房三维模型自动生成方法及装置。


背景技术:

2.在信息技术(information technology,简称it)行业中,机房普遍指的是电信、网通、移动、双线、电力以及政府或者企业等的、用于存放服务器的和为用户以及员工提供it服务的地方,对机房进行三维可视化,可以使得对机房实体资源的管理更加精确和直观。虽然机房内外的实体结构比较少,主要有外墙、立柱、单开门、双开门、机架、空调和/或其他非机架设备等,但是在机房的现有三维可视化过程中,依然需要通过手工三维建模方式来对各个实体进行三维建模和位置摆放,如此存在建模速度慢和需耗费大量人力成本的问题,限制了生产效率的提高。因此,如何自动生成机房三维模型,提高生成效率,是本领域技术人员亟需研究的课题。


技术实现要素:

3.为了解决在机房的现有三维可视化过程中所存在建模速度慢和需耗费大量人力成本的问题,本发明目的在于提供一种基于cad二维图纸的机房三维模型自动生成方法、装置、计算机设备及计算机可读存储介质,可以快速地为机房三维可视化应用提供三维基础数据,减少手工三维建模工作的工作量及人力成本,大大提高了生产效率,便于实际应用和推广。
4.第一方面,本发明提供了一种基于cad二维图纸的机房三维模型自动生成方法,包括:
5.获取目标机房的cad二维图纸,其中,所述cad二维图纸为电子图纸且包含有多个图元/图元组合;
6.从所述多个图元/图元组合中查找出建筑墙体的图元/图元组合,并根据所述建筑墙体的图元/图元组合,获取机房外墙的轮廓线条数据和墙体厚度数据;
7.遍历所述多个图元/图元组合中剩余的各个图元/图元组合,识别出是否有对应的实体,其中,所述实体包括有立柱、单开门、双开门、非机架设备和/或机架;
8.针对所述各个图元/图元组合,若识别出有对应的实体,则根据所述建筑墙体的图元/图元组合和对应的图元/图元组合,获取该实体的相对位置数据和几何属性数据,其中,所述相对位置数据包含有该实体相对于所述机房外墙的坐标位置;
9.根据所述轮廓线条数据和所述墙体厚度数据,生成所述目标机房的三维空间模型;
10.针对识别出的各个实体,根据对应的几何属性数据生成对应的立体模型,并根据该几何属性数据和对应的且从模板数据库中查找出的三维模板,对该立体模型进行三维贴图处理,形成对应的实体三维模型;
11.针对所述各个实体,根据对应的相对位置数据将对应的实体三维模型摆放在所述三维空间模型中,形成所述目标机房的机房三维模型。
12.基于上述发明内容,提供了一种能够识别机房内实体并完成三维建模的自动化方案,即在获取目标机房的cad二维图纸后,可通过解析在电子图纸中绘制的二维图元信息,得到图元/图元组合的形状及样式等特征,然后基于此特征识别出建筑墙体、立柱、门、非机架设备和/或机架等实体,并获取与实体相应的几何属性及相对位置,再然后结合模板数据库中的三维模板,进行实体三维模型的生成和摆放,最终得到所述目标机房的机房三维模型,从而可以快速地为机房三维可视化应用提供三维基础数据,减少手工三维建模工作的工作量及人力成本,即相比较于人工绘制方式,建模速度快且准确率高,大大提高了生产效率,便于实际应用和推广。
13.在一个可能的设计中,从所述多个图元/图元组合中查找出建筑墙体的图元/图元组合,并根据所述建筑墙体的图元/图元组合,获取机房外墙的轮廓线条数据和墙体厚度数据,包括:
14.对所述多个图元/图元组合进行颜色识别处理,并根据颜色识别结果查找到具有至少三根特定颜色线条的图元/图元组合;
15.针对查找到的图元/图元组合,若对应的至少三根特定颜色线条围成有闭合区域,则将该图元/图元组合作为建筑墙体的图元/图元组合,并将该至少三根特定颜色线条作为机房外墙的轮廓线条;
16.根据所述建筑墙体的图元/图元组合,获取所述轮廓线条的长度及所处位置,以便作为所述机房外墙的轮廓线条数据;
17.根据所述建筑墙体的图元/图元组合,判断所述轮廓线条是否存在宽度属性,若是,则将所述宽度属性作为所述机房外墙的墙体厚度数据,否则取墙体厚度默认值作为所述机房外墙的墙体厚度数据。
18.在一个可能的设计中,所述轮廓线条数据包含有至少三根轮廓线条的长度及所处位置,其中,所述至少三根轮廓线条用于围成机房室内区域;
19.遍历所述多个图元/图元组合中剩余的各个图元/图元组合,识别出是否有对应的实体,包括如下方式(a)~(d)中的任意一种或它们的任意组合:
20.(a)判断图元/图元组合是否为实心矩形、内置有立柱标记信息的空心矩形或者与所述至少三根轮廓线条中任一轮廓线条相交的矩形,若是,则识别出有对应的实体且为立柱;
21.(b)判断图元/图元组合是否为单扇形,若是,则识别出有对应的实体且为单开门;
22.(c)判断图元/图元组合是否为双扇形,若是,则识别出有对应的实体且为双开门;
23.(d)判断图元/图元组合是否为位于所述机房室内区域之内的且内置有空调标记信息的矩形,若是,则识别出有对应的实体且为非机架设备的空调。
24.在一个可能的设计中,在识别出有对应的实体且为非机架设备的空调之后,针对所述各个图元/图元组合,若识别出有对应的实体,则根据所述建筑墙体的图元/图元组合和对应的图元/图元组合,获取该实体的相对位置数据和几何属性数据,包括:
25.根据与所述空调对应的图元/图元组合,获取矩形的长宽数据和中心坐标;
26.计算所述中心坐标与所述至少三根轮廓线条中各根轮廓线条的第一垂直距离;
27.根据计算结果,确定出与最短的第一垂直距离对应的轮廓线条,并计算该轮廓线条与所述矩形的各个边中心点的第二垂直距离;
28.根据计算结果,确定出与最短的第二垂直距离对应的矩形边,并将该矩形边作为所述空调的背面边,以及将与该矩形边相对的另一矩形边作为所述空调的正面边;
29.将所述长宽数据、所述背面边和所述正面边组成所述空调的几何属性数据。
30.在一个可能的设计中,所述轮廓线条数据包含有至少三根轮廓线条的长度及所处位置,其中,所述至少三根轮廓线条用于围成机房室内区域;
31.遍历所述多个图元/图元组合中剩余的各个图元/图元组合,识别出是否有对应的实体,包括:
32.判断图元/图元组合是否为位于所述机房室内区域之内的且内置有标记信息的矩形;
33.若是,则根据所述标记信息在模板数据库中查找是否存在对应的非机架设备三维模板;
34.若存在,则识别出有对应的实体且为非机架设备,否则识别有对应的实体且为机架。
35.在一个可能的设计中,识别有对应的实体且为机架,包括如下方式(e1)~(e3)中的任意一种或它们的任意组合:
36.(e1)根据与所述机架对应的图元/图元组合,判断是否满足如下条件:在矩形一侧的边缘区域中存在一根与对应侧矩形边平行的线条和在矩形中内置有机架编码形式的唯一标记信息,若满足,则识别有对应的实体且为单开门机架;
37.(e2)根据与所述机架对应的图元/图元组合,判断是否满足如下条件:在矩形相对两侧的边缘区域中各存在一根与对应侧矩形边平行的线条和在矩形中内置有机架编码形式的唯一标记信息,若满足,则识别有对应的实体且为双开门机架;
38.(e3)根据与所述机架对应的图元/图元组合,判断是否满足如下条件:在矩形相对两侧的边缘区域中各存在一根与对应侧矩形边平行的线条、在矩形中间区域中存在一根将矩形隔开成两个子矩形的线条和在所述两个子矩形中分别内置有机架编码形式的唯一标记信息,若满足,则识别有对应的实体且为背靠背机架。
39.在一个可能的设计中,当识别出的实体有机架且获取到该机架的机架编码时,针对识别出的各个实体,根据对应的几何属性数据生成对应的立体模型,并根据该几何属性数据和对应的且从模板数据库中查找出的三维模板,对该立体模型进行三维贴图处理,形成对应的实体三维模型,包括:
40.根据所述机架编码,从资源管理数据库中查询出所述机架的机架高度和机架类型;
41.根据所述机架高度及在与所述机架对应的几何属性数据中的机架长度和机架宽度,生成机架立体模型;
42.根据所述机架类型,从模板数据库中查找出与所述机架对应的机架三维模板;
43.根据与所述机架对应的几何属性数据和所述机架三维模板,对所述机架立体模型进行三维贴图处理,得到机架三维模型。
44.第二方面,本发明提供了一种基于cad二维图纸的机房三维模型自动生成装置,包
括有图纸获取模块、墙体图元查找模块、图元实体识别模块、实体数据获取模块、空间模型生成模块、实体模型生成模块和模型摆放模块;
45.所述图纸获取模块,用于获取目标机房的cad二维图纸,其中,所述cad二维图纸为电子图纸且包含有多个图元/图元组合;
46.所述墙体图元查找模块,通信连接所述图纸获取模块,用于从所述多个图元/图元组合中查找出建筑墙体的图元/图元组合,并根据所述建筑墙体的图元/图元组合,获取机房外墙的轮廓线条数据和墙体厚度数据;
47.所述图元实体识别模块,分别通信连接所述图纸获取模块和所述墙体图元查找模块,用于遍历所述多个图元/图元组合中剩余的各个图元/图元组合,识别出是否有对应的实体,其中,所述实体包括有立柱、单开门、双开门、非机架设备和/或机架;
48.所述实体数据获取模块,分别通信连接所述墙体图元查找模块和所述图元实体识别模块,用于针对所述各个图元/图元组合,若识别出有对应的实体,则根据所述建筑墙体的图元/图元组合和对应的图元/图元组合,获取该实体的相对位置数据和几何属性数据,其中,所述相对位置数据包含有该实体相对于所述机房外墙的坐标位置;
49.所述空间模型生成模块,通信连接所述墙体图元查找模块,用于根据所述轮廓线条数据和所述墙体厚度数据,生成所述目标机房的三维空间模型;
50.所述实体模型生成模块,通信连接所述实体数据获取模块,用于针对识别出的各个实体,根据对应的几何属性数据生成对应的立体模型,并根据该几何属性数据和对应的且从模板数据库中查找出的三维模板,对该立体模型进行三维贴图处理,形成对应的实体三维模型;
51.所述模型摆放模块,分别通信连接所述实体数据获取模块、所述空间模型生成模块和所述实体模型生成模块,用于针对所述各个实体,根据对应的相对位置数据将对应的实体三维模型摆放在所述三维空间模型中,形成所述目标机房的机房三维模型。
52.第三方面,本发明提供了一种计算机设备,包括有通信相连的存储器和处理器,其中,所述存储器用于存储计算机程序,所述处理器用于读取所述计算机程序,执行如第一方面或第一方面中任意可能设计所述的机房三维模型自动生成方法。
53.第四方面,本发明提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,执行如上第一方面或第一方面中任意可能设计所述的机房三维模型自动生成方法。
54.第五方面,本发明提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使所述计算机执行如上第一方面或第一方面中任意可能设计所述的机房三维模型自动生成方法。
附图说明
55.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
56.图1是本发明提供的机房三维模型自动生成方法的流程示意图。
57.图2是本发明提供的在机房三维模型自动生成方法中识别外墙及立柱的cad示例图。
58.图3是本发明提供的在机房三维模型自动生成方法中识别单开门及双开门的cad示例图。
59.图4是本发明提供的在机房三维模型自动生成方法中识别空调的cad示例图。
60.图5是本发明提供的在机房三维模型自动生成方法中识别机架的cad示例图。
61.图6是本发明提供的在机房三维模型自动生成方法中对机架进行自动建模的示例图。
62.图7是本发明提供的机房cad二维图纸与机房三维模型的对照示例图。
63.图8是本发明提供的机房三维模型自动生成装置的结构示意图。
64.图9是本发明提供的计算机设备的结构示意图。
具体实施方式
65.下面结合附图及具体实施例来对本发明作进一步阐述。在此需要说明的是,对于这些实施例方式的说明虽然是用于帮助理解本发明,但并不构成对本发明的限定。本文公开的特定结构和功能细节仅用于描述本发明示例的实施例。然而,可用很多备选的形式来体现本发明,并且不应当理解为本发明限制在本文阐述的实施例中。
66.应当理解,尽管本文可能使用术语第一和第二等等来描述各种对象,但是这些对象不应当受到这些术语的限制。这些术语仅用于区分一个对象和另一个对象。例如可以将第一对象称作第二对象,并且类似地可以将第二对象称作第一对象,同时不脱离本发明的示例实施例的范围。
67.应当理解,对于本文中可能出现的术语“和/或”,其仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a、单独存在b或者同时存在a和b等三种情况;对于本文中可能出现的术语“/和”,其是描述另一种关联对象关系,表示可以存在两种关系,例如,a/和b,可以表示:单独存在a或者同时存在a和b等两种情况;另外,对于本文中可能出现的字符“/”,一般表示前后关联对象是一种“或”关系。
68.如图1~7所示,本实施例第一方面提供的所述基于cad二维图纸的机房三维模型自动生成方法,可以但不限于由具有一定计算资源的计算机设备执行,例如由个人计算机(personal computer,pc,指一种大小、价格和性能适用于个人使用的多用途计算机;台式机、笔记本电脑到小型笔记本电脑和平板电脑以及超级本等都属于个人计算机)、智能手机、个人数字助理(personal digital assistant,pad)或可穿戴设备等电子设备执行,以便在获取目标机房的cad二维图纸后,可通过解析在电子图纸中绘制的二维图元信息,得到图元/图元组合的形状及样式等特征,然后基于此特征识别出建筑墙体、立柱、门、非机架设备和/或机架等实体,并获取与实体相应的几何属性及相对位置,再然后结合模板数据库中的三维模板,进行实体三维模型的生成和摆放,最终得到所述目标机房的机房三维模型,从而可以快速地为机房三维可视化应用提供三维基础数据,减少手工三维建模工作的工作量及人力成本,大大提高了生产效率,便于实际应用和推广。如图1~7所示,所述机房三维模型自动生成方法,可以但不限于包括有如下步骤s1~s7。
69.s1.获取目标机房的cad二维图纸,其中,所述cad二维图纸为电子图纸且包含有多
个图元/图元组合。
70.在所述步骤s1中,所述cad二维图纸是指通过cad(computer aided design,计算机辅助设计)制图软件绘制所述目标机房的二维平面图而得的电子图纸,其包含但不限于有建筑墙体、立柱、门、非机架设备和/或机架等实体的二维形状及它们在所述电子图纸中的坐标位置。所述图元全称为基本图形元素,由于任何一个图形表达都是由若干不同的点、线、面图案或相同的图案循环组合而成的,因此这些点、线及面图案即为基本图形元素。所述建筑墙体、所述立柱、所述门、所述非机架设备和/或所述机架等实体的二维形状即可在所述cad二维图纸中通过一个图元或多个图元组合表达出来。此外,所述cad二维图纸可以但不限于是从存储单元中读取而得或由传输单元传输而得。
71.s2.从所述多个图元/图元组合中查找出建筑墙体的图元/图元组合,并根据所述建筑墙体的图元/图元组合,获取机房外墙的轮廓线条数据和墙体厚度数据。
72.在所述步骤s2中,所述建筑墙体的图元/图元组合用于在所述cad二维图纸中表达建筑墙体的二维形状等信息,具体的,从所述多个图元/图元组合中查找出建筑墙体的图元/图元组合,并根据所述建筑墙体的图元/图元组合,获取机房外墙的轮廓线条数据和墙体厚度数据,包括但不限于有如下步骤s21~s24。
73.s21.对所述多个图元/图元组合进行颜色识别处理,并根据颜色识别结果查找到具有至少三根特定颜色线条的图元/图元组合。
74.在所述步骤s21中,在所述目标机房的cad二维图纸中,由于机房外墙的轮廓线条一般都标记为黄色线条,如图2所示,因此可通过常规的颜色识别处理方式,先查找到具有至少三根黄色线条的图元/图元组合。
75.s22.针对查找到的图元/图元组合,若对应的至少三根特定颜色线条围成有闭合区域,则将该图元/图元组合作为建筑墙体的图元/图元组合,并将该至少三根特定颜色线条作为机房外墙的轮廓线条。
76.在所述步骤s22中,由于机房室内平面是由机房外墙的轮廓线条围成的闭合区域,因此还当满足条件:至少三根特定颜色线条围成有闭合区域时,可确定所述具有至少三根特定颜色线条的图元/图元组合为所述建筑墙体的图元/图元组合。
77.s23.根据所述建筑墙体的图元/图元组合,获取所述轮廓线条的长度及所处位置,以便作为所述机房外墙的轮廓线条数据。
78.s24.根据所述建筑墙体的图元/图元组合,判断所述轮廓线条是否存在宽度属性,若是,则将所述宽度属性作为所述机房外墙的墙体厚度数据,否则取墙体厚度默认值作为所述机房外墙的墙体厚度数据。
79.在所述步骤s24中,所述墙体厚度默认值可举例取值为24cm,在获取到所述机房外墙的轮廓线条数据和墙体厚度数据之后,可将它们记录到一个临时数据表中。此外,前述步骤s23与步骤s24的执行顺序并无先后限定,可以同时、先步骤s23后步骤s24或先步骤s24后步骤s23地执行。
80.s3.遍历所述多个图元/图元组合中剩余的各个图元/图元组合,识别出是否有对应的实体,其中,所述实体包括但不限于有立柱、单开门、双开门、非机架设备和/或机架等。
81.在所述步骤s3中,具体的,遍历所述多个图元/图元组合中剩余的各个图元/图元组合,识别出是否有对应的实体,包括但不限于有如下方式(a)~(e)中的任意一种或它们
的任意组合。
82.(a)判断图元/图元组合是否为实心矩形、内置有立柱标记信息的空心矩形或者与至少三根轮廓线条中任一轮廓线条相交的矩形,若是,则识别出有对应的实体且为立柱。所述实心矩形和所述内置有立柱标记信息的空心矩形分别表达了一种立柱的二维特征;所述至少三根轮廓线条即指所述轮廓线条数据中的至少三根特定颜色线条,所述与至少三根轮廓线条中任一轮廓线条相交的实心矩形/空心矩形可举例如图2所示,很明显表达了另一种立柱的二维特征;因此针对所述实心矩形、所述内置有立柱标记信息的空心矩形或者所述与至少三根轮廓线条中任一轮廓线条相交的矩形,可识别出有对应的实体且为立柱。
83.(b)判断图元/图元组合是否为单扇形,若是,则识别出有对应的实体且为单开门。如图3所示,左侧的单扇形表达了单开门的二维特征,可识别出有对应的实体且为单开门。
84.(c)判断图元/图元组合是否为双扇形,若是,则识别出有对应的实体且为双开门。如图3所示,右侧的双扇形表达了双开门的二维特征,可识别出有对应的实体且为立双开门。
85.(d)判断图元/图元组合是否为位于所述机房室内区域之内的且内置有空调标记信息的矩形,若是,则识别出有对应的实体且为非机架设备的空调。如图4所示,右侧内含字符“空调”的矩形表达了空调的二维特征,可识别出有对应的实体且为空调(作为一种非机架设备)。
86.(e)判断图元/图元组合是否为位于所述机房室内区域之内的且内置有标记信息的矩形;若是,则根据所述标记信息在模板数据库中查找是否存在对应的非机架设备三维模板;若存在,则识别出有对应的实体且为非机架设备,否则识别有对应的实体且为机架。所述模板数据库用于预先存储立柱、单开门、双开门、非机架设备(包括但不限于空调)和/或机架等实体的三维模板,以便后续进行三维贴图处理,因此若所述模板数据库存在某个非机架设备的三维模板,则可表明对应矩形表达了该某个非机架设备的二维特征,可识别出有对应的实体且为非机架设备,否则默认为有对应的实体且为机架。此外,进一步具体的,考虑机架在机房中又一般细分为单开门机架、双开门机架和背靠背机架等,因此如图5所示,识别有对应的实体且为机架,包括但不限于如下方式(e1)~(e3)中的任意一种或它们的任意组合。
87.(e1)根据与所述机架对应的图元/图元组合,判断是否满足如下条件:在矩形一侧的边缘区域中存在一根与对应侧矩形边平行的线条和在矩形中内置有机架编码形式的唯一标记信息,若满足,则识别有对应的实体且为单开门机架。如图5所示,顶部的且内含机架编码字符“hh1105”的矩形即表达了单开门机架的二维特征,可识别有对应的实体且为单开门机架。
88.(e2)根据与所述机架对应的图元/图元组合,判断是否满足如下条件:在矩形相对两侧的边缘区域中各存在一根与对应侧矩形边平行的线条和在矩形中内置有机架编码形式的唯一标记信息,若满足,则识别有对应的实体且为双开门机架。如图5所示,中部的且内含机架编码字符“e06”的矩形即表达了双开门机架的二维特征,可识别有对应的实体且为双开门机架。
89.(e3)根据与所述机架对应的图元/图元组合,判断是否满足如下条件:在矩形相对两侧的边缘区域中各存在一根与对应侧矩形边平行的线条、在矩形中间区域中存在一根将
矩形隔开成两个子矩形的线条和在所述两个子矩形中分别内置有机架编码形式的唯一标记信息,若满足,则识别有对应的实体且为背靠背机架。如图5所示,底部的且内含机架编码字符“a01a”和“a01b”的矩形即表达了背靠背机架的二维特征,可识别有对应的实体且为背靠背机架。
90.s4.针对所述各个图元/图元组合,若识别出有对应的实体,则根据所述建筑墙体的图元/图元组合和对应的图元/图元组合,获取该实体的相对位置数据和几何属性数据,其中,所述相对位置数据包含有该实体相对于所述机房外墙的坐标位置。
91.在所述步骤s4中,具体的,针对通过所述方式(a)识别有立柱实体的图元/图元组合,可根据所述建筑墙体的图元/图元组合和该图元/图元组合,通过常规方式得到机房外墙和该立柱实体在所述电子图纸中的坐标位置(即将矩形的中心坐标作为立柱的位置坐标),进而得到该立柱实体的相对位置数据,以及根据该图元/图元组合,通过常规方式得到该立柱实体的长宽尺寸数据等(即将矩形的长宽尺寸作为立柱的长宽尺寸),以便作为该立柱实体的几何属性数据;针对通过所述方式(b)识别有单开门实体的图元/图元组合,可根据所述建筑墙体的图元/图元组合和该图元/图元组合,通过常规方式得到机房外墙和该单开门实体在所述电子图纸中的坐标位置(即将单扇形的圆心坐标作为门的位置坐标),进而得到该单开门实体的相对位置数据,以及根据该图元/图元组合,通过常规方式得到该单开门实体的宽度尺寸数据等(即将单扇形的扇形半径作为门的宽度),以便作为该单开门实体的几何属性数据;针对通过所述方式(c)识别有双开门实体的图元/图元组合,可根据所述建筑墙体的图元/图元组合和该图元/图元组合,通过常规方式得到机房外墙和该双开门实体在所述电子图纸中的坐标位置(即将双扇形的两圆心的中点坐标作为门的位置坐标),进而得到该双开门实体的相对位置数据,以及根据该图元/图元组合,通过常规方式得到该双开门实体的宽度尺寸数据等(即将双扇形的扇形半径作为门的宽度),以便作为该双开门实体的几何属性数据。
92.针对通过所述方式(d)识别有空调实体的图元/图元组合,详细的,如图4所示,根据所述建筑墙体的图元/图元组合和对应的图元/图元组合,获取该实体的相对位置数据和几何属性数据,包括但不限于有如下步骤:s401.根据与所述空调对应的图元/图元组合,获取矩形的长宽数据和中心坐标;s402.计算所述中心坐标与所述至少三根轮廓线条中各根轮廓线条的第一垂直距离;s403.根据计算结果,确定出与最短的第一垂直距离对应的轮廓线条,并计算该轮廓线条与所述矩形的各个边中心点的第二垂直距离;s404.根据计算结果,确定出与最短的第二垂直距离对应的矩形边,并将该矩形边作为所述空调的背面边,以及将与该矩形边相对的另一矩形边作为所述空调的正面边;s405.将所述长宽数据、所述背面边和所述正面边组成所述空调的几何属性数据。由于所述中心坐标即为所述空调实体在所述电子图纸中的坐标位置,因此基于所述建筑墙体的图元/图元组合得到的机房外墙在所述电子图纸中的坐标位置,可通过常规方式得到该空调实体的相对位置数据。此外,针对通过所述方式(e)识别有非机架设备实体的图元/图元组合,可采用类似的方式获取到对应的相对位置数据和几何属性数据。
93.针对通过所述方式(e1)识别有单开门机架实体的图元/图元组合,可根据所述建筑墙体的图元/图元组合和该图元/图元组合,通过常规方式得到机房外墙和该单开门机架实体在所述电子图纸中的坐标位置(即将矩形的中心坐标作为单开门机架的位置坐标),进
而得到该单开门机架实体的相对位置数据,以及根据该图元/图元组合,通过常规方式得到该单开门机架实体的长宽尺寸数据(即将矩形的长宽尺寸作为单开门机架的长宽尺寸),并将位于所述矩形一侧的边作为门所在边,得到该单开门机架实体的几何属性数据;针对通过所述方式(e2)识别有双开门机架实体的图元/图元组合,可根据所述建筑墙体的图元/图元组合和该图元/图元组合,通过常规方式得到机房外墙和该双开门机架实体在所述电子图纸中的坐标位置(即将矩形的中心坐标作为双开门机架的位置坐标),进而得到该双开门机架实体的相对位置数据,以及根据该图元/图元组合,通过常规方式得到该双开门机架实体的长宽尺寸数据(即将矩形的长宽尺寸作为双开门机架的长宽尺寸),并将分别位于所述矩形相对两侧的边作为门所在边,得到该双开门机架实体的几何属性数据;针对通过所述方式(e3)识别有背靠背机架实体的图元/图元组合,可根据所述建筑墙体的图元/图元组合和该图元/图元组合,通过常规方式得到机房外墙和该背靠背机架实体在所述电子图纸中的坐标位置(即将矩形的中心坐标作为背靠背机架的位置坐标),进而得到该背靠背机架实体的相对位置数据,以及根据该图元/图元组合,通过常规方式得到该背靠背机架实体的长宽尺寸数据(即将矩形的长宽尺寸作为背靠背机架的长宽尺寸),并将分别位于所述矩形相对两侧的边作为门所在边,得到该背靠背机架实体的几何属性数据。
94.另外,针对所述各个图元/图元组合,若未识别出有对应的实体,则在遍历过程中直接跳过,不获取对应的相对位置数据和几何属性数据,即不针对它们进行三维建模。此外,在获取到识别出的各个实体的相对位置数据和几何属性数据之后,同样可将它们记录到一个临时数据表中。
95.s5.根据所述轮廓线条数据和所述墙体厚度数据,生成所述目标机房的三维空间模型。
96.在所述步骤s5中,由于所述轮廓线条数据包含有至少三根轮廓线条的长度及所处位置,因此根据所述轮廓线条数据、所述墙体厚度数据和默认高度(例如3.5m),通过常规的图形拔高处理,可形成立体墙面,得到所述目标机房的三维空间模型。此外,所述步骤s5不一定需要在步骤s3和s4后执行,也可以晚于步骤s2且早于步骤s3/s4执行。
97.s6.针对识别出的各个实体,根据对应的几何属性数据生成对应的立体模型,并根据该几何属性数据和对应的且从模板数据库中查找出的三维模板,对该立体模型进行三维贴图处理,形成对应的实体三维模型。
98.在所述步骤s6中,具体的,针对立柱实体,可根据对应的长宽尺寸数据和默认的立柱高度(例如3.5m),通过常规的图形拔高处理,得到立柱立体模型,然后从所述模板数据库中查找出预存的立柱三维模板,根据立柱实体的几何属性数据对该立柱立体模型的各面进行贴图处理,得到立柱三维模型;针对单开门实体和/或双开门实体,可根据对应的门宽度及默认的门厚度(例如8cm)和门高度(例如190cm),通过常规的拔高处理得到对应的门立体模型,然后从所述模板数据库中查找出预存的门三维模板,根据门实体的几何属性数据对该门立体模型的各面进行贴图处理,得到门三维模型;针对空调实体,可根据对应的长宽尺寸数据和默认的空调高度(例如1.8m),通过常规的图形拔高处理,得到空调立体模型,然后从所述模板数据库中查找出预存的空调三维模板,根据空调实体的几何属性数据对该空调立体模型的各面进行贴图处理,例如根据正面边对空调正面进行贴图,根据背面边对空调背面进行贴图,得到空调三维模型;针对其它的非机架设备实体,可根据对应的长宽尺寸数
据和默认的设备高度(例如1.8m),通过常规的图形拔高处理,得到对应的设备立体模型,然后从所述模板数据库中查找出预存的非机架设备实体三维模板,根据非机架设备实体的几何属性数据对该设备立体模型的各面进行贴图处理,得到对应的设备三维模型。
99.针对机架实体,当获取到该机架的机架编码时(即通过读取矩形中的机器编码字符来获取),如图6所示,针对识别出的各个实体,根据对应的几何属性数据生成对应的立体模型,并根据该几何属性数据和对应的且从模板数据库中查找出的三维模板,对该立体模型进行三维贴图处理,形成对应的实体三维模型,包括但不限于有如下步骤s61~s64。
100.s61.根据所述机架编码,从资源管理数据库中查询出所述机架的机架高度和机架类型。
101.s62.根据所述机架高度及在与所述机架对应的几何属性数据中的机架长度和机架宽度,生成机架立体模型。
102.在所述步骤s62中,同样可通过常规的图形拔高处理方式,得到所述机架立体模型。
103.s63.根据所述机架类型,从模板数据库中查找出与所述机架对应的机架三维模板。
104.s64.根据与所述机架对应的几何属性数据和所述机架三维模板,对所述机架立体模型进行三维贴图处理,得到机架三维模型。
105.在所述步骤s64中,若与所述机架对应的几何属性数据包含有门所在边,可具体根据该门所在边对单开门机架、双开门机架或背靠背机架的开门面进行贴图处理,得到对应的机架三维模型。
106.s7.针对所述各个实体,根据对应的相对位置数据将对应的实体三维模型摆放在所述三维空间模型中,形成所述目标机房的机房三维模型。
107.由此基于前述步骤s1~s7所描述的机房三维模型自动生成方法,提供了一种能够识别机房内实体并完成三维建模的自动化方案,即在获取目标机房的cad二维图纸后,可通过解析在电子图纸中绘制的二维图元信息,得到图元/图元组合的形状及样式等特征,然后基于此特征识别出建筑墙体、立柱、门、非机架设备和/或机架等实体,并获取与实体相应的几何属性及相对位置,再然后结合模板数据库中的三维模板,进行实体三维模型的生成和摆放,最终得到所述目标机房的机房三维模型,从而可以快速地为机房三维可视化应用提供三维基础数据,减少手工三维建模工作的工作量及人力成本,即相比较于人工绘制方式,建模速度快且准确率高,大大提高了生产效率,便于实际应用和推广。此外,基于cad二维图纸建模得到机房三维模型的示例可如图7所示。
108.如图8所示,本实施例第二方面提供了一种实现第一方面所述的机房三维模型自动生成方法的虚拟装置,包括有图纸获取模块、墙体图元查找模块、图元实体识别模块、实体数据获取模块、空间模型生成模块、实体模型生成模块和模型摆放模块;
109.所述图纸获取模块,用于获取目标机房的cad二维图纸,其中,所述cad二维图纸为电子图纸且包含有多个图元/图元组合;
110.所述墙体图元查找模块,通信连接所述图纸获取模块,用于从所述多个图元/图元组合中查找出建筑墙体的图元/图元组合,并根据所述建筑墙体的图元/图元组合,获取机房外墙的轮廓线条数据和墙体厚度数据;
111.所述图元实体识别模块,分别通信连接所述图纸获取模块和所述墙体图元查找模块,用于遍历所述多个图元/图元组合中剩余的各个图元/图元组合,识别出是否有对应的实体,其中,所述实体包括有立柱、单开门、双开门、非机架设备和/或机架;
112.所述实体数据获取模块,分别通信连接所述墙体图元查找模块和所述图元实体识别模块,用于针对所述各个图元/图元组合,若识别出有对应的实体,则根据所述建筑墙体的图元/图元组合和对应的图元/图元组合,获取该实体的相对位置数据和几何属性数据,其中,所述相对位置数据包含有该实体相对于所述机房外墙的坐标位置;
113.所述空间模型生成模块,通信连接所述墙体图元查找模块,用于根据所述轮廓线条数据和所述墙体厚度数据,生成所述目标机房的三维空间模型;
114.所述实体模型生成模块,通信连接所述实体数据获取模块,用于针对识别出的各个实体,根据对应的几何属性数据生成对应的立体模型,并根据该几何属性数据和对应的且从模板数据库中查找出的三维模板,对该立体模型进行三维贴图处理,形成对应的实体三维模型;
115.所述模型摆放模块,分别通信连接所述实体数据获取模块、所述空间模型生成模块和所述实体模型生成模块,用于针对所述各个实体,根据对应的相对位置数据将对应的实体三维模型摆放在所述三维空间模型中,形成所述目标机房的机房三维模型。
116.本实施例第二方面提供的前述装置的工作过程、工作细节和技术效果,可以参见第一方面所述的机房三维模型自动生成方法,于此不再赘述。
117.如图9所示,本实施例第三方面提供了一种执行第一方面所述机房三维模型自动生成方法的计算机设备,包括有通信相连的存储器和处理器,其中,所述存储器用于存储计算机程序,所述处理器用于读取所述计算机程序,执行如第一方面所述的机房三维模型自动生成方法。具体举例的,所述存储器可以但不限于包括随机存取存储器(random-access memory,ram)、只读存储器(read-only memory,rom)、闪存(flash memory)、先进先出存储器(first input first output,fifo)和/或先进后出存储器(first input last output,filo)等等;所述处理器可以但不限于采用型号为stm32f105系列的微处理器。此外,所述计算机设备还可以但不限于包括有电源模块、显示屏和其它必要的部件。
118.本实施例第三方面提供的前述计算机设备的工作过程、工作细节和技术效果,可以参见第一方面所述的机房三维模型自动生成方法,于此不再赘述。
119.本实施例第四方面提供了一种存储包含第一方面所述机房三维模型自动生成方法的指令的计算机可读存储介质,即所述计算机可读存储介质上存储有指令,当所述指令在计算机上运行时,执行如第一方面所述的机房三维模型自动生成方法。其中,所述计算机可读存储介质是指存储数据的载体,可以但不限于包括软盘、光盘、硬盘、闪存、优盘和/或记忆棒(memory stick)等计算机可读存储介质,所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。
120.本实施例第四方面提供的前述计算机可读存储介质的工作过程、工作细节和技术效果,可以参见第一方面所述的机房三维模型自动生成方法,于此不再赘述。
121.本实施例第五方面提供了一种包含指令的计算机程序产品,当所述指令在计算机上运行时,使所述计算机执行如第一方面所述的机房三维模型自动生成方法。其中,所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。
122.最后应说明的是,本发明不局限于上述可选的实施方式,任何人在本发明的启示下都可得出其他各种形式的产品。上述具体实施方式不应理解成对本发明的保护范围的限制,本发明的保护范围应当以权利要求书中界定的为准,并且说明书可以用于解释权利要求书。
再多了解一些

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

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

相关文献