指将多个图元或者详图组合成一个整体,使其可以进行统一的修改、移动、保存、载入等操作。包括模型组和详图组。
文章源自设计学徒自学网-http://www.sx1c.com/19514.html
二、什么时候需要创建组?文章源自设计学徒自学网-http://www.sx1c.com/19514.html
1、需要重复使用的图元或者详图可以创建组。文章源自设计学徒自学网-http://www.sx1c.com/19514.html
2、需要整体移动或者载入到其他项目使用的模型可以创建组。文章源自设计学徒自学网-http://www.sx1c.com/19514.html
3、需要整体被替换的模型或者图元可以创建组。文章源自设计学徒自学网-http://www.sx1c.com/19514.html
文章源自设计学徒自学网-http://www.sx1c.com/19514.html
三、组的特点:文章源自设计学徒自学网-http://www.sx1c.com/19514.html
1、可以进行重复使用文章源自设计学徒自学网-http://www.sx1c.com/19514.html
2、重复使用后,修改其中一个组中的图元,其他组中的这个图元也会跟着改变。文章源自设计学徒自学网-http://www.sx1c.com/19514.html
文章源自设计学徒自学网-http://www.sx1c.com/19514.html
四、Revit关于Group的API
在命名空间 Autodesk.Revit.Creation 中,ItemFactoryBase 类 提供了 NewGroup (ICollection<ElementId>)方法来选择一个或者多个元素进行组合,甚至可以选择组合进行再组合。
创建组合:
void CreatGroup(Autodesk.Revit.DB.Document projectDoc, List<Element> Elements)
{
List<ElementId> elementsToGroup = new List<ElementId>();
using (Transaction tran = new Transaction(projectDoc, "Group the ed elements."))
{
tran.Start();
foreach (Element elem in Elements)
{
elementsToGroup.Add(elem.Id);
}
Group group = projectDoc..NewGroup(elementsToGroup);
tran.Commit();
}
}
在新建组合的时候,通常会自动生成一个名字,比如:组1,可以通过修改组合类型的名字属性改名,如:
group.GroupType.Name = "MyGroup";
正如第一点所说,组合通常分为模型组合和详图组合。
在API中,两种组合都可以通过 NewGroup方法来创建。创建的组合类型依赖于传进来的元素。
如果没有任何的详图元素参与,那么模型组合就被创建。
如果参与的元素包括两种类型的元素,一个模型组合和一个附着的详图组合就将被创建。
在使用组合的过程中,需要注意下面几点:
① 当元素被组合起来了,它们仍然可以被从文档中删除。在组合里面的元素被删除时,这个元素在界面上仍然是可见的,但是这个元素实际上被删除了,是不能被选中或者在Document被访问。
当组合中最后一个元素被删除或者是从组合里面移除了,这个组合的实体随后也将被删除。
② 当元素在一个组合里面的时候,它们不能单独被移动或者被旋转。如果试图对这些元素进行这些操作,虽然移动或者旋转的方法返回true,这些元素仍然不会有任何变化。
在做组合操作的时候,对于尺寸标注或者标签,如果没有对它们引用到的元素也同样做 组合操作的话,是不能单独组合的。如果试图做这样的操作的话,组合操作会失败并且会抛异常。
评论