Revit二次开发示例:HelloRevit

本示例实现Revit和Revit打开的文件的相关信息。

 

Revit二次开发示例:HelloRevit

 

#region Namespaces

using System;

using System.Collections.Generic;

using System.Diagnostics;

using Autodesk.Revit.ApplicationServices;

using Autodesk.Revit.Attributes;

using Autodesk.Revit.DB;

using Autodesk.Revit.UI;

using Autodesk.Revit.UI.Selection;

#endregion



namespace HelloRevit

{

    [Autodesk.Revit.Attributes.Transaction(TransactionMode.Manual)]

    [Autodesk.Revit.Attributes.Regeneration(RegenerationOption.Manual)]

    [Autodesk.Revit.Attributes.Journaling(JournalingMode.NoCommandData)]

    public class Command : IExternalCommand

    {

        public Result Execute(

          ExternalCommandData commandData,

          ref string message,

          ElementSet elements)

        {

            Application app = commandData.Application.Application;

            Document activeDoc = commandData.Application.ActiveUIDocument.Document;

            TaskDialog mainDialog = new TaskDialog("Hello, Revit!");

            mainDialog.MainInstruction = "Hello, Revit!";

            mainDialog.MainContent=

                "This sample shows how a basic ExternalCommand can be added to the Revit user interface."

                + " It uses a Revit task dialog to communicate information to the interactive user.\n"

                + "The command links below open additional task dialogs with more information.";



            mainDialog.AddCommandLink(TaskDialogCommandLinkId.CommandLink1,

                "View information about the Revit installation");

            mainDialog.AddCommandLink(TaskDialogCommandLinkId.CommandLink2,

                "View information about the active document");



            mainDialog.CommonButtons = TaskDialogCommonButtons.Close;

            mainDialog.DefaultButton = TaskDialogResult.Close;

            mainDialog.FooterText=

                "<a href=\"http://usa.autodesk.com/adsk/servlet/index?siteID=123112&id=2484975 \">"

                + "Click here for the Revit API Developer Center</a>";



            TaskDialogResult tResult = mainDialog.Show();

            if (TaskDialogResult.CommandLink1 == tResult)

            {

                TaskDialog dialog_CommandLink1 = new TaskDialog("Revit Build Informaiton");

                dialog_CommandLink1.MainInstruction =

                    "Revit Version Name is: " + app.VersionName + "\n"

                    + "Revit Version Number is: " + app.VersionNumber + "\n"

                    + "Revit Version Build is: " + app.VersionBuild;

                dialog_CommandLink1.Show();

            }

            else if (TaskDialogResult.CommandLink2 == tResult)

            {

                TaskDialog.Show("Active Document Information",

                    "Active document: " + activeDoc.Title + "\n"

                    + "Active view name: " + activeDoc.ActiveView.Name);

            }



            return Result.Succeeded;

        }

    }

}
View Code

 

 

 

你可能感兴趣的:(二次开发)