遇到一个口头机遇的答辩准备6

张开发
2026/4/10 2:21:54 15 分钟阅读

分享文章

遇到一个口头机遇的答辩准备6
又做了一下另外一题Revit的后来沟通雪人只要求一题就可以了cad的也交了……Revit也了解下吧。再次感叹ai辅助对于小白还是很有用滴但是效率应该没有大佬高当然大佬用ai应该也能提升自己的效率而且估计是倍率增加的……首先是安装环境我装的也是Revit2026需要关闭防火墙破解之后使用也要关闭不然就会要你重新破解……破解的包到时候看看能不能发出来不过网上获取也不难vs之前装了建项目这边要用Net Framework4.8及以上的新的没试之后也是引用Revit安装目录里面的RevitAPI、RevitAPIUI之后添加Revit插件找的目录配置WINR,输入%APPDATA%\Autodesk\Revit\Addins\2026 敲回车里面添加对应的.addin文件以下的可以参考所以建项目啥的安装啥的最好不要有中文目录额?xml version1.0 encodingutf-8? RevitAddIns AddIn TypeCommand !-- 填写你自己的项目bin下面对应生成的dll路径 -- AssemblyD:\WQ001\bin\Debug\WQ001.dll/Assembly ClientId{55555555-6666-7777-8888-999999999999}/ClientId !-- 填写你自己的项目对应的入口包括空间名哦 -- FullClassNameWQ001.Commands.CreateRoomLayoutCommand/FullClassName !-- 用户会看到的菜单名字 -- Text生成户型/Text VisibilityModeAlwaysVisible/VisibilityMode !-- 必须填VendorId缺这个就报你那个错 -- VendorIdADSK/VendorId /AddIn /RevitAddIns之后就是创建你的代码了……写代码也很有意思他入口类这里也要写[Transaction(TransactionMode.Manual)]这么一段中括号的东西但是他不是命令跟cad的不一样他不是命令功能调用的菜单在.addin文件配置了通过实现IExternalCommand来哦他是事务申明……他也有using (Transaction t new Transaction(doc, 名称)) { t.Start(); // 创墙、删图元... t.Commit(); }这两个的区别[Transaction(TransactionMode.Manual)]写在类上方申明事务模式不执行操作仅标记using (Transaction…写在方法内部真正创建并开启事务真的执行。[Transaction(TransactionMode.Manual)]是必须的不写就会默认成Revit帮你自动开事务你里面自己再写using (Transaction…就会炸了哦……[Transaction(TransactionMode.Manual)]除了Manual还能有哪些参数AutomaticRevit 自动帮你开事务、关事务你不能自己写 TransactionReadOnly不能修改任何图元只能看Manual允许你自己控制事务开启、提交、回滚最安全、最灵活其他就是C#和Revit API的使用了我的实现方式应该不是很正统要是有兴趣之后的文章写下可以看下额……就这样吧(HelloWord结束using Autodesk.Revit.Attributes; using Autodesk.Revit.DB; using Autodesk.Revit.UI; using System; using System.Windows.Forms; using WQ001.Services; using WQ001.RevitUtils; namespace WQ001.Commands { [Transaction(TransactionMode.Manual)] public class CreateRoomLayoutCommand : IExternalCommand { public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) { try { UIApplication uiApp commandData.Application; UIDocument uiDoc uiApp.ActiveUIDocument; Document doc uiDoc.Document; // …… MessageBox.Show(HelloWord); return Result.Succeeded; } catch (Exception ex) { message ex.Message; return Result.Failed; } } } }

更多文章