临时建筑模型生成方法和装置、设备及存储介质与流程

文档序号:22501003发布日期:2020-10-13 09:33阅读:92来源:国知局
临时建筑模型生成方法和装置、设备及存储介质与流程

本公开涉及电网变电工程设计技术领域,尤其涉及一种临时建筑模型生成方法和装置、设备及存储介质。



背景技术:

在相关技术中,临时建筑区域搭设通常采用人工摆放方式进行。即,由设计研发人员使用三维设计软件在三维空间中人为操作摆放临时建筑模型。但是,由于三维空间的特征,使得人为操作摆放较慢,这就极大地影响了所构建的临时建筑模型的构建速率,导致临时建筑模型构建消耗时间成本较高。



技术实现要素:

有鉴于此,本公开提出了一种临时建筑模型生成方法,可以有效提高临时建筑模型的生成速率,节省临时建筑模型生成的时间成本。

根据本公开的一方面,提供了一种临时建筑模型生成方法,包括:

获取所创建的临建区域以及要在所述临建区域内生成的模型;其中,所述模型的个数为两个以上;

由所选取的所述模型中依次提取第一模型和第二模型,并基于所述第一模型的源文件和所述第二模型的源文件得到第一坐标数组和第二坐标数组;

其中,所述第一模型和所述第二模型均为获取到的所述模型中的任意一个;所述第一坐标数组为所述第一模型的顶点坐标数组,所述第二坐标数组为所述第二模型的顶点坐标数组;

分别对所述第一坐标数组和所述第二坐标数组进行转换,得到相应的第一投影坐标组和第二投影坐标组;

依次遍历所述第一投影坐标组和所述第二投影坐标组中的投影坐标,根据所述第一投影坐标组中的投影坐标和所述第二投影坐标组中的投影坐标,得到所述第一模型的各顶点与所述第二模型的各顶点之间的距离;

在所述第一模型的各顶点与所述第二模型的各顶点之间的距离均大于或等于预设数值时,按照预设顺序在所述临建区域内自动生成所述第一模型和所述第二模型。

在一种可能的实现方式中,基于所述第一模型的源文件和所述第二模型的源文件得到第一坐标数组和第二坐标数值,包括:

读取所述第一模型的源文件和所述第二模型的源文件;

调用unity平台中的网格渲染器组件,根据所述网格渲染器组件由所述第一模型的源文件和所述第二模型的源文件中提取得到所述第一坐标数组和所述第二坐标数组。

在一种可能的实现方式中,对所述第一坐标数组和所述第二坐标数组进行转换,得到相应的第一投影坐标组和第二投影坐标组,包括:

调用untiy平台中的本地坐标到世界坐标变换矩阵组件,根据所述本地坐标到世界坐标变换矩阵组件分别对所述第一坐标数组中的各个坐标和所述第二坐标数组中的各个坐标进行变换,得到相应的第一矩阵组和第二矩阵组;

对所述第一矩阵组和所述第一坐标数组进行乘积计算得到所述第一投影坐标组,并对所述第二矩阵组和所述第二坐标数组进行乘积计算得到所述第二投影坐标组。

在一种可能的实现方式中,还包括:

在所述第一模型的各顶点与所述第二模型的各顶点之间的距离存在小于所述预设数值的情况时,推送并显示无法在所述临建区域内生成临时建筑模型的提示信息。

在一种可能的实现方式中,还包括:

获取所述临建区域的边界坐标;

根据所述第一投影坐标组和所述边界坐标,确定所述第一模型与所述临建区域的位置关系;并根据所述第二投影坐标组和所述边界坐标,确定所述第二模型与所述临建区域的位置关系;

在所述第一模型的边界超过所述临建区域的边界,或所述第二模型的边界超过所述临建区域的边界时,推送并显示无法在所述临建区域生成临建模型的指示信息。

在一种可能的实现方式中,还包括:

在所述第一模型的边界均处于所述临建区域的边界,且所述第二模型的边界均处于所述临建区域的边界时,直接执行依次遍历所述第一投影坐标组和所述第二投影坐标组中的数值,根据所述第一投影坐标组和所述第二投影坐标组,得到所述第一模型的各顶点与所述第二模型的各顶点之间的距离的步骤。

