int numberOfDetailElements = 0; // Transaction group for all activities using (TransactionGroup tg = new TransactionGroup(toDocument, "API - Duplication across documents with detailing")) { tg.Start(); // Use LINQ to convert to list of ElementIds for use in CopyElements() method List<Elem...
原以为是前辈留下的信息提示,没想到是revit自带的信息提示,起因是在搜索构件时会查找当前文档的构件,查找到之后仅进行复制操作,于是就涉及到调用ElementTransformUtils.CopyElements()这个函数。 API如下: 其中最后一个参数就是我们要设置的部分。 因为源代码中在调用此函数时参数如下 于是跳到CopyPasteOptions类,发现有...
publicResult Execute(ExternalCommandData commandData,refstringmessages, ElementSet elements) { UIApplication app = commandData.Application; Document doc = app.ActiveUIDocument.Document; //1.选择房间 Selection sel = app.ActiveUIDocument.Selection; RoomFilter filter =newRoomFilter(); Reference refRoom =...
Unwrapelement() 方法不需要单独导入,可以直接使用,该方法完成了 Dynamo 类型到 RevitAPI 类型的转换。 2、几何图元转换 # ElementsElement.ToDSType(bool);#如果是Revit生成的图元,则为真# GeometryXYZ.ToPoint()>PointXYZ.ToVector()>VectorPoint.ToProtoType()>PointList<XYZ>.ToPoints()>List<Point>UV.ToProt...
CopyElements(document, new XYZ(1, 1, 1)); Application extensions Ribbon Extensions Revit API Ribbon controls Guidelines CreatePanel extension creates or retrieves an existing panel in the "Add-ins" tab of the Revit ribbon. If a panel with the specified name already exists within the tab, it...
-通过API进行预览功能。 说明: 1.注册此应用程序命令并启动Revit,您将获得一个包含5个Ribbon按钮的AddIn Integration选项卡,如下图所示。 将鼠标光标保持在第一个按钮“前往创建墙壁的WikiHelp”上一段时间,工具提示将显示出来,然后按“F1”按钮,Revit将启动Internet浏览器并转到Wall creation主题的Revit wiki帮助页面...
(Level));Levellevel=collector.Cast().First(lvl=>lvl.Name=="Level 1");using(Transactiont=newTransaction(doc,"Add elements by API")){t.Start();// Create the wallWallwall=Wall.Create(doc,Line.CreateBound(newXYZ(25,0,0),newXYZ(25,15,0)),level.Id,false);// Get the parameter that ...
总体来说利用Revit API 获取元素的材质和贴图比较麻烦,而且有的材质还无法获取。总结一下思路如下: 1.假设我们已经得到元素,利用Element.GetMaterialIds 方法可以获得该元素所有材质的ElementId,注意这是一个集合! 2.将获取到的ElementId转化为Material对象。就能得到材质名,颜色,填充图形等等信息。
public Result Execute(ExternalCommandData commandData, ref string messages, ElementSet elements) { UIApplication app = commandData.Application; Document doc = app.ActiveUIDocument.Document; //1.选择房间 Selection sel = app.ActiveUIDocument.Selection; ...
我通常通过将FilteredElementCollector方法包装在Pythonlist中来使用它。然后,您可以组合、优化、拆分、复制...