Revit组vs OST_IOSDetailGroups

问题描述 投票:1回答:1

有人可以帮助我了解区别吗?

为什么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";
}
api revit
1个回答
0
投票

几乎所有Revit类别都包括实例元素及其类型。

Walls类别包括所有Wall实例以及所有WallType元素。

Windows类别包括所有窗口家族实例以及所有窗口家族符号。

依此类推...

您为什么希望各团体的行为有所不同?

© www.soinside.com 2019 - 2024. All rights reserved.