Tekla钢结构建模二次开发 第4节课程-曲梁-双截面梁

282 阅读1分钟

Tekla二次开发,适应于钢结构建模二次开发,图纸二次开发,钢筋二次开发。

本人从业多年,目前录制有Tekla钢结构建模二次开发课程38讲解,Tekla图纸二次开发课程36讲。

微信公众号:黑鲤鱼工业插件开发服务 (hly-plugin)

微信:sc-scheng

QQ群:720851647

QQ:2072047623

第4节课程-曲梁

 ContourPoint contourPoint1 = new ContourPoint(new Point(0,0,0), null);
 //ContourPoint contourPoint2 = new ContourPoint(new Point(1000, 1000, 0), new Chamfer(0,0,Chamfer.ChamferTypeEnum.CHAMFER_ARC_POINT));//添加圆弧点
 ContourPoint contourPoint3 = new ContourPoint(new Point(2000, 0, 0), null);
 polyBeam.AddContourPoint(contourPoint1);
 double x = contourPoint1.X, y = 0.0, r = 0.0;
 for (int i=0;i<n-1;i++)
 {
     x += (contourPoint3.X - contourPoint1.X) / n;
     r = (contourPoint3.X - contourPoint1.X) / 2;
     y = contourPoint1.Y + Math.Pow(r*r-( x-contourPoint1.X-r)* (x - contourPoint1.X - r), 1.0/2);
     ContourPoint contourPoint = new ContourPoint(new Point(x,y,0),null);
     polyBeam.AddContourPoint(contourPoint);
 }
 polyBeam.AddContourPoint(contourPoint3);
 polyBeam.Profile.ProfileString = profile;//截面
 polyBeam.Class = color;//等级
 polyBeam.Name = name;//名称
 polyBeam.Material.MaterialString = material;//材料
 polyBeam.Finish = 1.ToString();//完成
 polyBeam.PartNumber.Prefix = partprefix;//零件前缀
 polyBeam.PartNumber.StartNumber = partStartnumber;//零件编号
 polyBeam.AssemblyNumber.Prefix = assemblypredix;//构件前缀
 polyBeam.AssemblyNumber.StartNumber = assStartnumber;//构件编号

 polyBeam.Position.Depth = depth;//构件垂直方向位置
 polyBeam.Position.DepthOffset = depthoffest;//位置偏移
 polyBeam.Position.Rotation = rotation;//旋转位置
 polyBeam.Position.RotationOffset = rotationoffest;//位置偏移
 polyBeam.Position.Plane = planeEnum;//水平方向位置
 polyBeam.Position.PlaneOffset = planeoffest;//位置偏移

 polyBeam.DeformingData.Angle = waringst;//扭曲起点
 polyBeam.DeformingData.Angle2 = waringed;//扭曲终点
 polyBeam.DeformingData.Cambering = cambering;//起拱
 polyBeam.DeformingData.Shortening = shorting;//减短
 polyBeam.Insert();
 return polyBeam;

第4节课程-双截面梁

 for (int i=0;i<2;i++)
 {
     beam = new Beam(st, ed);//当前钢梁 起点终点
     beam.Profile.ProfileString = profile;//截面
     beam.Class = color;//等级
     beam.Name = name;//名称
     beam.Material.MaterialString = material;//材料
     beam.Finish = 1.ToString();//完成
     beam.PartNumber.Prefix = partprefix;//零件前缀
     beam.PartNumber.StartNumber = partStartnumber;//零件编号
     beam.AssemblyNumber.Prefix = assemblypredix;//构件前缀
     beam.AssemblyNumber.StartNumber = assStartnumber;//构件编号
     beam.Position.Depth = depth;//构件垂直方向位置
     beam.Position.DepthOffset = depthoffest;//位置偏移
     beam.Position.Rotation = rotation;//旋转位置
     beam.Position.RotationOffset = rotationoffest;//位置偏移
     beam.Position.Plane = planeEnum;//水平方向位置
     beam.Position.PlaneOffset = planeoffest;//位置偏移
     beam.StartPointOffset.Dx = stx;//起点偏移
     beam.StartPointOffset.Dy = sty;//起点偏移
     beam.StartPointOffset.Dz = stz;//起点偏移
     beam.EndPointOffset.Dx = edx;//终点偏移
     beam.EndPointOffset.Dy = edy;//终点偏移
     beam.EndPointOffset.Dz = edz;//终点偏移
     beam.DeformingData.Angle = waringst;//扭曲起点
     beam.DeformingData.Angle2 = waringed;//扭曲终点
     beam.DeformingData.Cambering = cambering;//起拱
     beam.DeformingData.Shortening = shorting;//减短
     beam.Insert();
     Point twp = new Point();//起点终点互换可以一个数值下镜像梁
     twp = st;
     st = ed;
     ed = twp;
 }