在一种可能的实现方式中,根据所述第一投影坐标和所述边界坐标,确定所述第一模型与所述临建区域的位置关系,包括:

对所述第一投影坐标组中的各投影坐标进行向量叉乘,得到所述第一模型的边界垂直点;

根据所述第一模型的边界垂直点与所述边界坐标,确定所述第一模型与所述临建区域的位置关系。

根据本申请的另一方面,还提供了一种临时建筑模型生成装置,包括第一获取模块、第二获取模块、坐标转换模块、距离计算模块和模型生成模块;

所述第一获取模块,被配置为获取所创建的临建区域以及要在所述临建区域内生成的模型;其中,所述模型的个数为两个以上;

所述第二获取模块,被配置为由所选取的所述模型中依次提取第一模型和第二模型,并基于所述第一模型的源文件和所述第二模型的源文件得到第一坐标数组和第二坐标数组;

其中,所述第一模型和所述第二模型均为获取到的所述模型中的任意一个;所述第一坐标数组为所述第一模型的顶点坐标数组,所述第二坐标数组为所述第二模型的顶点坐标数组;

所述坐标转换模块,被配置为分别对所述第一坐标数组和所述第二坐标数组进行转换,得到相应的第一投影坐标组和第二投影坐标组;

所述距离计算模块,被配置为依次遍历所述第一投影坐标组和所述第二投影坐标组中的投影坐标,根据所述第一投影坐标组中的投影坐标和所述第二投影坐标组中的投影坐标,得到所述第一模型的各顶点与所述第二模型的各顶点之间的距离;

所述模型生成模块,被配置为在所述第一模型的各顶点与所述第二模型的各顶点之间的距离均大于或等于预设数值时,按照预设顺序在所述临建区域内自动生成所述第一模型和所述第二模型。

根据本申请的一方面,还提供了一种临时建筑模型生成设备,包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为执行所述可执行指令时实现前面任一所述的方法。

根据本申请的另一方面,还提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现前面任一所述的方法。

本申请的临时建筑模型生成方法,通过获取当前需要在该临建区域内生成的模型,基于所获取到的模型中的第一模型的各个顶点坐标和第二模型的各个顶点坐标进行坐标转换,得到相应的第一投影坐标组和第二投影坐标组。进而再通过第一投影坐标组中的投影坐标和第二投影坐标组中的投影坐标得到第一模型的各顶点与第二模型的各顶点之间的距离,并在第一模型的各顶点与第二模型的各顶点之间的距离大于或等于预设数值时,按照预设顺序在临建区域内自动生成第一模型和第二模型,以实现临时建筑模型的自动生成的目的。其相较于相关技术中由研发设计人员手动进行各模型的摆放的方式构建生成临时建筑模型,本申请的临时建筑模型生成方法只需要由研发设计人员创建相应的临建区域并限定所需要的模型,不需要再执行其他人为操作即可实现临时建筑模型的自动生成,这就有效简化了临时建筑模型的生成过程,降低了临时建筑模型的生成难度,从而大大提高了临时建筑模型的生成效率。

根据下面参考附图对示例性实施例的详细说明,本公开的其它特征及方面将变得清楚。

附图说明

包含在说明书中并且构成说明书的一部分的附图与说明书一起示出了本公开的示例性实施例、特征和方面,并且用于解释本公开的原理。

图1示出本申请一实施例的临时建筑模型生成方法的流程图;

图2示出本申请另一实施例的临时建筑模型生成方法的流程图;

图3示出本申请实施例的临时建筑模型生成装置的结构框图;

图4示出本申请实施例的临时建筑模型生成设备的结构框图。

具体实施方式

以下将参考附图详细说明本公开的各种示例性实施例、特征和方面。附图中相同的附图标记表示功能相同或相似的元件。尽管在附图中示出了实施例的各种方面,但是除非特别指出,不必按比例绘制附图。

在这里专用的词“示例性”意为“用作例子、实施例或说明性”。这里作为“示例性”所说明的任何实施例不必解释为优于或好于其它实施例。

