3.5 KiB
3.5 KiB
UIDocument
方法
CanPlaceElementType
当前视图是否可以放置该类型构件
| 方法名 | 描述 |
|---|---|
| GetOpenUIViews | 获取 Revit 用户界面中所有打开的视图窗口的列表。 |
| GetPlacementTypes | 获取输入族类型的有效放置类型的集合。 |
| GetRevitUIFamilyLoadOptions | 返回选项对象,允许您使用 Revit 的对话框让用户响应在加载族期间出现的问题。 |
| PostRequestForElementTypePlacement | 在Revit的命令队列中放置一个请求,让用户放置指定ElementType的实例。这不会立即执行,而是在控制权从当前API上下文返回到Revit时执行。 |
GetOpenUIViews
获取 Revit 用户界面中所有打开的视图窗口的列表。
UIDocument uidoc = commandData.Application.ActiveUIDocument;
Document doc = uidoc.Document;
IList<UIView> views = uidoc.GetOpenUIViews();
foreach (UIView view in views)
{
if (view.ViewId != uidoc.ActiveView.Id) continue;
view.ZoomToFit();
}
- close()
关闭窗口
- GetWindowRectangle()
获得窗口的Rectangle
Rectangle
- GetZoomCorners()
获得窗口四个角的点
- ViewId
所属View的ID
- Zoom(double d)
变焦
- ZoomAndCenterRectangle(XYZ 1,XYZ 2)
根据提供的Rectangle变焦
- ZoomToFit()
变焦至显示所有构件(缩放匹配)
- ZoomSheetSize()
变焦至Sheet的大小
GetPlacementTypes
获取输入族类型的有效放置类型的集合。
PostRequestForElementTypePlacement(ElementType type)
在Revit的命令队列中放置一个请求,让用户放置指定ElementType的实例。这不会立即执行,而是在控制权从当前API上下文返回到Revit时执行。
UIDocument uidoc = commandData.Application.ActiveUIDocument;
Document doc = uidoc.Document;
// id为ElementType 的ID,可根据自己的项目文件修改
int id = 266107;
uidoc.PostRequestForElementTypePlacement(doc.GetElement(new ElementId(id)) as ElementType);
GetRevitUIFamilyLoadOptions
返回选项对象,允许您使用 Revit 的对话框让用户响应在加载族期间出现的问题。
RefreshActiveView()
- 刷新当前视图
RequestViewChange(View view)
- 改变当前视图 可用ActiveView
UIDocument uidoc = commandData.Application.ActiveUIDocument; Document doc = uidoc.Document; // id 为视图的Id,需要根据自己项目更改; int id = 3728299; View view = doc.GetElement(new ElementId(id)) as View; uidoc.RequestViewChange(view);
SaveAndClose()
- 保存关闭
SaveAs()
属性
Selection
获得Selection对象
UIDocument uidoc = commandData.Application.ActiveUIDocument;
Document doc = uidoc.Document;
Selection sel = uidoc.Selection;
Reference r = sel.PickObject(ObjectType.Element);
Element element = doc.GetElement(r);
TaskDialog.Show("AS", element.Name);
ActiveView
- UIDocument uidoc = commandData.Application.ActiveUIDocument; Document doc = uidoc.Document; // id 为视图的Id,需要根据自己项目更改; int id = 3728299; View view = doc.GetElement(new ElementId(id)) as View; uidoc.ActiveView = view;
ViewDirection是视图朝向观察者的方向,UpDirection视图向上的方向 UpDirection x ViewDirection=RightDirection ViewDirection x RightDirection=UpDirection RightDirection xUpDirection=ViewDirection