C# 如何使用Revit API翻转活动剖面

C# 如何使用Revit API翻转活动剖面,c#,revit-api,revit,C#,Revit Api,Revit,我希望能够使用Revit 2017 API翻转活动分区。这将相当于我在下面的图片中看到的UI功能 我尝试使用内置的ElementTransformUtils.MirrorElement,但这只会创建具有第二个剖面视图的第二个剖面标记。是否有任何方法可以使用Revit API实现这一点?您需要更改ViewSection对象的CropBox属性。Min和Max属性的Z分量应该反转。您需要更改viewssection对象的CropBox属性。Min和Max属性的Z组件应该反转。我在Revit AP

我希望能够使用Revit 2017 API翻转活动分区。这将相当于我在下面的图片中看到的UI功能


我尝试使用内置的
ElementTransformUtils.MirrorElement
,但这只会创建具有第二个剖面视图的第二个剖面标记。是否有任何方法可以使用Revit API实现这一点?

您需要更改
ViewSection
对象的
CropBox
属性。
Min
Max
属性的Z分量应该反转。

您需要更改
viewssection
对象的
CropBox
属性。
Min
Max
属性的Z组件应该反转。

我在Revit API论坛上的帖子中找到了一个解决方案。事实证明,我忽略了复数
ElementTransformUtils.MirrorElements
函数,我假设它与单数
ElementTransformUtils.MirrorElement
几乎完全相同,只是做了多个元素镜像而不是单个镜像。复数
ElementTransformUtils.MirrorElements
有一个
bool mirrorCopies
参数,您可以将该参数设置为
false
,这将强制镜像原始节,而不是仅制作原始节的镜像副本。以下是两个并排的函数签名:

void MirrorElement(
  Document document, 
  ElementId elementToMirror, 
  Plane plane
);

IList<ElementId> MirrorElements(
  Document document, 
  ICollection<ElementId> elementsToMirror, 
  Plane plane, 
  bool mirrorCopies
);

我在Revit API论坛上的帖子中找到了一个解决方案。事实证明,我忽略了复数
ElementTransformUtils.MirrorElements
函数,我假设它与单数
ElementTransformUtils.MirrorElement
几乎完全相同,只是做了多个元素镜像而不是单个镜像。复数
ElementTransformUtils.MirrorElements
有一个
bool mirrorCopies
参数,您可以将该参数设置为
false
,这将强制镜像原始节,而不是仅制作原始节的镜像副本。以下是两个并排的函数签名:

void MirrorElement(
  Document document, 
  ElementId elementToMirror, 
  Plane plane
);

IList<ElementId> MirrorElements(
  Document document, 
  ICollection<ElementId> elementsToMirror, 
  Plane plane, 
  bool mirrorCopies
);

是的,你能分享一个代码示例吗?这就是我在Revit API论坛上得到回复之前要走的路。另外,其中一位回复我帖子的人表示,将
镜像副本设置为
false
(根据我的回答)对他们不起作用。我想知道我的答案是否适用于旧版本的Revit。是的,您能分享一个代码示例吗?这就是我在Revit API论坛上得到回复之前要走的路。另外,其中一位回复我帖子的人表示,将
镜像副本设置为
false
(根据我的回答)对他们不起作用。我想知道我的答案是否适用于旧版本的Revit。