另外,为了更好的说明本公开,在下文的具体实施方式中给出了众多的具体细节。本领域技术人员应当理解,没有某些具体细节,本公开同样可以实施。在一些实例中,对于本领域技术人员熟知的方法、手段、元件和电路未作详细描述,以便于凸显本公开的主旨。

图1示出根据本公开一实施例的临时建筑模型生成方法的流程图。如图1所示,该方法包括:步骤s100,获取所创建的临建区域以及要在临建区域内生成的模型。此处,需要说明的是,临建区域指的是临时建筑模型所占的区域。该区域可以为矩形,也可以为圆形等各种形状。在本申请中,为了便于后续计算,临建区域设置可以设置为矩形,以简化后续计算过程。同时,本领域技术人员可以理解的是,临建区域内生成的临时建筑中所包括的建筑模型通常为多个,因此,临时建筑内所生成的模型的个数一般为两个以上。

步骤s200,由所选取的模型中依次提取第一模型和第二模型,并基于第一模型的源文件和第二模型的源文件得到第一坐标数组和第二坐标数组。其中,第一模型和第二模型均为获取到的模型中的任意一个。此处,应当指出的是,由所获取到的模型中依次提取第一模型和第二模型时,可以采用排列组合的方式来实现。即,对所获取到的模型进行两两组合,得到多个模型组。进而再依次获取各模型组中的两个模型分别作为第一模型和第二模型。

如:在获取到的模型包括三个时,这三个模型分别为m1、m2和m3。对m1、m2和m3进行两两组合,得到三个模型组。所得到的三个模型组分别为:m1m2、m2m3和m1m3。进而,再依次选取这三个模型组中的模型分别作为第一模型和第二模型。

此处,还应当指出的是,所得到的第一坐标数组为第一模型的顶点坐标数组,第二坐标数组为第二模型的顶点坐标数组。由于第一模型和第二模型的形状可以为不规则形状,因此第一模型的顶点和第二模型的顶点的个数根据模型的形状的不同有所不同。由此,所得到的第一坐标数组中的顶点坐标与第二坐标数组中的顶点坐标可以相同,也可不同。如:在第一模型为矩形体时,第一坐标数组中的坐标个数为8个,分别为矩形体的8个顶点。在第一模型为三角锥体时,第一坐标数组中的坐标个数则为4个。

步骤s300,分别对第一坐标数组和第二坐标数组进行转换,得到相应的第一投影坐标和第二投影坐标。也就是说,分别对第一坐标数组中的各个顶点坐标进行转换,得到第一投影坐标组。同时,对第二坐标数组中的各顶点坐标进行转换,得到对应的第二投影坐标组。其中,第一投影坐标组包含有多个第一投影坐标,第一投影坐标的个数与第一坐标数组中的顶点坐标的个数相同,且一一对应。第二投影坐标组同样包含有多个第二投影坐标。第二投影坐标的个数与第二坐标数组中的顶点坐标的个数相同,且一一对应。

进而再通过步骤s400,依次遍历第一投影坐标组和第二投影坐标组中的投影坐标,根据第一投影坐标组中的投影坐标和第二投影坐标组中的投影坐标,得到第一模型的各顶点与第二模型的各顶点之间的距离。最终再通过步骤s500,在第一模型的各顶点与第二模型的各顶点之间的距离均大于或等于预设数值时,按照预设顺序在临建区域内自动生成第一模型和第二模型,从而实现自动生成临时建筑模型的目的。

此处,需要说明的是,在第一模型的各顶点与第二模型的各顶点之间的距离均大于或等于预设数值指的是,第一模型的各顶点与第二模型的各顶点之间的距离中不存在小于预设数值的情况。

