有人可以帮助我了解区别吗?
为什么i = 2887而ii = 3008
FilteredElementCollector groupInstances = new FilteredElementCollector(doc).OfClass(typeof(Group));
FilteredElementCollector groupInstances1 = new FilteredElementCollector(doc).OfCategory(BuiltInCategory.OST_IOSDetailGroups);
FilteredElementCollector groupInstances2 = new FilteredElementCollector(doc).OfCategory(BuiltInCategory.OST_IOSModelGroups);
int i = groupInstances.Count(); // = 2997
int ii = groupInstances1.Count(); // = 3008
int iii = groupInstances2.Count(); // = 155
可能在这里回答我自己的问题,但是OST_IOSDetailGroups apears
除了组之外还包括GroupTypes
。当然,这会引出另一个问题...为什么Revit公开了一种用于获取组的方法,而仅提供了详细的组?为什么模型组不能使用相同的功能?最后,我如何开始将模型组与模型GroupTypes分开?
跟进...这似乎可以解决问题,但不是很优雅。我敢肯定有更好的方法。
try
{
GroupTypeId = group.GetTypeId().ToString();
}
catch
{
GroupTypeId = "GroupType";
}
几乎所有Revit类别都包括实例元素及其类型。
Walls
类别包括所有Wall
实例以及所有WallType
元素。
Windows
类别包括所有窗口家族实例以及所有窗口家族符号。
依此类推...
您为什么希望各团体的行为有所不同?