From 8654386c716d8478fb8f9f62ce8cbdfb11a6155e Mon Sep 17 00:00:00 2001 From: lvxing <18271674504@163.com> Date: 星期四, 01 八月 2024 14:14:23 +0800 Subject: [PATCH] fix_nullreference --- HStation.RevitDev/RevitDataExport/Plugin/Command.cs | 234 +++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 222 insertions(+), 12 deletions(-) diff --git a/HStation.RevitDev/RevitDataExport/Plugin/Command.cs b/HStation.RevitDev/RevitDataExport/Plugin/Command.cs index 83e0e43..738f383 100644 --- a/HStation.RevitDev/RevitDataExport/Plugin/Command.cs +++ b/HStation.RevitDev/RevitDataExport/Plugin/Command.cs @@ -1,12 +1,13 @@ 锘縰sing Autodesk.Revit.Attributes; using Autodesk.Revit.DB; using Autodesk.Revit.UI; +using HStation.Model; +using HStation.RevitDev.Model.ModelEnum; using HStation.RevitDev.RevitDataExport.Forms; -using Spire.AI.Api; +using HStation.RevitDev.RevitDataExport.Utility; using System; using System.Diagnostics; -using System.Drawing.Drawing2D; -using System.Windows.Controls; +using System.IO; using System.Windows.Forms; namespace HStation.RevitDev.RevitDataExport @@ -26,23 +27,232 @@ } } + /// <summary> + /// 瀵煎嚭妯″瀷 + /// </summary> [Transaction(TransactionMode.Manual)] - public class PumpSystemAnalysis : IExternalCommand + public class ExportModels : IExternalCommand { public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) { - UIApplication uiapp = commandData.Application; - foreach (var panelId in Common.GlobalResource.DockablePanelIds) - { - Guid guid = new Guid(panelId); - DockablePaneId paneId = new DockablePaneId(guid); - DockablePane pane = uiapp.GetDockablePane(paneId); - pane.Show(); - } + var doc = commandData.Application.ActiveUIDocument.Document; + + CacheUtil.SaveCache(commandData.Application.ActiveUIDocument.Document); + TaskDialog.Show("鎻愮ず", "瀵煎嚭瀹屾垚锛�"); return Result.Succeeded; } } + /// <summary> + /// 姘存车 + /// </summary> + [Transaction(TransactionMode.Manual)] + public class PumpSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_Pump; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 绠¢亾 + /// </summary> + [Transaction(TransactionMode.Manual)] + public class PipeSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_Pipe; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + Common.GlobalResource.CurrentAddinId = commandData.Application.ActiveAddInId; + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 闃�闂� + /// </summary> + [Transaction(TransactionMode.Manual)] + public class ValveSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_Valve; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 鎹㈢儹姘� + /// </summary> + [Transaction(TransactionMode.Manual)] + public class HeatExchangerSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_HeatExchanger; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 闂峰ご + /// </summary> + [Transaction(TransactionMode.Manual)] + public class BlockerSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_Blocker; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 鍠锋穻澶� + /// </summary> + [Transaction(TransactionMode.Manual)] + public class ShowerSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_Shower; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 涓夐�� + /// </summary> + [Transaction(TransactionMode.Manual)] + public class ThreeJointSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_ThreeJoint; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 鍥涢�� + /// </summary> + [Transaction(TransactionMode.Manual)] + public class FourJointSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_FourJoint; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 姘磋〃 + /// </summary> + [Transaction(TransactionMode.Manual)] + public class WaterMeterSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_WaterMeter; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 姘村簱 + /// </summary> + [Transaction(TransactionMode.Manual)] + public class WaterPoolSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_WaterPool; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 姘寸 + /// </summary> + [Transaction(TransactionMode.Manual)] + public class WaterBoxSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_WaterBox; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 寮ご + /// </summary> + [Transaction(TransactionMode.Manual)] + public class ElbowSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_Elbow; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 寮ご + /// </summary> + [Transaction(TransactionMode.Manual)] + public class FireHydrantSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_FireHydrant; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } + + /// <summary> + /// 鍙樺緞 + /// </summary> + [Transaction(TransactionMode.Manual)] + public class ReducingSystem : IExternalCommand + { + RevitType m_type = RevitType.RFT_Reducing; + public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements) + { + DocumentUtil.RegistDocumentEvent(commandData.Application.Application); + DockablePaneUtils.ShowDockablePanel(commandData, m_type); + return Result.Succeeded; + } + } public class WindowHandle : IWin32Window { -- Gitblit v1.9.3