由此,本申请的临时建筑模型生成方法,通过获取当前需要在该临建区域内生成的模型,基于所获取到的模型中的第一模型的各个顶点坐标和第二模型的各个顶点坐标进行坐标转换,得到相应的第一投影坐标组和第二投影坐标组。进而再通过第一投影坐标组中的投影坐标和第二投影坐标组中的投影坐标得到第一模型的各顶点与第二模型的各顶点之间的距离,并在第一模型的各顶点与第二模型的各顶点之间的距离大于或等于预设数值时,按照预设顺序在临建区域内自动生成第一模型和第二模型,以实现临时建筑模型的自动生成的目的。其相较于相关技术中由研发设计人员手动进行各模型的摆放的方式构建生成临时建筑模型,本申请的临时建筑模型生成方法只需要由研发设计人员创建相应的临建区域并限定所需要的模型,不需要再执行其他人为操作即可实现临时建筑模型的自动生成,这就有效简化了临时建筑模型的生成过程,降低了临时建筑模型的生成难度,从而大大提高了临时建筑模型的生成效率。

其中,需要说明的是,本申请的临时建筑模型生成方法可以基于unity开发平台来实现。即,在unity开发平台中添加相应的模型数据库,该模型数据库中存储有多个不同的建筑模型。并且,该模型数据库还可以根据实际情况进行数据更新,以保证模型种类的全面性和多样性,从而能够满足各种各样不同的临时建筑模型的构建和生成。

并且,在基于unity开发平台执行本申请的临时建筑模型生成方法时,在获取所创建的临建区域时,可以由研发设计人员直接在unity的操作界面上勾画出当前所需要的区域,从而实现临建区域的创建。其操作简单,易于实现。

进一步的,在基于unity开发平台进行临建区域的创建以及模型的选取时,在一种可能的实现方式中,基于第一模型的源文件和第二模型的源文件分别得到第一坐标数组和第二坐标数组,可以通过以下方式来实现。

首先,读取第一模型的源文件和第二模型的源文件。其中,存储在数据库中的模型的源文件中包含有该模型的所有数据,如:顶点信息、层级结构等。进而再通过调用untiy开发平台中的网格渲染器组件(即,meshrenderer),根据网格渲染器组件由第一模型的源文件和第二模型的源文件中提取得到第一坐标数组和第二坐标数组。

也就是说,通过调用untiy开发平台中的meshrenderer,根据meshrenderer由第一模型的源文件和第二模型的源文件中分别提取出第一模型的顶点信息和第二模型的顶点信息。通过基于untiy开发平台,直接调用untiy开发平台中的组件进行模型的顶点信息的提取,不需要再重新进行信息提取的开发和设计,这也就更进一步地降低了本申请的临时建筑模型生成方法的开发难度,同时还进一步简化了信息提取的操作过程。

更进一步的,在获取到第一模型的各顶点坐标和第二模型的各顶点坐标后,即可对第一坐标数组和第二坐标数组进行坐标转换,得到相应的第一投影坐标组和第二投影坐标组。

根据前面所述,在基于untiy开发平台执行本申请的临时建筑模型生成方法时,对第一坐标数组和第二坐标数组进行坐标转换时,可以通过直接调用untiy开发平台中的本地坐标到世界坐标变换矩阵组件(即,mesh.transform.localtoworldmatrix)来实现。

即,参阅图2,首先,通过步骤s110,在untiy开发平台的三维场景中创建临建区域以获取临建区域,以及步骤s120,选择在临建区域内自动生成的模型以获取所选取的模型后,再通过步骤s200’,由所选取的模型中依次提取第一模型和第二模型,并基于第一模型的源文件和第二模型的源文件,根据meshrenderer得到第一坐标数组和第二坐标数组后,即可通过步骤s310,调用untiy平台中的本地坐标到世界坐标变换矩阵组件,根据本地坐标到世界坐标变换矩阵组件分别对第一坐标数组中的各个坐标和第二坐标数组中的各个坐标进行变换,得到相应的第一矩阵组和第二矩阵组。然后,再通过步骤s320,对第一矩阵组和第一坐标数组进行乘积计算得到第一投影坐标组,并对第二矩阵组和第二坐标数组进行乘积计算得到第二投影坐标组。

此处,需要指出的是,根据本地坐标到世界坐标变换矩阵组件分别对第一坐标数组中的各个坐标和第二坐标数组中的各个坐标进行变换时,所得到的第一矩阵组中包含有多个矩阵,第二矩阵组中同样也包含有多个矩阵。其中,第一矩阵组中的多个矩阵与第一坐标数组中的各顶点坐标一一对应,第二矩阵组中的多个矩阵与第二坐标数组中的各顶点坐标一一对应。

