Revit二開–翻轉尺寸線
在Revit二次開發中,有些時候我們找不到相應的方法,例如牆和某些族元素 有flip方法或者屬性,而尺寸標註就沒有這個屬性,那麼怎麼辦呢?方法如下:
例如尺寸線的標註字符串類型爲基線或縱座標時,選擇尺寸線,就會出現翻轉符號,然而,dimension對象並沒有翻轉屬性。
這時候我們可以採用系統自帶的命令 “ID_FLIP_DIMENSION_DIRECTION”來實現這個翻轉。
具體實現方法如下:
[Transaction(TransactionMode.Manual)]
class Cmd_FlipDimension:IExternalCommand
{
public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
{
var uidoc = commandData.Application.ActiveUIDocument;
var doc = uidoc.Document;
var sel = uidoc.Selection;
var dim =
sel.PickObject(ObjectType.Element, doc.GetSelectionFilter(m => m is Dimension))
.GetElement(doc) as Dimension;
sel.SetElementIds(new List<ElementId>(){dim.Id});
CommandHandlerService.invokeCommandHandler("ID_FLIP_DIMENSION_DIRECTION");
return Result.Succeeded;
}
}
實現效果: