CN114332428A - 虚拟房屋房间分割效果的实现方法和装置 - Google Patents
虚拟房屋房间分割效果的实现方法和装置 Download PDFInfo
- Publication number
- CN114332428A CN114332428A CN202111661148.6A CN202111661148A CN114332428A CN 114332428 A CN114332428 A CN 114332428A CN 202111661148 A CN202111661148 A CN 202111661148A CN 114332428 A CN114332428 A CN 114332428A
- Authority
- CN
- China
- Prior art keywords
- line
- walling
- wall
- virtual house
- lines
- 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.)
- Granted
Links
Images
Landscapes
- Processing Or Creating Images (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请的实施例提供了一种虚拟房屋房间分割效果的实现方法和装置,涉及信息技术领域。所述方法,包括:获取待分割的虚拟房屋的俯视图的外边界线;根据设置的分割线和所述外边界线确定砌墙线;其中,所述砌墙线包括所述外边界线和所述外边界线内的所述分割线;根据任意所述砌墙线生成所述虚拟房屋的墙体,实现虚拟房屋房间分割。本申请能够改善现存市面上的模拟房屋装扮2D游戏一般采用房屋户型空间固定的样式,无法实现对虚拟房屋进行分割的效果的问题,达到在模拟房屋装扮2D游戏中,实现对虚拟房屋进行分割的效果。
Description
技术领域
本申请的实施例涉及信息技术领域,尤其涉及一种虚拟房屋房间分割效果的实现方法和装置。
背景技术
模拟游戏,现今多为电子游戏,是一种广泛的游戏类型。模拟游戏试图去复制各种“现实”生活的各种形式,达到“训练”玩家的目的,如提高熟练度、分析情况或预测。仿真程度不同的模拟游戏有不同的功能,较高的仿真度可以用于专业知识的训练,较低的可以作为娱乐手段。
房屋建造类模拟游戏一直以来有着非常优秀和固定的玩家群体,大部分玩家想要沉浸在身为房屋设计师中的体验以获得快乐。其中,现存市面上的模拟房屋装扮2D游戏,用户只能更换房间内摆放的家具或支持家具位置自由摆放。
在实现本发明的过程中,发明人发现,现存市面上的模拟房屋装扮2D游戏一般采用房屋户型空间固定的样式,无法实现对虚拟房屋进行分割的效果。
发明内容
本申请的实施例提供了一种房屋房间分割效果的实现方法、装置、设备和存储介质,能够改善现存市面上的模拟房屋装扮2D游戏一般采用房屋户型空间固定的样式,无法实现对虚拟房屋进行分割的效果的问题。
在本申请的第一方面,提供了一种虚拟房屋房间分割效果的实现方法,包括:
获取待分割的虚拟房屋的俯视图的外边界线;
根据设置的分割线和所述外边界线确定砌墙线;其中,所述砌墙线包括所述外边界线和所述外边界线内的所述分割线;
根据任意所述砌墙线生成所述虚拟房屋的墙体,实现虚拟房屋房间分割。
通过采用以上技术方案,获取待分割的虚拟房屋的俯视图的外边界线,再根据设置的分割线和外边界线确定砌墙线,再根据任意的砌墙线生成待分割的虚拟房屋的墙体;其中,在待分割的虚拟房屋内的任意墙体,将待分割的虚拟房屋分割成若干的独立房间或有隔断的房间,实现虚拟房屋房间的分割,能够改善现存市面上的模拟房屋装扮2D游戏一般采用房屋户型空间固定的样式,无法实现对虚拟房屋进行分割的效果的问题,达到在模拟房屋装扮2D游戏中,实现对虚拟房屋进行分割的效果。
在一种可能的实现方式中,所述根据任意所述砌墙线生成所述虚拟房屋的墙体包括:
遍历所述砌墙线,查找到所述外边界线之间的交点、所述外边界线与所述分割线的交点以及所述外边界线内的所述分割线之间的交点;
根据查找到的交点查找第一砌墙线和第二砌墙线;其中,所述第一砌墙线为相邻点之间不重叠的所述砌墙线,所述第二砌墙线为一端悬空的所述砌墙线;
根据任意所述第一砌墙线和任意所述第二砌墙线生成所述虚拟房屋的墙体。
在一种可能的实现方式中,根据任意所述第一砌墙线生成所述虚拟房屋的墙体包括:
按照预设规则将所述第一砌墙线设置为有向线,构建有向图;
选取所述有向图中一个交点,并计算选取的所述交点的最小闭合路径,所述最小闭合路径由交点间的所述第一砌墙线构成;
去除最小闭合路径经过的交点;
在所述有向图中的剩余交点中,执行步骤“选取所述有向图中一个交点,并计算选取的所述交点的最小闭合路径”和“去除最小闭合路径经过的交点”,直至计算出在所述有向图中的所有最小闭合路径;
根据任意最小闭合路径,生成所述虚拟房屋的墙体。
在一种可能的实现方式中,所述根据任意所述第一砌墙线和任意所述第二砌墙线生成所述虚拟房屋的墙体包括:
求取所述第一砌墙线和所述第二砌墙线中每一条线的两个方向相反的法向量;
根据每一条线的两个法向量的方向,对所述第一砌墙线和所述第二砌墙线中每一条线进行分类,并获取所述第一砌墙线和所述第二砌墙线中每一条线的类型,所述类型包括房间正面的墙、房间背面的墙和房间之间的分隔的墙;
根据所述第一砌墙线和所述第二砌墙线和所述类型生成所述虚拟房屋的墙体。
在一种可能的实现方式中,还包括:
生成所述虚拟房屋内的墙体后,根据任意所述砌墙线,对墙体进行拆除,实现对虚拟房屋房间的自由规划布局。
在本申请的第二方面,提供了一种虚拟房屋房间分割效果的实现装置,包括:
获取模块,用于获取待分割的虚拟房屋的俯视图的外边界线;
确定模块,用于根据设置的分割线和所述外边界线确定砌墙线;其中,所述砌墙线包括所述外边界线和所述外边界线内的所述分割线;
生成模块,用于根据任意所述砌墙线生成所述虚拟房屋的墙体,实现虚拟房屋房间分割。
在一种可能的实现方式中,所述生成模块包括:
遍历单元,用于遍历所述砌墙线,查找到所述外边界线之间的交点、所述外边界线与所述分割线的交点以及所述外边界线内的所述分割线之间的交点;
查找单元,用于根据查找到的交点查找第一砌墙线和第二砌墙线;其中,所述第一砌墙线为相邻点之间不重叠的所述砌墙线,所述第二砌墙线为一端悬空的所述砌墙线;
生成单元,用于根据任意所述第一砌墙线和任意所述第二砌墙线生成所述虚拟房屋的墙体。
在一种可能的实现方式中,还包括:
拆除模块,用于生成所述虚拟房屋内的墙体后,根据任意所述砌墙线,对墙体进行拆除,实现对虚拟房屋房间的自由规划布局。
在本申请的第三方面,提供了一种电子设备。该电子设备包括:存储器和处理器,所述存储器上存储有计算机程序,所述处理器执行所述计算机程序时实现如以上所述的方法。
在本申请的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现所述方法的步骤。
应当理解,发明内容部分中所描述的内容并非旨在限定本申请的实施例的关键或重要特征,亦非用于限制本申请的范围。本申请的其它特征将通过以下的描述变得容易理解。
附图说明
结合附图并参考以下详细说明,本申请各实施例的上述和其他特征、优点及方面将变得更加明显。在附图中,相同或相似的附图标记表示相同或相似的元素,其中:
图1示出了本申请实施例中虚拟房屋房间分割效果的实现方法的流程图。
图2示出了本申请实施例中虚拟房屋整体的俯视图。
图3示出了本申请实施例中待分割的虚拟房屋的俯视图的外边界线示意图。
图4示出了本申请实施例中待分割的虚拟房屋的俯视图的外边界线上任意设置分割线的示意图。
图5示出了本申请实施例中在有向图选取的任意一点的最小闭合路径的示意图。
图6示出了本申请实施例中在有向图中计算最小闭合路径算法的示意图。
图7示出了本申请实施例中第一砌墙线和第二砌墙线中一条线的两个法向量的示意图。
图8示出了本申请实施例中墙体类型的示意图。
图9示出了本申请实施例中生成对应高度的墙体的虚拟房屋的示意图。
图10示出了本申请实施例中在模拟房屋装扮2D游戏中实现对虚拟房屋进行分割的效果图。
图11示出了本申请实施例中虚拟房屋房间分割效果的实现装置的结构图。
图12示出了适于用来实现本申请实施例的电子设备结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
本申请实施例提供的虚拟房屋房间分割效果的实现方法可以应用于信息技术领域。
现存市面上的模拟房屋装扮2D游戏一般采用房屋户型空间固定,用户在进入游戏界面后,或只能更换房间内摆放的家具,或只能支持家具位置自由摆放。用户并不能像现实生活中一样,拆掉或者砌起一面墙来改变房屋的布局。可见,这样不仅限制了用户的自由发挥,还容易造成不同用户拥有千篇一律的房屋布局。
为解决上述技术问题,本申请的实施例提供了一种虚拟房屋房间分割效果的实现方法。在一些实施例中,该虚拟房屋房间分割效果的实现方法可以由电子设备执行。
图1示出了本申请实施例中虚拟房屋房间分割效果的实现方法流程图。参见图1,本实施例中虚拟房屋房间分割效果的实现方法包括:
步骤101:获取待分割的虚拟房屋的俯视图的外边界线。
步骤102:根据设置的分割线和所述外边界线确定砌墙线;其中,所述砌墙线包括所述外边界线和所述外边界线内的所述分割线。
步骤103:根据任意所述砌墙线生成所述虚拟房屋的墙体,实现虚拟房屋房间分割。
通过采用以上技术方案,获取待分割的虚拟房屋的俯视图的外边界线,再根据设置的分割线和外边界线确定砌墙线,再根据任意的砌墙线生成待分割的虚拟房屋的墙体;其中,在待分割的虚拟房屋内的任意墙体,将待分割的虚拟房屋分割成若干的独立房间或有隔断的房间,实现虚拟房屋房间的分割,能够改善现存市面上的模拟房屋装扮2D游戏一般采用房屋户型空间固定的样式,无法实现对虚拟房屋进行分割的效果的问题,达到在模拟房屋装扮2D游戏中,实现对虚拟房屋进行分割的效果。同时,在模拟房屋装扮2D游戏中,房屋内部根据设置(预设或玩家划定)的墙面分离出各个房间或隔断墙,玩家还可以自由规划房屋空间布局。
在步骤101中,虚拟房屋可以为包括一层房屋的虚拟房屋,也可以为包括多层房屋的虚拟房屋。需要说明的是,若虚拟房屋为多层房屋,则虚拟房屋为,在分割过程中,不受实际楼层中高低层的建筑约束(如地基、承重墙等常规约束),相互独立且互不影响的多层房屋。即在虚拟房屋的任意一层执行分割处理时,对这一层执行的分割处理均不影响其他楼层的分割。
例如,在分割过程中,可以就任意一层的房屋执行分割后,将分割后的处理效果遍历多层虚拟房屋,获取遍历后的多层虚拟房屋中每一层虚拟房屋为同样的空间布局的虚拟房屋。
在例如,在分割过程中,还可以就每一层的房屋执行不同设置的分割,获取每一层为不同样的空间布局的虚拟房屋。
在本申请实施例中,为便于叙述,针对包括两层房屋的虚拟房屋进行说明。图2示出了本申请实施例中虚拟房屋整体的俯视图。参见图2,虚拟房屋包括一层建筑和二层建筑。其中,选取二层建筑为待分割的虚拟房屋,则获取的待分割虚拟房屋的俯视图为二层建筑的俯视图。
在本申请实施例中,图3示出了本申请实施例中待分割的虚拟房屋的俯视图的外边界线示意图。参见图3,将房屋和墙面抽象(简化)为线,可获取待分割虚拟房屋的俯视图的外边界线,即可获得由待分割虚拟房屋的俯视图的外边界线构成的多边形。这样,在游戏中,用户砌墙或拆墙后划分房间的问题,就可以转化成对一些线或一些线围合成的多边形的求解。然后,根据求解出的结果,构建出一些线对应的隔断墙和一些线围合成的多边形对应的房间。
获取待分割虚拟房屋的俯视图的外边界线的目的为,便于使用几何裁切关系算法,求解出裁剪后的形状,再根据裁剪后的形状生成墙体,实现虚拟房屋的分割效果,来提高游戏的可玩性和丰富游戏的多样性。
在步骤102中,设置的分割线可以是预先设置完毕的分割线(即预设分割线),也可是根据用户的个人喜好自定义划定设置的分割线(即玩家划定分割线)。
在本申请实施例中,砌墙线包括外边界线和外边界线内的分割线。当需要对虚拟房屋外边界的墙体进行重新生成,且需要对虚拟房屋内进行分割,则砌墙线为外边界线和外边界线内的分割线。当不需要对虚拟房屋外边界的墙体进行重新生成,仅需要对虚拟房屋内进行分割,则砌墙线为外边界线内的分割线。虚拟房屋的墙体根据砌墙线生成。
图4示出了本申请实施例中待分割的虚拟房屋的俯视图的外边界线上任意设置分割线的示意图。参见图4,为便于描述,设置的分割线选为线段。待分割的虚拟房屋可看成包括多个多边形的房间组成合成,待分割的虚拟房屋中每个房间的每一段墙体都可以看成一条线段。
需要说明的是,在实际的游戏体验中,根据用户个人喜好,设置的分割线也可以设置其他类型的线,如包括线段在内的直线类的线和包括弧线在内的曲线类的线。
在步骤103中,任意砌墙线可以是确定的全部砌墙线,也可是根据用户个人喜好自行选取的部分砌墙线。例如,可以根据确定的全部砌墙线,直接生成虚拟房屋的墙体,实现虚拟房屋房间分割。还可以根据确定的全部砌墙线中任意的部分砌墙线,直接生成虚拟房屋的墙体,实现虚拟房屋房间分割。
在一些实施例中,步骤103包括:步骤A1-步骤A3。
步骤A1:遍历所述砌墙线,查找到所述外边界线之间的交点、所述外边界线与所述分割线的交点以及所述外边界线内的所述分割线之间的交点。
步骤A2:根据查找到的交点查找第一砌墙线和第二砌墙线;其中,所述第一砌墙线为相邻点之间不重叠的所述砌墙线,所述第二砌墙线为一端悬空的所述砌墙线。
步骤A3:根据任意所述第一砌墙线和任意所述第二砌墙线生成所述虚拟房屋的墙体。
在步骤A1中,基于几何关系算法,遍历砌墙线,查找到外边界线之间的交点、外边界线与分割线的交点以及外边界线内的分割线之间的交点。
具体地,可以采用几何关系算法中“判断每一条线段的两个端点是否都在另一条线段的两侧,若是,则求出两条线段所在直线的交点,否则不相交”的算法进行查找。
基于几何关系算法,查找线段交点的算法如下:
选取砌墙线中任意一条线段和线段上的两个点。
基于投影法,判断两个点是否在线段的两侧。
若是,则求取线段的法向量,并将两个点投影在法线上。
同理,选取砌墙线中任意另一条线段和线段上的两个点,求取该线段的法向量,并将两个点投影在法线上。
将两条法线做叉乘,若结果为零,则两条线段平行或共线。
反之,则两条线段相交,根据两条法线和投影在两条法线上的点计算交点坐标。
遍历砌墙线所有的线段,查找到外边界线之间的交点、外边界线与分割线的交点以及外边界线内的分割线之间的交点。
参见图4,外边界线之间的交点即为获得由待分割虚拟房屋的俯视图的外边界线构成的多边形上的顶点。
在步骤A2中,基于几何关系算法,在查找砌墙线中交点的过程中,查找线段中相邻点之间不重叠的线段为第一砌墙线,线段中任意一端悬空(即无交点)的线段为第二砌墙线。
在步骤A3中,任意第一砌墙线可以是全部第一砌墙线,也可是根据用户个人喜好自行选取的部分第一砌墙线;任意第二砌墙线可以是全部第二砌墙线,也可是根据用户个人喜好自行选取的部分第二砌墙线。
在一些实施例中,步骤A3包括:步骤a1-步骤a5。
步骤a1:按照预设规则将所述第一砌墙线设置为有向线,构建有向图。
步骤a2:选取所述有向图中一个交点,并计算选取的所述交点的最小闭合路径,所述最小闭合路径由交点间的所述第一砌墙线构成。
步骤a3:去除最小闭合路径经过的交点。
步骤a4:在所述有向图中的剩余交点中,执行步骤“选取所述有向图中一个交点,并计算选取的所述交点的最小闭合路径”和“去除最小闭合路径经过的交点”,直至计算出在所述有向图中的所有最小闭合路径。
步骤a5:根据任意最小闭合路径,生成所述虚拟房屋的墙体。
在本申请实施例中,预设规则为根据设计需求或系统自行设定的标记线段矢量单位的规则。例如,将预设规则设定为以第一砌墙线中一条线段的一个端点为基准点,沿顺时针方向,依次给第一砌墙线中每一条线段设置矢量单位,使得第一砌墙线中每一条线段为有向线段。根据第一砌墙线中每一条有向线段构建有向图。
图5示出了本申请实施例中在有向图选取的任意一点的最小闭合路径的示意图。参见图5,选取有向图中任意一个交点,以该交点为基准点,在有向图中计算选取的交点的最小闭合路径。
基于几何关系算法,计算出在有向图中的所有最小闭合路径。
具体地,可以采用几何关系算法中“从线段中搜索封闭图形”的算法进行查找。
图6示出了本申请实施例中在有向图中计算最小闭合路径算法的示意图。参见图6,基于几何关系算法,计算出在有向图中的所有最小闭合路径的算法如下:
转换第一砌墙线中每一条线段为边界线,每个边界线的每个点为边界点,每个边界点可能对应多个相关点(即其他边界线上的边界点)。
判断孤立线,其中,起点或终点无相关点的边界线为孤立线,在
在查找封闭区域时,忽略孤立线,以每条边界线的每两个边界点作为封闭区域的第一、二点,查找封闭区域的下一点。
在有向图中,根据区域上一点、区域当前点、相关点的下一点构成的夹角,判断区域的下一点。
计算最小区域时,按夹角从小到大排序;计算最大区域时,按夹角从大到小排序。
如果按某个相关点计算下去最终构成封闭区域,计算结束,否则取其他相关点继续计算。
在本申请实施例中,任意砌墙线可以是全部最小闭合路径,也可是根据用户个人喜好自行选取的部分最小闭合路径。
在一些实施例中,还可就简化计算复杂程度的需求对该方法进行优化。例如,将步骤a2中“选取所述有向图中一个交点”设定为“选取所述有向图中一个度为2的交点”,将步骤a3中“去除最小闭合路径经过的交点”设定为“删除所述有向图中所有叶子节点”,来实现该方法。
在本申请实施例中,步骤A3的具体实施方式如下:
按照预设规则将所述第一砌墙线设置为有向线,构建有向图。
基于离散数学中树的概念,将有向图中所有交点和交点间的所述砌墙线构建为一颗树,有向图中的交点与树上的结点一一对应。
标识每一个交点对应的结点的度。
选取所述有向图中任意一个度为2的交点,并计算选取的所述交点的最小闭合路径,所述最小闭合路径由交点间的所述第一砌墙线构成。
去除选取的所述交点和有向图中所有叶子节点(度为1)。
在所述有向图中的剩余交点中,执行步骤“选取所述有向图中任意一个度为2的交点,并计算选取的所述交点的最小闭合路径”和“去除选取的所述交底和有向图中所有叶子节点”直至无法找到叶子节点,并计算出在所述有向图中的所有最小闭合路径。
根据任意最小闭合路径,生成所述虚拟房屋的墙体。在一些实施例中,步骤A3还包括:步骤a6-步骤a8。
步骤a6:求取所述第一砌墙线和所述第二砌墙线中每一条线的两个方向相反的法向量。
步骤a7:根据每一条线的两个法向量的方向,对所述第一砌墙线和所述第二砌墙线中每一条线进行分类,并获取所述第一砌墙线和所述第二砌墙线中每一条线的类型,所述类型包括房间正面的墙、房间背面的墙和房间之间的分隔的墙。
步骤a8:根据所述第一砌墙线和所述第二砌墙线和所述类型生成所述虚拟房屋的墙体。
图7示出了本申请实施例中第一砌墙线和第二砌墙线中一条线的两个法向量的示意图。参见图7,可以采用几何关系算法中“求点到线段所在直线垂线的垂足”的算法,求取第一砌墙线和第二砌墙线中每一条线的两个方向相反的法向量。
在本申请实施例中,还可以采用几何关系算法中“平面上两点之间距离”的算法,求取第一砌墙线和第二砌墙线中每一条线的中点,然后求取两个过这条线段中点,并与这条线段垂直的两个方向相反的法向量。
图8示出了本申请实施例中墙体类型的示意图。参见图8,第一砌墙线和第二砌墙线中每一条线的类型包括房间正面的墙(a)、房间背面的墙(b)和房间之间的分隔的墙(c)。
其中,房间正面的墙(a)为向左或向下的法向量不在任意多边形内,且向上或向右的法向量在一个多边形内的第一砌墙线和第二砌墙线中所属的线段,生成的墙体。
房间背面的墙(b)为向左或向下的法向量在一个多边形内,且向上或向右的法向量不在任意多边形内的第一砌墙线和第二砌墙线中所属的线段,生成的墙体。
房间之间的分隔的墙(c)为两个法向量都在某个多边形内的第一砌墙线和第二砌墙线中所属的线段,生成的墙体。
在本申请实施例中,每一次根据第一砌墙线和第二砌墙线和类型生成所述虚拟房屋的墙体时,第一砌墙线和第二砌墙线中所属房间正面的墙(a)、所属房间背面的墙(b)或所属房间之间的分隔的墙(c)的线段可以均一并直接生成,也可以根据用户个人喜好自行选取部分进行直接生成。
图9示出了本申请实施例中生成对应高度的墙体的虚拟房屋的示意图。参见图9,不同类型的线段生成的对应的墙体的高度不同。
在一些实施例中,该方法还包括:步骤104。
步骤104:生成所述虚拟房屋内的墙体后,根据任意所述砌墙线,对墙体进行拆除,实现对虚拟房屋房间的自由规划布局。
图10示出了本申请实施例中在模拟房屋装扮2D游戏中实现对虚拟房屋进行分割的效果图。参见图10,根据砌墙线生成的墙体,无论是房间还是隔断墙,均能实现虚拟房屋房间分割效果。
在本申请实施例中,在对虚拟房屋进行分割的同时,还可以对生成的墙体进行类型的设定。在对墙体进行拆除时,可以一并直接对全部墙体进行拆除,也可以根据用户个人喜好自行选取部分进行拆除,以便实现对虚拟房屋房间的自由规划布局。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于可选实施例,所涉及的动作和模块并不一定是本申请所必须的。
以上是关于方法实施例的介绍,以下通过装置实施例,对本申请所述方案进行进一步说明。
图11示出了本申请实施例中虚拟房屋房间分割效果的实现装置的结构图。参见图11,该虚拟房屋房间分割效果的实现装置包括获取模块1101、确定模块1102和生成模块1103。
获取模块1101,用于获取待分割的虚拟房屋的俯视图的外边界线。
确定模块1102,用于根据设置的分割线和所述外边界线确定砌墙线;其中,所述砌墙线包括所述外边界线和所述外边界线内的所述分割线。
生成模块1103,用于根据任意所述砌墙线生成所述虚拟房屋的墙体,实现虚拟房屋房间分割。
在一些实施例中,生成模块1103包括遍历单元、查找单元和生成单元。
遍历单元,用于遍历所述砌墙线,查找到所述外边界线之间的交点、所述外边界线与所述分割线的交点以及所述外边界线内的所述分割线之间的交点。
查找单元,用于根据查找到的交点查找第一砌墙线和第二砌墙线;其中,所述第一砌墙线为相邻点之间不重叠的所述砌墙线,所述第二砌墙线为一端悬空的所述砌墙线。
生成单元,用于根据任意所述第一砌墙线和任意所述第二砌墙线生成所述虚拟房屋的墙体。
在一些实施例中,该装置还包括拆除模块1104。
拆除模块1104,用于生成所述虚拟房屋内的墙体后,根据任意所述砌墙线,对墙体进行拆除,实现对虚拟房屋房间的自由规划布局。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,所述描述的模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
图12示出了适于用来实现本申请实施例的电子设备的结构示意图。如图12所示,图12所示的电子设备1200包括:处理器1201和存储器1203。其中,处理器1201和存储器1203相连。可选地,电子设备1200还可以包括收发器1204。需要说明的是,实际应用中收发器1204不限于一个,该电子设备1200的结构并不构成对本申请实施例的限定。
处理器1201可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器1201也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线1202可包括一通路,在上述组件之间传送信息。总线1202可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线1202可以分为地址总线、数据总线、控制总线等。为便于表示,图12中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器1203可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM
(Electrically Erasable Programmable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact Disc Read Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器1203用于存储执行本申请方案的应用程序代码,并由处理器1201来控制执行。处理器1201用于执行存储器1203中存储的应用程序代码,以实现前述方法实施例所示的内容。
其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图12示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,当其在计算机上运行时,使得计算机可以执行前述方法实施例中相应内容。与现有技术相比,本申请实施例中,获取待分割的虚拟房屋的俯视图的外边界线,再根据设置的分割线和外边界线确定砌墙线,再根据任意的砌墙线生成待分割的虚拟房屋的墙体;其中,在待分割的虚拟房屋内的任意墙体,将待分割的虚拟房屋分割成若干的独立房间或有隔断的房间,实现虚拟房屋房间的分割,能够改善现存市面上的模拟房屋装扮2D游戏一般采用房屋户型空间固定的样式,无法实现对虚拟房屋进行分割的效果的问题,达到在模拟房屋装扮2D游戏中,实现对虚拟房屋进行分割的效果。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种虚拟房屋房间分割效果的实现方法,其特征在于,包括:
获取待分割的虚拟房屋的俯视图的外边界线;
根据设置的分割线和所述外边界线确定砌墙线;其中,所述砌墙线包括所述外边界线和所述外边界线内的所述分割线;
根据任意所述砌墙线生成所述虚拟房屋的墙体,实现虚拟房屋房间分割。
2.根据权利要求1所述的方法,其特征在于,所述根据任意所述砌墙线生成所述虚拟房屋的墙体包括:
遍历所述砌墙线,查找到所述外边界线之间的交点、所述外边界线与所述分割线的交点以及所述外边界线内的所述分割线之间的交点;
根据查找到的交点查找第一砌墙线和第二砌墙线;其中,所述第一砌墙线为相邻点之间不重叠的所述砌墙线,所述第二砌墙线为一端悬空的所述砌墙线;
根据任意所述第一砌墙线和任意所述第二砌墙线生成所述虚拟房屋的墙体。
3.根据权利要求2所述的方法,其特征在于,根据任意所述第一砌墙线生成所述虚拟房屋的墙体包括:
按照预设规则将所述第一砌墙线设置为有向线,构建有向图;
选取所述有向图中一个交点,并计算选取的所述交点的最小闭合路径,所述最小闭合路径由交点间的所述第一砌墙线构成;
去除最小闭合路径经过的交点;
在所述有向图中的剩余交点中,执行步骤“选取所述有向图中一个交点,并计算选取的所述交点的最小闭合路径”和“去除最小闭合路径经过的交点”,直至计算出在所述有向图中的所有最小闭合路径;
根据任意最小闭合路径,生成所述虚拟房屋的墙体。
4.根据权利要求2所述的方法,其特征在于,所述根据任意所述第一砌墙线和任意所述第二砌墙线生成所述虚拟房屋的墙体包括:
求取所述第一砌墙线和所述第二砌墙线中每一条线的两个方向相反的法向量;
根据每一条线的两个法向量的方向,对所述第一砌墙线和所述第二砌墙线中每一条线进行分类,并获取所述第一砌墙线和所述第二砌墙线中每一条线的类型,所述类型包括房间正面的墙、房间背面的墙和房间之间的分隔的墙;
根据所述第一砌墙线和所述第二砌墙线和所述类型生成所述虚拟房屋的墙体。
5.根据权利要求1至4中任一项所述的方法,其特征在于,还包括:
生成所述虚拟房屋内的墙体后,根据任意所述砌墙线,对墙体进行拆除,实现对虚拟房屋房间的自由规划布局。
6.一种虚拟房屋房间分割效果的实现装置,其特征在于,包括:
获取模块,用于获取待分割的虚拟房屋的俯视图的外边界线;
确定模块,用于根据设置的分割线和所述外边界线确定砌墙线;其中,所述砌墙线包括所述外边界线和所述外边界线内的所述分割线;
生成模块,用于根据任意所述砌墙线生成所述虚拟房屋的墙体,实现虚拟房屋房间分割。
7.根据权利要求6所述的装置,其特征在于,所述生成模块包括:
遍历单元,用于遍历所述砌墙线,查找到所述外边界线之间的交点、所述外边界线与所述分割线的交点以及所述外边界线内的所述分割线之间的交点;
查找单元,用于根据查找到的交点查找第一砌墙线和第二砌墙线;其中,所述第一砌墙线为相邻点之间不重叠的所述砌墙线,所述第二砌墙线为一端悬空的所述砌墙线;
生成单元,用于根据任意所述第一砌墙线和任意所述第二砌墙线生成所述虚拟房屋的墙体。
8.根据权利要求6至7中任一项所述的装置,其特征在于,还包括:
拆除模块,用于生成所述虚拟房屋内的墙体后,根据任意所述砌墙线,对墙体进行拆除,实现对虚拟房屋房间的自由规划布局。
9.一种电子设备,包括存储器和处理器,所述存储器上存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至5中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至5中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111661148.6A CN114332428B (zh) | 2021-12-30 | 2021-12-30 | 虚拟房屋房间分割效果的实现方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111661148.6A CN114332428B (zh) | 2021-12-30 | 2021-12-30 | 虚拟房屋房间分割效果的实现方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114332428A true CN114332428A (zh) | 2022-04-12 |
CN114332428B CN114332428B (zh) | 2022-08-26 |
Family
ID=81018017
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111661148.6A Active CN114332428B (zh) | 2021-12-30 | 2021-12-30 | 虚拟房屋房间分割效果的实现方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114332428B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105264566A (zh) * | 2013-05-31 | 2016-01-20 | 松下知识产权经营株式会社 | 建模装置、三维模型生成装置、建模方法、程序和布局模拟器 |
CN106600660A (zh) * | 2016-12-19 | 2017-04-26 | 成都君乾信息技术有限公司 | 一种虚拟户型墙体生成方法 |
CN107527372A (zh) * | 2017-07-12 | 2017-12-29 | 深圳市彬讯科技有限公司 | 一种内墙绘制精准的户型输出系统及其绘制使用方法 |
CN108537873A (zh) * | 2018-04-13 | 2018-09-14 | 广州悦世界信息科技有限公司 | 生成2d游戏斜45度地图不规则墙体的方法 |
CN109118022A (zh) * | 2018-09-18 | 2019-01-01 | 东易日盛家居装饰集团股份有限公司 | 一种布局方法及装置 |
CN110781539A (zh) * | 2019-09-29 | 2020-02-11 | 江苏艾佳家居用品有限公司 | 一种户型图自动设计方法及系统 |
CN111968247A (zh) * | 2020-07-10 | 2020-11-20 | 北京城市网邻信息技术有限公司 | 三维房屋空间的构建方法、装置、电子设备及存储介质 |
CN112287430A (zh) * | 2020-09-30 | 2021-01-29 | 久瓴(江苏)数字智能科技有限公司 | 建筑墙体生成方法、装置、计算机设备和存储介质 |
CN112991161A (zh) * | 2021-05-18 | 2021-06-18 | 久瓴(江苏)数字智能科技有限公司 | 异形幕墙处理和分割方法、装置、计算机设备和存储介质 |
CN112991540A (zh) * | 2021-03-31 | 2021-06-18 | 北京房江湖科技有限公司 | 房屋模型的区域分割方法和装置、存储介质、电子设备 |
-
2021
- 2021-12-30 CN CN202111661148.6A patent/CN114332428B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105264566A (zh) * | 2013-05-31 | 2016-01-20 | 松下知识产权经营株式会社 | 建模装置、三维模型生成装置、建模方法、程序和布局模拟器 |
CN106600660A (zh) * | 2016-12-19 | 2017-04-26 | 成都君乾信息技术有限公司 | 一种虚拟户型墙体生成方法 |
CN107527372A (zh) * | 2017-07-12 | 2017-12-29 | 深圳市彬讯科技有限公司 | 一种内墙绘制精准的户型输出系统及其绘制使用方法 |
CN108537873A (zh) * | 2018-04-13 | 2018-09-14 | 广州悦世界信息科技有限公司 | 生成2d游戏斜45度地图不规则墙体的方法 |
CN109118022A (zh) * | 2018-09-18 | 2019-01-01 | 东易日盛家居装饰集团股份有限公司 | 一种布局方法及装置 |
CN110781539A (zh) * | 2019-09-29 | 2020-02-11 | 江苏艾佳家居用品有限公司 | 一种户型图自动设计方法及系统 |
CN111968247A (zh) * | 2020-07-10 | 2020-11-20 | 北京城市网邻信息技术有限公司 | 三维房屋空间的构建方法、装置、电子设备及存储介质 |
CN112287430A (zh) * | 2020-09-30 | 2021-01-29 | 久瓴(江苏)数字智能科技有限公司 | 建筑墙体生成方法、装置、计算机设备和存储介质 |
CN112991540A (zh) * | 2021-03-31 | 2021-06-18 | 北京房江湖科技有限公司 | 房屋模型的区域分割方法和装置、存储介质、电子设备 |
CN112991161A (zh) * | 2021-05-18 | 2021-06-18 | 久瓴(江苏)数字智能科技有限公司 | 异形幕墙处理和分割方法、装置、计算机设备和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114332428B (zh) | 2022-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Reitsma et al. | Evaluating motion graphs for character animation | |
Walshaw et al. | Multilevel mesh partitioning for heterogeneous communication networks | |
US20050144574A1 (en) | Constraining user movement in virtual environments | |
CN107952243B (zh) | 路径确定方法及装置 | |
CN105597318A (zh) | 一种自动生成随机游戏场景的方法、系统和装置 | |
Koenig et al. | Comparing two evolutionary algorithm based methods for layout generation: Dense packing versus subdivision | |
EP2745892A1 (en) | Partition of a 3D scene into a plurality of zones processed by a computing resource | |
JP2019008664A (ja) | 建築設備図面作成支援システム | |
RU2482541C2 (ru) | Способ расчета скорости без столкновений для агента в среде имитации толпы | |
Barnett et al. | Coordinated crowd simulation with topological scene analysis | |
Diakité et al. | Extraction of the 3D free space from building models for indoor navigation | |
CN114332428B (zh) | 虚拟房屋房间分割效果的实现方法和装置 | |
JP3889394B2 (ja) | 画像描画装置及び方法、プログラム並びに記録媒体 | |
US11281817B2 (en) | Systems and methods for generating programmatic designs of structures | |
Moloo et al. | A 3D virtual tour of the university of mauritius using WebGL | |
Bae et al. | Optimizing map labeling of point features based on an onion peeling approach | |
CN111151006B (zh) | 游戏中可倒塌的建筑系统生成方法、装置和电子设备 | |
Kavouras et al. | Effectiveness of Open-Source Solutions for Limited Scale Interventions Planning | |
Takemiya et al. | Computationally determining the salience of decision points for real-time wayfinding support | |
KR100748240B1 (ko) | 이미지 렌더링 방법 및 시스템 | |
JP6647376B1 (ja) | 空間情報探索プログラム、および空間情報探索装置 | |
CN114693848B (zh) | 一种生成二维动画的方法、装置、电子设备及介质 | |
Takizawa | Extending Space Syntax with Efficient Enumeration Algorithms and Hypergraphs | |
CN113607171B (zh) | 一种疏散路径规划方法、装置、设备及存储介质 | |
US12008707B2 (en) | Highly scalable cluster engine for hosting simulations of objects interacting within a space |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |