- 博客(14)
- 收藏
- 关注
转载 如何获取元素的所有面——Revit二次开发
转载自 STLN——软件技术分享网Revit中有些构件是需要基于面来放置,此时我们就需要获取元素的面。接下来对如何利用Revit API获取元素的所有面进行详细说明。一、实现逻辑根据打开方式获取元素的几何信息 从获取的几何信息中过滤出GeometryInstance 从GeometryInstance中过滤出solid、Face、Line等二、具体代码 /// <s...
2020-05-02 19:30:09
1570
原创 Revit检查参数储存类型
public bool SetParameter(Parameter parameter, double value){ bool result = false; if (null != parameter &amp;&amp; !parameter.IsReadOnly) { StorageType parameterType = parameter.StorageType; if ...
2018-09-18 11:07:41
313
原创 Revit获取元素的选定参数
void GetElementParameterInformation(Document document, Element element){ String prompt = &amp;amp;quot;Show parameters in selected Element:&amp;amp;quot;; StringBuilder st = new StringBuilder(); foreach (Parameter para ...
2018-09-18 10:30:49
777
1
原创 Revit使用ISelectionFilter限制选择
使用ISelectionFilter限制元素选择public static IList&amp;lt;Element&amp;gt; GetManyRefByRectangle(UIDocument doc){ ReferenceArray ra = new ReferenceArray(); ISelectionFilter selFilter = new MassSelectionFilter();...
2018-09-18 10:12:07
1004
原创 Revit用户选择
Selection类还有一些方法允许用户选择新对象,甚至是一个点屏幕。 这允许用户选择一个或多个元素(或其他对象,例如边缘或一个面)使用光标然后将控制权返回给您的应用程序。 这些功能没有自动将新选择添加到活动选择集合中。PickObject()方法提示用户在Revit模型中选择对象。PickObjects()方法提示用户在Revit模型中选择多个对象。PickElementsByRecta...
2018-09-18 09:54:40
893
原创 Revit更改用户选择
private void ChangeSelection(Document document){ UIDocument uidoc = new UIDocument(document); Autodesk.Revit.UI.Selection.SelElementSet collection = uidoc.Selection.Elements; TaskDialo...
2018-09-18 09:43:35
1073
原创 使用LINQ查询
ElementClassFilter filter = new ElementClassFilter(typeof(FamilyInstance));FilteredElementCollector collector = new FilteredElementCollector(document);collector.WherePasses(filter);var query = from...
2018-09-18 09:24:29
291
原创 Revit获取过滤元素或ID
## 获取过滤元素或元素ID一旦将一个或多个过滤器应用于FilteredElementCollector,过滤后的集合可以通过以下三种方式之一检索元素:1.获取Elements或ElementIds的集合。ToElements() - 返回通过所有应用过滤器的所有元素ToElementIds() - 返回传递所有应用过滤器的所有元素的ElementIds2.获取与过滤器匹配的第一个E...
2018-09-18 08:57:10
2967
原创 显示Revit任务对话框
[Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes.TransactionMode.Automatic)]class TaskDialogExample : IExternalCommand{ public Autodesk.Revit.UI.Result Execute(ExternalCommandDa...
2018-09-17 14:57:43
1279
原创 Revit设置命令的可用性
public class SampleAccessibilityCheck : IExternalCommandAvailability{ public bool IsCommandAvailable(AutodeskAutodesk.Revit.UI.UIApplication applicationData, CategorySet selectedCategories)...
2018-09-17 11:57:12
429
原创 Revit提示用户
public Autodesk.Revit.UI.Result Execute(ExternalCommandData commandData,ref string message, ElementSet elements){ try { Document doc = commandData.Application.ActiveUIDocument.Docu...
2018-09-17 11:52:05
429
原创 Revit高亮显示元素在失败和取消时
每当AutoDea.Real.UI.RESULT.失败或AutoDea.Real.UI.RESULTE取消时返回。参数消息不为空,出现错误或警告对话框。此外,如果有元素添加到元素参数中,这些元素将在屏幕上突出显示。它是每当命令失败时,设置消息参数的方法,不管是否元素也被返回。class IExternalcommand_elements : IExternalCommand{ ...
2018-09-17 11:36:27
1582
原创 过滤Revit元素
ElementClassFilter familyInstanceFilter = new ElementClassFilter(typeof(FamilyInstance));ElementCategoryFilter doorsCategoryfilter = new ElementCategoryFilter(BuiltInCategory.OST_Doors);LogicalAndF...
2018-09-17 11:20:02
531
原创 选择Revit元素
[Autodesk.Revit.Attributes.Transaction(TransactionMode.ReadOnly)]public class Document_Selection : IExternalCommand{ public Autodesk.Revit.UI.Result Execute(ExternalCommandData commandData,ref str...
2018-09-17 11:17:07
425
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人