同时,还应当说明的是,对第一矩阵组和第一坐标数组进行乘积计算以得到第一投影坐标组,指的是分别对第一矩阵组中的矩阵与第一坐标数组中的顶点坐标一一对应进行乘积运算。相应的,对第二矩阵组和第二坐标数组进行乘积计算以得到第二投影坐标组,则指的是分别对第二矩阵组中的各个矩阵与第二坐标数组中的各顶点坐标一一对应进行乘积运算。

举例来说,第一坐标数组中包含有5个顶点坐标,分别为a、b、c、d和e。相应的,对第一坐标数组中的各顶点坐标进行转换时得到的第一矩阵组同样包含有5个矩阵,分别为:a1、a2、a3、a4和a5。其中,a1为对顶点坐标a进行转换得到的,a2为对顶点坐标b转换得到的,依次类推。在对第一矩阵组和第一坐标数组进行乘积计算以得到第一投影坐标组时,则分别对a1与a进行乘积计算得到一投影坐标,对a2与b进行乘积运算得到一投影坐标,对a3与c进行乘积计算得到一投影坐标,对a4与d进行乘积计算得到一投影坐标,对a5与e进行乘积运算得到一投影坐标,从而最终得到包含有5个投影坐标的第一投影坐标组。

此处,还需要说明的是,在对第一矩阵组中的各矩阵与第一坐标数组中的各顶点坐标一一对应进行乘积计算时,可以采用左乘的计算方式。也就是说,在untiy开发平台中使用左乘计算。即,投影坐标=矩阵*顶点坐标。通过调用untiy开发平台中的左乘计算对第一矩阵组中的各矩阵与第一坐标数组中的各顶点坐标进行一一对应乘积计算,计算方式简便,且只需直接调用相应的计算公式进行计算即可,不需要再进行具体算法的开发,因而也就更进一步的降低了本申请的临时建筑模型的生成方法的开发难度。

其中,对第二矩阵组和第二坐标数组进行乘积计算以得到第二投影坐标组的具体过程与上面所述的第一矩阵组和第一坐标数组进行乘积计算的过程相同或相似,因此此处不再进行举例说明。

在通过上述任一方式得到第一模型的第一投影坐标组和第二模型的第二投影坐标组之后,即可进行第一模型与第二模型之间的各顶点距离的计算,以便于根据第一模型与第二模型之间的距离进行临建区域内的临时建筑模型的自动生成。

在一种可能的实现方式中,为了进一步提高本申请的临时建筑模型生成方法的精确度,在依次遍历第一投影坐标组和第二投影坐标组中的投影坐标,根据第一投影坐标组中的投影坐标和第二投影坐标组中的投影坐标,得到第一模型的各顶点与第二模型的各顶点之间的距离之前(即,在计算第一模型与第二模型之间的距离之前),还包括:获取临建区域的边界坐标,根据第一投影坐标组和边界坐标确定第一模型与临建区域的位置关系,并根据第二投影坐标组和边界坐标确定第二模型与临建区域的位置关系的步骤。

此处,需要解释说明的是,第一模型与临建区域的位置关系指的是第一模型的大小与临建区域的大小关系。即,第一模型是否能够处于临建区域的内部。对应的,第二模型与临建区域的位置关系则指的是第二模型的大小与临建区域的大小关系。

在第一模型的边界超过临建区域的边界,或第二模型的边界超过临建区域的边界时,表明此时第一模型或者是第二模型中存在一个模型是超出了临建区域的边界范围的。也就是说,当前所创建的临建区域容不下第一模型或第二模型。因此,此时也就不需要进行后续模型之间的各顶点距离的计算的步骤了。即,暂停临时建筑模型的生成过程,同时直接推送并显示无法在临建区域生成临建模型的指示信息,以提示研发设计人员需要重新创建临建区域或重新进行模型的选取。

