添加项目文件。
This commit is contained in:
@@ -0,0 +1,66 @@
|
||||
using System.Text;
|
||||
|
||||
using Autodesk.Revit.Attributes;
|
||||
using Autodesk.Revit.DB;
|
||||
using Autodesk.Revit.UI;
|
||||
using Autodesk.Revit.UI.Selection;
|
||||
|
||||
using Nice3point.Revit.Toolkit.External;
|
||||
|
||||
|
||||
namespace Szmedi.RevitToolkit.Approval.Commands
|
||||
{
|
||||
/// <summary>
|
||||
/// Revit执行命令
|
||||
/// </summary>
|
||||
[Transaction(TransactionMode.Manual)]
|
||||
[Regeneration(RegenerationOption.Manual)]
|
||||
public class AddMetroParametersCmd : ExternalCommand
|
||||
{
|
||||
public override void Execute()
|
||||
{
|
||||
StringBuilder sb = new StringBuilder();
|
||||
var allElements = Document.OfAllModelCollector();
|
||||
if (allElements == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
var elements = allElements.DistinctBy(e => e.Category.Id);
|
||||
var sharedParameters = GlobalAssists.GetMetroSharedParameters();
|
||||
|
||||
Document.InvokeGroup(
|
||||
tg =>
|
||||
{
|
||||
Document.Invoke(
|
||||
ts =>
|
||||
{
|
||||
foreach (var elem in elements)
|
||||
{
|
||||
var sign = elem.LookupParameter("深圳构件标识");
|
||||
if (sign == null)
|
||||
{
|
||||
sb.AppendLine($"构件 {elem.Id} 构件名 {elem.Name} 没有找到标识参数,请检查。");
|
||||
continue;
|
||||
}
|
||||
if (sign != null)
|
||||
{
|
||||
var value = sign.GetValue()?.ToString();
|
||||
var paramsToAdd = GlobalAssists.GetMetroSignParameters(value);
|
||||
SharedParameterAssists.AddMetroParameters(elem, paramsToAdd, sharedParameters);
|
||||
}
|
||||
|
||||
}
|
||||
});
|
||||
},
|
||||
"添加轨道交通工程参数");
|
||||
if (sb.Length > 0)
|
||||
{
|
||||
TaskDialog.Show("提示", sb.ToString());
|
||||
}
|
||||
else
|
||||
{
|
||||
TaskDialog.Show("提示", "所有构件参数添加成功。");
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user