在好例子网,分享、交流、成长!
您当前所在位置:首页C# 开发实例C#语言基础 → Revit二次开发承台配筋

Revit二次开发承台配筋

C#语言基础

下载此实例
  • 开发语言:C#
  • 实例大小:0.20M
  • 下载次数:5
  • 浏览次数:85
  • 发布时间:2021-02-25
  • 实例类别:C#语言基础
  • 发 布 人:沙漠枯松
  • 所需积分:2
 相关标签: Revit 二次开发 re IT 开发

实例介绍

桥墩的配筋,针对revit二次开发应用。


【核心代码】  //开启事务模式
                        using (Transaction tran = new Transaction(doc, "name"))
                        {
                            tran.Start();
                            if (!fsL.IsActive)
                            {
                                fsL.Activate();
                            }

                            if (!fsZ.IsActive)
                            {
                                fsZ.Activate();
                            }

                            if (fin != null)
                            {
                                BoundingBoxXYZ box = fin.get_BoundingBox(doc.ActiveView);
                                XYZ xyzcent = (fin.Location as LocationPoint).Point;

                                //柱身参数
                                XYZ xyzTop = new XYZ(xyzcent.X, xyzcent.Y, box.Max.Z);
                                XYZ xyzBot = new XYZ(xyzcent.X, xyzcent.Y, box.Min.Z);

                                double H = box.Max.Z - box.Min.Z;
                                double b = fin.Symbol.LookupParameter("b").AsDouble();
                                Line line = Line.CreateBound(xyzTop, xyzBot);


                                ///////////////////////////////////////////
                                //箍筋1参数
                                double cover = double.Parse(f1.cover.Text) / 304.8;
                                double Dgu = double.Parse(f1.guD.Text) / 304.8;

                                //加密区
                                double dis1 = double.Parse(f1.guJiaDis.Text) / 304.8;
                                double H1 = double.Parse(f1.guJiaL.Text) / 304.8;
                                //非加密区
                                //double dis2 = double.Parse(f1.guNoJiaDis.Text) / 304.8;

                                fsL.LookupParameter("R").Set(b / 2 - cover);
                                fsL.LookupParameter("D").Set(Dgu);
                                FamilyInstance finGu1 = doc.Create.NewFamilyInstance(xyzBot, fsL, StructuralType.NonStructural);
                           
                                //    //非加密区
                                finGu1.LookupParameter("H1").Set(H);
                                finGu1.LookupParameter("dis").Set(dis1);

                                //////////////////////////////////////////////////////////
                                //纵筋1
                                double d = double.Parse(f1.zongD.Text) / 304.8;
                                double R = b / 2 - cover - Dgu - d / 2;
                                double dibu = double.Parse(f1.zong1Didis.Text) / 304.8;
                                int n1 = int.Parse(f1.zong1N.Text);
                                double Hzong1 = H dibu;
                                ///纵筋2
                                int n2 = int.Parse(f1.zong2N.Text);
                                double Hzong2 = double.Parse(f1.zong2L.Text) / 304.8;

                                fsZ.LookupParameter("D").Set(d);
                                fsZ.LookupParameter("R").Set(R);

                                FamilyInstance finZong1 = doc.Create.NewFamilyInstance(xyzTop, fsZ, StructuralType.NonStructural);
                                finZong1.LookupParameter("n").Set(n1);
                                finZong1.LookupParameter("H").Set(Hzong1);

     
                            }

                            tran.Commit();

实例下载地址

Revit二次开发承台配筋

不能下载?内容有错? 点击这里报错 + 投诉 + 提问

好例子网口号:伸出你的我的手 — 分享

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
;
报警