TEKLA C# 选择模型中所有焊缝的最快方法是什么

利用选择功能

public ModelObjectEnumerator getAllWeldsFromModel()
{
ModelObjectEnumerator.AutoFetch = true;
ObjectFilterExpressions.Type objectType = new ObjectFilterExpressions.Type();
NumericConstantFilterExpression Weld = new NumericConstantFilterExpression(TeklaStructuresDatabaseTypeEnum.WELDING);
var expression1 = new BinaryFilterExpression(objectType, NumericOperatorType.IS_EQUAL, Weld);
BinaryFilterExpressionCollection filterCollection = new BinaryFilterExpressionCollection
{
new BinaryFilterExpressionItem(expression1,BinaryFilterOperatorType.BOOLEAN_AND),,
};
ModelObjectEnumerator moe = model.GetModelObjectSelector()
.GetObjectsByFilter(filterCollection);
moe.SelectInstances = false;
return moe;
}

下面提到我使用的方法,但我的方法返回焊缝计数和手动选择的焊缝计数有所不同。

public ModelObjectEnumerator getAllWeldsFromModel()
{
ModelObjectEnumerator.AutoFetch = true;
Type[] welds = new Type[] { typeof(BaseWeld) };
ModelObjectEnumerator moe = model.GetModelObjectSelector().GetAllObjectsWithType(welds);
moe.SelectInstances = false;
return moe;
}

 

posted @   南胜NanSheng  阅读(99)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
点击右上角即可分享
微信分享提示