整理代码
This commit is contained in:
47
ShrlAlgoToolkit.RevitAddins/RvMEP/FlipWorkplaneCmd.cs
Normal file
47
ShrlAlgoToolkit.RevitAddins/RvMEP/FlipWorkplaneCmd.cs
Normal file
@@ -0,0 +1,47 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
|
||||
using Autodesk.Revit.Attributes;
|
||||
using Autodesk.Revit.DB;
|
||||
using Autodesk.Revit.UI;
|
||||
using Autodesk.Revit.UI.Selection;
|
||||
|
||||
using CommunityToolkit.Mvvm.DependencyInjection;
|
||||
|
||||
using Nice3point.Revit.Toolkit.External;
|
||||
|
||||
|
||||
|
||||
namespace ShrlAlgo.RvKits.RvMEP
|
||||
{
|
||||
[Transaction(TransactionMode.Manual)]
|
||||
[Regeneration(RegenerationOption.Manual)]
|
||||
public class FlipWorkplaneCmd : ExternalCommand
|
||||
{
|
||||
public override void Execute()
|
||||
{
|
||||
ICollection<FamilyInstance> familyInstances;
|
||||
if (UiDocument.Selection.GetElementIds().Count > 0)
|
||||
{
|
||||
familyInstances = UiDocument.Selection.GetElementIds().Select(Document.GetElement).OfType<FamilyInstance>().ToList();
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
familyInstances = UiDocument.SelectObjects<FamilyInstance>("请选择族实例");
|
||||
}
|
||||
Document.Invoke(
|
||||
ts =>
|
||||
{
|
||||
foreach (var ins in familyInstances)
|
||||
{
|
||||
if (ins.CanFlipWorkPlane)
|
||||
{
|
||||
ins.IsWorkPlaneFlipped = !ins.IsWorkPlaneFlipped;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user