在第一模型的边界均处于临建区域的边界,且第二模型的边界均处于临建区域的边界时,表明第一模型和第二模型均位于临建区域范围内,因此可直接执行依次遍历第一投影坐标组和第二投影坐标组中的数值,根据第一投影坐标组和第二投影坐标组,得到第一模型的各顶点与第二模型的各顶点之间的距离的步骤。

通过在获取到第一模型的第一投影坐标组和第二模型的第二投影坐标组后,进行第一模型和第二模型各顶点之间的距离的计算之前,先根据第一模型的第一投影坐标组与边界坐标,以及第二模型的第二投影坐标组与边界坐标,来分别确定第一模型与临建区域的位置关系以及第二模型与临建区域的位置关系。从而在确定第一模型和第二模型均能够处于临建区域内时,再进行第一模型与第二模型的各顶点间的距离的计算。这也就有效避免了不必要的计算过程,从而节省了资源,减少了功耗。

其中,在根据第一投影坐标组和边界坐标,确定第一模型与临建区域的位置关系时,以及根据第二投影坐标组和边界坐标,确定第二模型与临建区域的位置关系时,可以通过以下方式来实现。

参阅图2,在通过上述步骤s320,获取到各模型的投影坐标后,可先通过步骤s004,向量叉乘得到各模型距边界的垂直点。此处需要指出的是,各模型距边界的垂直点指的是各模型距离临建区域的边界的垂直点。

即,对第一投影坐标组中的各投影坐标进行向量叉乘,得到第一模型距离临建区域的边界的垂直点,以确定第一模型与临建区域的位置关系。对第二投影坐标组中的各投影坐标进行向量叉乘,得到第二模型距离临建区域的边界的垂直点,以确定第二模型与临建区域的位置关系。

此处,本领域技术人员可以理解的是,所得到的第一模型距边界的垂直点包括有多个,每个边界的垂直点对应第一模型的不同边界。并且,第一模型的各个边界可以通过每相邻两个顶点坐标来确定。同时,向量叉乘为本领域的常规技术手段。向量叉乘公式为:uxv={u2v3-v2u3,u3v1-v3u1,u1v2-u2v1}。其中,u和v均为向量,u=(u1,u2,u3);v=(v1,v2,v3)。

基于该向量叉乘公式,对第一模型的第一投影坐标组中的各投影坐标进行向量叉乘,得到第一模型距临建区域的边界的垂直点,同时对第二模型的第二投影坐标组中的各投影坐标进行向量叉乘得到第二模型距临建区域的边界的垂直点,进而再根据所得到的第一模型距边界的垂直点,以确定第一模型是否越过临建区域的边界,通过对第二模型距临建区域的边界的垂直点以确定第二模型是否越过临建区域的边界,最终保证了后续进行临建区域内的临时建筑模型的自动生成时,所生成的临时建筑模型均能够处于临建区域内,这也就有效提高了本申请的临时建筑模型生成方法的可靠性和准确度。

另外,还需要指出的是,在通过上述步骤确定第一模型和第二模型均能够位于临建区域内后,即可对第一模型的各顶点与第二模型的各顶点之间的距离进行计算,进而再根据计算得到的第一模型与第二模型之间的距离进行临时建筑模型的生成过程。

其中,在一种可能的实现方式中,根据第一投影坐标组中的投影坐标和第二投影坐标组中的投影坐标计算得到第一模型的各顶点与第二模型的各顶点之间的距离时,可以直接采用依次遍历第一投影坐标组和第二投影坐标组中的投影坐标,并利用两点间距离公式进行第一模型的顶点与第二模型的顶点之间的距离的计算。

举例来说,第一投影坐标组中包含有5个投影坐标,分别为:ty1、ty2、ty3、ty4和ty5,第二投影坐标中包含有6个投影坐标,分别为:ty1、ty2、ty3、ty4、ty5和ty6。

依次遍历第一投影坐标组中的各投影坐标和第二投影坐标组中的各投影坐标时,可先选取第一投影坐标组中的投影坐标ty1与第二投影坐标组中的投影坐标ty1,进而利用两点间距离计算公式对ty1与ty1之间的距离进行计算,得到第一模型中的第一顶点与第二模型中的第一顶点之间的距离:ty1ty1。

