基础内容
钢筋类型RebarBarTyp
:描述钢筋基本类型信息
弯钩类型RebarHookType
包含标准、镫筋/箍筋和抗震镫筋/箍筋三大类,其角度及长度可自由设置
钢筋形状RebarShape
钢筋创建方法
基于曲线:Rebar.CreateFromCurves
创建方法 | 对应内容 |
---|---|
Document doc | //文档 |
RebarStyle style | //钢筋风格 |
RebarBarType barType | //钢筋类型 |
RebarHookType startHook | //开始弯钩类型 |
RebarHookType endHook | //结束弯钩类型 |
Element host | //主体,梁板柱等 |
XYZ norm | //平面方向 |
IList curves | //曲线集合 |
RebarHookOrientation startHookOrient | //开始弯钩方向 |
RebarHookOrientation endHookOrient | //结束弯钩方向 |
Rbool useExistingShapeIfPossible | //是否尝试匹配形状 |
RebarHookOrientation endHookOrient | //是否新建形状 |
注意:curves中线必须按顺序首尾相连;该方法会自动创建大量的钢筋形状
基于形状:Rebar.CreateFromRebarShape
创建方法 | 对应内容 |
---|---|
Document doc | //文档 |
RebarShape rebarShape | //钢筋形状 |
RebarBarType barType | //钢筋类型 |
Element host | //主体,梁板柱等 |
XYZ origin | //钢筋放置点 |
XYZ xVec | //钢筋X轴方向 |
XYZ yVec | //钢筋Y轴方向 |
注意:(1)创建前必须选定合适的钢筋形状;(2)origin、xVec、yVec三个参数设置插入点,以及约束条件;(3)需要配合ScaleToBox方法,将钢筋放置在包围盒内
基于曲线和形状:Rebar.CreateFromCurvesAndShape
创建方法 | 对应内容 |
---|---|
Document doc | //文档 |
RebarShape rebarShape | //钢筋形状 |
RebarBarType barType | //钢筋类型 |
RebarHookType startHook | //开始弯钩类型 |
RebarHookType endHook | //结束弯钩类型 |
Element host | //主体,梁板柱等 |
XYZ norm | //平面方向 |
IList curves | //曲线集合 |
RebarHookOrientation startHookOrient | //开始弯钩方向 |
RebarHookOrientation endHookOrient | //结束弯钩方向 |
注意:(1)curves中线必须按顺序首尾相连;(2)curves数量必须与钢筋形状的数量一致
梁箍筋创建(未考虑加密区)
结构柱钢筋
属性参数(optins)
决定几何体返回的具体值
GeometryElement geometry = column.GetOriginalGeometry(options)//获取元素的几何参数
options类
用于指定返回几何数据的特征
1、返回几何对象可否带参考信息:设置ComputeReferences属性,为true或false;
2、设置返回几何信息的详细程度:设置DetailLevel(粗略、中等、详细等)
3、返回哪个视图的几何信息:设置View属性
options的创建
1、application.Create.NewGeometryOptions();
2、new options;//常用第二种
如何获得实体对象的几何数据
//1、设置几何实体时的参数,这里用当前视图来决定具体的显式
Options options = new Options();
options.DetailLevel = ViewDetailLevel.Fine;
options.ComputeReferences = true;//当使用线和面时reference需要
//2、得到几何图元
GeometryElement geometryEle = element.get_Geometry(options);
//3、从几何图元里得到几何对象
foreach (GeometryObject geometryObject in geometryEle)
{
if (geometryObject is Solid)
{
Solid solid = geometryObject as Solid;
foreach (Face face in solid.Faces)
{
}
}
}