一种在建模软件中在位修改构件位置的方法和装置
技术领域
本发明属于建筑信息处理领域,尤其涉及一种在建模软件中在位修改构件位置的方法和装置。
背景技术
随着城市建设的快速发展,建筑产量要求越来越高,建筑产品构造也越来越复杂。因此,建筑设计被要求在较短时间内完成质量高、造价低的建筑产品。为了提高设计效率和产品质量,大量建模设计软件被引进到建筑行业中。
建筑模型是一种结构复杂,构件精细的模型。建筑模型不仅包含墙体,门窗等基本要素,还包含楼梯,家具设备,周边环境等。一个建筑模型通常拥有成百上千个构件组成,这种建筑的复杂程度给建筑模型的设计与修改造成了很大的困难。
建筑设计的一大特点在于其建筑模型的形成不是一蹴而就的过程,而是需要设计人员与客户进行大量的协商,并进行反复的修改。建筑模型的修改以构件为单位,通常进行的是参考整个模型的状态,进行构件位置的在位调校。这种在位编辑以设计人员的设计习惯为主,通常参考的是与周围物体的位置关系。
在建模软件中,相对位置的调整是由尺寸工具执行的。现有技术采用构件的子图元的几何信息计算其与参照物的位置关系,该位置关系亦可代表构件与参照物间的关系,传统尺寸的生成依附于构件的子图元(如在建立一个长方体构件与圆柱构件的位置关系尺寸时,首先需要选择长方体与圆柱构件的子图元:面、线、点,根据子图元的位置,计算代表位置关系的尺寸数值),子图元间的尺寸关系代表了该构件的尺寸关系,传统尺寸工具不是自动生成,而是需要设计者手工添加,会大大增加设计人员的建模工作量,增加了在位修改的繁琐性。而且这种尺寸工具对于3D模型有一些与设计本身无关的要求,如以构件的某个子元素如构件模型的点、面、线等作为参考,并且要求尺寸不能过约束(静态尺寸在创建时会要求符合全约束规则),这也会增加设计人员不必要的工作量,而且增加软件的学习时间,特别是在大型的模型设计过程中会更加明显。为避免设计人员迷失在尺寸绘制的繁重工作中,导致设计效率低下,建筑设计软件需要提供一种更简单直观,灵活性大的在位修改构件位置的方式。
发明内容
本发明的目的在于提供一种在建模软件中在位修改构件位置的方法和装置,以解决上述问题。
本发明的实施例提供了一种在建模软件中在位修改构件位置的方法,包括:根据构件的性质及构件周边物体位置,在激活构件时生成动态尺寸;根据生成的动态尺寸在位修改构件位置。
进一步,确定构件位置,计算并存储所述构件的静态尺寸;从激活构件中取出参考构件,并计算出最近的周边参考构件;根据激活构件与参考构件的静态尺寸、激活构件与周边参考构件的形状,遍历激活构件自身的子图元,以周边参考构件的子图元为基准,进行距离计算,得到最近距离和最近构件;根据得到的最近构件的两个子图元的性质,获取动态尺寸的参考点;根据得到的最近距离,确定动态尺寸数值。
进一步,根据生成的动态尺寸在位修改构件位置,包括:将该参考点移动到预定的参考构件,修改动态尺寸值。
进一步,根据构件的性质及构件周边物体位置在激活构件时生成动态尺寸之前还包括生成构件的静态尺寸。
本发明的实施例还提供了一种在建模软件中在位修改构件位置的装置,包括:动态尺寸生成模块,用于根据构件的性质及构件周边物体位置,在激活构件时生成动态尺寸;构件位置在位修改模块,用于根据生成的动态尺寸在位修改构件位置。
进一步,该动态尺寸生成模块具体用于:确定构件位置,计算并存储所述构件的静态尺寸;从激活构件中取出参考构件,并计算出最近的周边参考构件;根据激活构件与参考构件的静态尺寸、激活构件与周边参考构件的形状,遍历激活构件自身的子图元,以周边参考构件的子图元为基准,进行距离计算,得到最近距离和最近构件;根据得到的最近构件的两个子图元的性质,获取动态尺寸的参考点;根据得到的最近距离,确定动态尺寸数值。
进一步,该构件位置在位修改模块具体用于:将该参考点移动到预定的参考构件,修改动态尺寸值。
进一步,该装置还包括静态尺寸生成模块,该静态尺寸生成模块用于生成构件的静态尺寸。
与现有技术相比本发明的有益效果是:通过激活构件,自动生成构件与周边参照物的动态尺寸,以支持构件位置的在位修改,增加了设计人员修改模型的方便度,提高了设计的效率及灵活度。
附图说明
图1为本发明一种在建模软件中在位修改构件位置的方法的流程图;
图2为本发明一种在建模软件中在位修改构件位置的装置的结构框图;
图3为本发明中典型的动态尺寸示意图。
具体实施方式
下面通过具体的实施例子并结合附图对本发明做进一步的详细描述。
下面结合具体实例和说明书附图对本发明做进一步说明。
参图1所示,图1示出了本发明一种在建模软件中在位修改构件位置的方法的流程图。
本发明提供了一种在建模软件中在位修改构件位置的方法,包括:
步骤S1,根据构件的性质及构件周边物体位置,在激活构件时生成动态尺寸。
步骤S2,根据生成的动态尺寸在位修改构件位置。
本实施例提供的在建模软件中在位修改构件位置的方法,利用动态尺寸的方式,对构件自动生成多个与周边构件相关的尺寸,支持设计人员点击修改某一尺寸,其他相关尺寸动态修改,增加了设计人员修改模型的方便度,提高了设计的效率及灵活度。
在本实施例中,在进行步骤S1之前还包括生成构件的静态尺寸。
在本实施例中,该步骤S1具体包括如下步骤:
确定构件位置,计算并存储所述构件的静态尺寸;
从激活构件中取出参考构件,并计算出最近的周边参考构件;
根据激活构件与参考构件的静态尺寸、激活构件与周边参考构件的形状,遍历激活构件自身的子图元,以周边参考构件的子图元为基准,进行距离计算,得到最近距离和最近构件;
根据得到的最近构件的两个子图元的性质,获取动态尺寸的参考点;
根据得到的最近距离,确定动态尺寸数值。
在本实施例中,该步骤S2,包括:将该参考点移动到预定的参考构件,修改动态尺寸值。
参图2所示,图1示出了本发明一种在建模软件中在位修改构件位置的装置的结构框图。
本发明还提供了一种在建模软件中在位修改构件位置的装置,包括:
动态尺寸生成模块10,用于根据构件的性质及构件周边物体位置,在激活构件时生成动态尺寸;
构件位置在位修改模块20,用于根据生成的动态尺寸在位修改构件位置。
本实施例提供的在建模软件中在位修改构件位置的装置,利用动态尺寸的方式,对构件自动生成多个与周边构件相关的尺寸,支持设计人员点击修改某一尺寸,其他相关尺寸动态修改,增加了设计人员修改模型的方便度,提高了设计的效率及灵活度。
在本实施例中,该动态尺寸生成模块10具体用于:
确定构件位置,计算并存储所述构件的静态尺寸;
从激活构件中取出参考构件,并计算出最近的周边参考构件;
根据激活构件与参考构件的静态尺寸、激活构件与周边参考构件的形状,遍历激活构件自身的子图元,以周边参考构件的子图元为基准,进行距离计算,得到最近距离和最近构件;
根据得到的最近构件的两个子图元的性质,获取动态尺寸的参考点;
根据得到的最近距离,确定动态尺寸数值。
在本实施例中,该构件位置在位修改模块20具体用于:将该参考点移动到预定的参考构件,修改动态尺寸值。
在本实施例中,该装置还包括:静态尺寸生成模块,用于生成构件的静态尺寸。
下面对本发明的方案进行详细说明。
所谓动态尺寸,即是随着物体的位置和性质而动态产生的表示物体位置的尺寸。动态尺寸的唯一作用就是辅助设计者更方便的对构件进行在位编辑,它只有在被需要时才会产生,并且以尽量简洁有效的方式表达。参图3所示。
动态尺寸的特点可归纳为如下几点:
(1)只有在构件要被修改时才会生成。
该尺寸不是静态的存在于数据库中的尺寸,而是在发生激活动作时,如单击构件,才会根据一定规则自动生成、显示,并供设计者修改的尺寸。这种方式在大体量三维模型的情况下,这样可以简化其显示与表达,并且能最低限度的满足设计者修改模型的要求。
(2)构件的性质不同,依附在其上的动态尺寸也不同。
动态尺寸的建立需要参考构件的性质决定。一个尺寸的建立有三个因素,一个其所依附的构件形状,这个决定了尺寸建立在构件的什么地方,一个是尺寸所需要满足的约束条件,该因素是求解约束时需要,第三个是尺寸所能参考的对象,即是尺寸的另外一个参考点,这个也和构件的形状有关系。不同的构件,其形状不同,它保持形状所必要的约束也不同,其参考对象也不同,因此,生成的动态尺寸必不相同。
(3)物体的位置不同,动态尺寸也不同。
动态尺寸有一个重要的特点是,动态尺寸会参考构件周边的物体情况来生成尺寸。这种生成方式一是使得位置的修改更符合设计者的直观映像,二是可以通过制定规则的方式使得构件的修改更加符合实际模型设计的惯例。
当构件被激活时,动态尺寸生成,其具体实施步骤可分为如下几步:
1)在构件位置确定时,计算存储构件的静态尺寸。
构件的位置是实际是由一组固定的静态尺寸决定的,其参考的是模型中固定的参考构件,比如在建筑模型中,门的固定参考构件是墙边缘、标高等。当物体的位置确定,数据库存储其静态尺寸,这种方式可以加快动态尺寸生成的效率。
2)搜寻最近周边参考构件。
尺寸的必要组成为参考构件与尺寸值,动态尺寸也是如此。但是动态尺寸与静态尺寸的不同在于其参考构件更宽泛,可是其周围的某些构件,而不仅限于参考构件。而其动态尺寸的参考构件与构件本身的性质有关,因此存储在构件中。在搜寻周边参考构件时,需要从激活构件中将其参考构件取出,再根据整个模型的情况,计算出最近的周边参考构件。
3)计算动态尺寸值
根据激活构件(被激活的构件)与参考构件的静态尺寸、激活构件与周边参考构件的形状,遍历激活构件自身的子图元,以周边构件的子图元为基准,进行距离计算,得到最近距离与最近构件,以此距离代表该构件与周边的位置关系。根据两标准子图元(激活构件与最近参考构件中距离最近的子图元)的性质,得到动态尺寸的参考点,动态尺寸的数值为之前计算的最近距离。
4)编辑动态尺寸
当用户对自动生成的动态尺寸不满意时,可以通过拖动参考点来生成新的动态尺寸。尺寸通过参考点(关系点)和构件相关联,当参考点拖动到某一参考构件时,自动感应参考构件,并计算最近图元,从而修改动态尺寸值。本发明通过改变尺寸的参考点以改变构件位置的参照物,使构件位置的在位修改更加灵活。
本发明提供的在建模软件中在位修改构件位置的方法及装置,通过激活构件,自动生成构件与周边参照物的动态尺寸,以支持构件位置的在位修改,具有以下有益效果:
1)每个尺寸都是动态自动生成,省去了人工创建尺寸的各种步骤,增加了设计软件的友好度,使得设计效率提升,并设计软件的使用门槛也降低。
2)动态尺寸直接代表了构件与周围构件的相对位置关系,而且动态尺寸间相互耦合,一个更改,其他动态尺寸自动解算,使得构件位置的编辑一目了然。
3)动态尺寸支持参考构件的自由选择,使得设计更加灵活。
4)尺寸在需要时才生成,不影响整体模型的显示。
5)尺寸的生成全自动,省略了人为标记的过程,使得修改更加方便快捷。
6)尺寸的生成符合行业设计习惯
7)动态尺寸以易用性为目的,支持生成过约束的尺寸集。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。