重要的方法:GetMaterials(),Get AnalyticalModel()
1) 位置Location
Element.Location属性用来获取元素的位置,Location可以转型为LocationPoint和 LocationCurve,如果该元素的位置是点,则转型为LocationPoint,如果是直线或者曲线,则使用LocationCurve。类图见图3-9。
2) 材质Material
GetMaterials(bool)函数可以获取元素的材质, bool为true的时候,获取的是元素的油漆材质 (Painted Material)
3) 分析模型
分析模型主要被用来做结构分析,获取分析模型可以使用Element.GetAnalyticalModel()方法,然后调用分析模型的GetCurve,GetCurves或GetPoint来获取分析模型的几何信息。同时可通过IsSingleCurve()和IsSinglePoint()方法来辅助判断需要调用哪个方法。
//============代码片段3-11 获取分析模型的几何信息============
public void GetAnalyticalModel(Document RevitDoc)
{
Element element = RevitDoc.GetElement(new ElementId(183554));
if (element == null) return;
AnalyticalModel analyticalModel = element.GetAnalyticalModel();
if (analyticalModel.IsSingleCurve())
{
Curve curve = analyticalModel.GetCurve();
// work with curve
}
else if (analyticalModel.IsSinglePoint())
{
XYZ p = analyticalModel.GetPoint();
// work with point
}
else
{
IList<Curve> curves = analyticalModel.GetCurves(AnalyticalCurveType.ActiveCurves);
// work with curves
}
}
=========【更多高级应用请关注公众号】========
==================================