欢迎加入BIM行业开发交流1群 群号:711844216(满),二群群号:1016453207
背景
小伙伴们在做revit二次开发时,在自定义材料时,可能会需要对混凝土的抗压强度与拉升强度赋值,但是发现这两个参数并不存在StructuralAsset中。
思路
博主通过一番探索,发现者两个参数比较特殊存在于PropertySetElement中,可以使用lookUp查看material,那么如何实际应用呢?
代码
//新建一个混凝土的物理类,通过帮助手册可以发现这个类可以放的参数,比如杨氏模量,泊松比等(不包括抗压强度和拉升强度)
StructuralAsset strucAsset = new StructuralAsset("xx材料", StructuralAssetClass.Concrete);
//为了对抗压强度与拉升强度赋值,这里需要使用PropertySetElement
PropertySetElement pse = PropertySetElement.Create(doc, strucAsset);
//注意在赋值时需要进行单位的转换,这个系数根据实际需求单位来定,这里假设是x
double transferCoefficient=x;
pse.LookupParameter("屈服强度").Set(20000*x);
pse.LookupParameter("拉伸强度").Set(30000*x);
注意事项
1.材料中有,但是在StructuralAsset或者ThermalAsset中找不的参数,很可能就存在于PropertySetElement中。
2.我是黑夜の骑士,欢迎大家关注我的博客,笔者将持续输出revit二次开发以及编程干货