通过Revit API创建一个族并载入到工程文档中
来源:互联网 发布:如何组建淘宝团队 编辑:程序博客网 时间:2024/06/01 10:24
四个注意点:
1、在族文档中创建拉伸时,需要开启事务,开启事务时使用的文档必须是族文档
2、在族文档中创建草图工作平面时,使用的文档必须是族文档
3、将族文档导入工程文档时,不能开启事务,否则会抛出异常
4、LoadFamily方法的调用者是族文档,参数是目标工程文档
class CmdTest : AbstractExternalCommand { protected override Result RunImpl(Autodesk.Revit.UI.ExternalCommandData commandData, ref string message, Autodesk.Revit.DB.ElementSet elements) { String filePath = @"d:\Documents\liukang\桌面\Family Templates\Chinese\公制常规模型.rft"; //创建族文档 Document familyDoc = app.NewFamilyDocument(filePath); //开启事务时,使用的文档,必须是族文档 Transaction familyTrans = new Transaction(familyDoc, "family"); familyTrans.Commit(); CurveArrArray curveArrArr = app.Create.NewCurveArrArray(); CurveArray curveArr = app.Create.NewCurveArray(); Curve curve1 = Line.CreateBound(new XYZ(0, 0, 0), new XYZ(1, 0, 0)); Curve curve2 = Line.CreateBound(new XYZ(1, 0, 0), new XYZ(1, 1, 0)); Curve curve3 = Line.CreateBound(new XYZ(1, 1, 0), new XYZ(0, 0, 0)); curveArr.Append(curve1); curveArr.Append(curve2); curveArr.Append(curve3); curveArrArr.Append(curveArr); //创建平面 Plane plane = app.Create.NewPlane(new XYZ(0, 0, 1), new XYZ(0, 0, 0)); //创建草图平面,文档必须是族文档 SketchPlane sp = SketchPlane.Create(familyDoc, plane); //创建拉伸 familyDoc.FamilyCreate.NewExtrusion(true, curveArrArr, sp, 10); familyTrans.Commit(); //LoadFamily方法的调用者是族文档,参数是目标工程文档 Family family = familyDoc.LoadFamily(doc); return Result.Succeeded; } }
0 0
- 通过Revit API创建一个族并载入到工程文档中
- Revit开发通过API 创建族
- Revit开发通过API创建墙
- Revit开发之载入族的创建小技巧
- Cocos2d-x 3.0 开发(四)使用CocoStudio创建UI并载入到程序中
- Cocos2d-x 3.0 开发(四)使用CocoStudio创建UI并载入到程序中
- Cocos2d-x 3.0 开发(四)使用CocoStudio创建UI并载入到程序中
- Cocos2d-x 3.0 开发(四)使用CocoStudio创建UI并载入到程序中
- Cocos2d-x 3.0 开发(四)使用CocoStudio创建UI并载入到程序中
- Cocos2d-x 3.0 开发(四)使用CocoStudio创建UI并载入到程序中
- 把一个xml文档("note.xml")载入到xml解析器中
- NSIS ---使用nsDialogs创建自定义页面,并获取输入到控件中的内容保存到一个XML文档中
- maven创建web工程,并导入到eclipse中
- iOS工程中创建并使用一个SDK
- 通过beego快速创建一个Restful风格API项目及API文档自动化
- 创建XML文档并保存到磁盘文件中(GBK)
- 在IE中创建DOM并载入XML
- 创建TXT文档并将数据保存到该文档中
- Linux文件系统简介
- Ubuntu16.04 docker安装
- React Native笔记
- ajax表单和form表单提交的区别
- 哲学家就餐问题(java实现)
- 通过Revit API创建一个族并载入到工程文档中
- Java程序员的日常——经验贴(纯干货)
- Android 常见工具类封装
- Java实现数字排列
- 最多n次购买时股票最大收益问题
- mybatis+spring的TODO小项目记录(四)使用github管理代码
- 2017京东校招终结者问题
- 十一javascript篇之数组,变量,函数调用说明案例实战
- Android Logcat 封装类