然后,选取第一投影坐标组中的投影坐标ty2与第二投影坐标组中的投影坐标ty1,进而利用两点间距离计算公式对ty2与ty1之间的距离进行计算,得到第一模型中的第二顶点与第二模型中的第一顶点之间的距离:ty2ty1。

接着,选取第一投影坐标组中的投影坐标ty3与第二投影坐标组中的投影坐标ty1,进而利用两点间距离计算公式对ty3与ty1之间的距离进行计算,得到第一模型中的第三顶点与第二模型中的第一顶点之间的距离:ty3ty1。

以此类推,最终得到第一模型的顶点与第二模型的顶点的距离包括有30个,分别为:ty1ty1、ty1ty2、ty1ty3、ty1ty4、ty1ty5、ty1ty6、ty2ty1、ty2ty2、ty2ty3、ty2ty4、ty2ty5、ty2ty6、ty3ty1、ty3ty2、ty3ty3、ty3ty4、ty3ty5、ty3ty6、……。此处不再进行一一例举。

在计算得到第一模型的顶点与第二模型的顶点之间的距离后,即可对第一模型的顶点与第二模型的顶点之间的距离与预设数值进行比较判断。在第一模型的顶点与第二模型的顶点之间的距离中不存在小于预设数值时,也就是说,第一模型的顶点与第二模型的顶点之间的距离均大于或等于预设数值时,则可以直接按照预设顺序在临建区域内自动生成相应的第一模型和第二模型。此处,需要指出的是,预设顺序指的是各模型在临建区域内的摆放顺序。如:第一模型和第二模型在临建区域内的摆放顺序。

其中,预设顺序可以根据模型的选取顺序来确定。即,在选取临建区域内所需要生成的模型时,各模型的选取顺序也就决定了各模型在临建区域内的摆放顺序。另外,预设顺序也可以通过对所选取的模型设置顺序标签,进而根据所设置的顺序标签来确定。其中,在对各模型设置顺序标签时,可以在将模型存储至模型数据库中时预先设定好。

在第一模型的顶点与第二模型的顶点之间的距离中存在小于预设数值时,则此时表明不能在临建区域内自动生成第一模型和第二模型,因此可直接推送并显示无法在临建区域内生成临时建筑模型的提示信息,以提示研发设计人员当前所选取的模型中存在与临建区域不匹配的情况。

此处,需要指出的是,预设数值可以根据实际情况自行设置。其中,预设数值的单位为米,其取值可以由研发设计人员根据实际情况进行设置。小指出的是,预设数值用于表示所选取的各模型与边界相距的最短距离,以及各模型之间的最短距离。预设数值设置为多少,临时建筑模型生成时判断的最小间距就是多少。在本申请的临时建筑模型生成方法中,预设数值的取值可以设置为1。通过将预设数值的取值设置为1,更进一步地提高了本申请的临时建筑模型生成方法的可靠性和精确度。

更进一步的,为了更进一步的提高本申请的临时建筑模型生成方法的精确度和可靠性,在执行步骤s400,根据第一投影坐标组中的投影坐标和第二投影坐标组中的投影坐标,得到第一模型的各顶点与第二模型的各顶点之间的距离的同时,还包括根据第一投影坐标组中的投影坐标和临建区域的边界坐标,以及第二投影坐标组中的投影坐标和临建区域的边界坐标,分别得到第一模型到临建区域的边界之间的距离以及第二模型到临建区域之间的距离。对应的,在进行各距离与预设数值的比较时,还包括对第一模型到临建区域的边界之间的距离与预设数值的比较以及第二模型到临建区域的边界的距离与预设数值之间的比较。

也就是说,参阅图2,在一种可能的实现方式中,还包括步骤s400’,将得到的第一投影坐标组、第二投影坐标组和临建区域的边界坐标分别循环遍历,并利用两点距离公式计算得到第一模型的各顶点与第二模型的各顶点之间的距离,以及第一模型到临建区域的边界的距离和第二模型到临建区域的边界的距离。

进而再通过步骤s510,将得到的所有距离分别与预设数值(预设数值的取值可为1)进行比较。在比较出所有的距离均大于或等于预设数值时,执行步骤s520,在临建区域内按照预设顺序自动生成第一模型和第二模型,以构建得到临时建筑模型。在比较出所有的距离中存在小于预设数值的情况时,则返回步骤s110和步骤s120,并推送显示相关提示信息。

需要说明的是,尽管以图2作为示例介绍了本申请的临时建筑模型生成方法,但本领域技术人员能够理解,本公开应不限于此。事实上,用户完全可根据个人喜好和/或实际应用场景灵活设定各个步骤的执行顺序以及各步骤的具体实现方式,只要能够达到临时建筑模型的自动生成的目的即可。

另外,还需要指出的是,由于在临建区域内生成的模型的个数通常为多个,因此在进行各模型之间的距离计算时,可以采用多线程的方式来进行,以提高临时建筑模型生成的速率。

也就是说,由所选取的模型中选取第一模型和第二模型时,通过对所选取的模型进行两两组合得到模型组,进而再以各模型组中的模型分别作为第一模型和第二模型后,对各模型组中的第一模型和第二模型进行坐标转换及计算的过程可以采用多线程的方式并行执行,以保证所选取的模型能够全部生成到临建区域内。

相应的,基于同一发明构思,本申请还提供了一种临时建筑模型生成装置。由于本申请提供的临时建筑模型生成装置的工作原理与本申请的临时建筑模型生成方法的原理相同或相似,因此重复之处不再赘述。

参阅图3,本申请提供的临时建筑模型生成装置包括第一获取模块、第二获取模块、坐标转换模块、距离计算模块和模型生成模块。

其中,第一获取模块,被配置为获取所创建的临建区域以及要在临建区域内生成的模型;此处,需要指出的是,模型的个数为两个以上。第二获取模块,被配置为由所选取的模型中依次提取第一模型和第二模型,并基于第一模型的源文件和第二模型的源文件得到第一坐标数组和第二坐标数组。

应当指出的是,第一模型和第二模型均为获取到的模型中的任意一个;第一坐标数组为第一模型的顶点坐标数组,第二坐标数组为第二模型的顶点坐标数组。

坐标转换模块,被配置为分别对第一坐标数组和第二坐标数组进行转换,得到相应的第一投影坐标组和第二投影坐标组。

距离计算模块,被配置为依次遍历第一投影坐标组和第二投影坐标组中的投影坐标,根据第一投影坐标组中的投影坐标和第二投影坐标组中的投影坐标,得到第一模型的各顶点与第二模型的各顶点之间的距离。

模型生成模块,被配置为在第一模型的各顶点与第二模型的各顶点之间的距离均大于或等于预设数值时,按照预设顺序在临建区域内自动生成第一模型和第二模型。

更进一步地,根据本公开的另一方面,还提供了一种临时建筑模型生成设备200。参阅图4,本公开实施例的临时建筑模型生成设备200包括处理器210以及用于存储处理器210可执行指令的存储器220。其中,处理器210被配置为执行可执行指令时实现前面任一所述的临时建筑模型生成方法。

此处,应当指出的是,处理器210的个数可以为一个或多个。同时,在本公开实施例的临时建筑模型生成设备200中,还可以包括输入装置230和输出装置240。其中,处理器210、存储器220、输入装置230和输出装置240之间可以通过总线连接,也可以通过其他方式连接,此处不进行具体限定。

存储器220作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序和各种模块,如:本公开实施例的临时建筑模型生成方法所对应的程序或模块。处理器210通过运行存储在存储器220中的软件程序或模块,从而执行临时建筑模型生成设备200的各种功能应用及数据处理。

输入装置230可用于接收输入的数字或信号。其中,信号可以为产生与设备/终端/服务器的用户设置以及功能控制有关的键信号。输出装置240可以包括显示屏等显示设备。

根据本公开的另一方面,还提供了一种非易失性计算机可读存储介质,其上存储有计算机程序指令,计算机程序指令被处理器210执行时实现前面任一所述的临时建筑模型生成方法。

以上已经描述了本公开的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1