不卡视频在线观看_三级网站视频在线观看_91精品网站_国产综合一区二区

完善主體資料,免費贈送VIP會員!
* 主體類型
* 企業名稱
* 信用代碼
* 所在行業
* 企業規模
* 所在職位
* 姓名
* 所在行業
* 學歷
* 工作性質
請先選擇行業
您還可以選擇以下福利:
行業福利,領完即止!

下載app免費領取會員

NULL

ad.jpg

Revit二次開發教程:Revit族參數可見性設置

發布于:2019-06-22 17:52:33

網友投稿

更多

很多人出于某種用途為族設置特殊的參數之后,希望可以將其隱藏。在Revit官方暴露出來的API中,是沒有方法來實現的。以下代碼演示了如何將墻體所有參數隱藏!

using System;

using System.Linq;

using Autodesk.Revit.UI;

using Autodesk.Revit.Attributes;

using Autodesk.Revit.DB;

using System.Reflection;


namespace RevitAPITest

{

    [Transaction(TransactionMode.Manual)]

    public class APITest : IExternalCommand

    {

        public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)

        {

            var uiDoc = commandData.Application.ActiveUIDocument;

            var doc = uiDoc.Document;

            var elemIds = uiDoc.Selection.GetElementIds();


            if (elemIds.Count == 0)

            {

                TaskDialog.Show("Error", "Please select an element....!");

                return Result.Failed;

            }


            var elem = doc.GetElement(elemIds.First());


            //var eum = elem.Parameters.GetEnumerator();


            var elemType = doc.GetElement(elem.GetTypeId()) as ElementType;

            if (elemType == null)

            {

                return Result.Failed;

            }

            var eum = elemType.Parameters.GetEnumerator();


            while (eum.MoveNext())

            {

                var parameter = eum.Current as Parameter;

                parameter.SetVisibility(false);

            }

            return Result.Succeeded;

        }

    }


    public class NativeCore

    {

        public static bool InvokeMoudle(string mName, object[] paramters, bool apiMoudle = true)

        {

            try

            {

                MethodInfo m = null;

                if (apiMoudle)

                    m = NativeMoudle.GetAPIMoudlerMethod(mName);

                else

                    m = NativeMoudle.GetUIMoudlerMethod(mName);

                m.Invoke(null, paramters);

                return true;

            }

            catch (Exception ex)

            {

                return false;

            }

        }

    }


    public class NativeMoudle

    {

        /// 獲取RevitAPI程序集Moudle內的方法名稱.

        /// <summary>

        /// 獲取RevitAPI程序集Moudle內的方法名稱.

        /// </summary>

        /// <param name="name"></param>

        /// <returns></returns>

        public static MethodInfo GetAPIMoudlerMethod(string name)

        {

            var moudle = NativeMoudle.getAPIMoudle();

            var rs = moudle.GetMethods(BindingFlags.NonPublic | BindingFlags.Static).Where(m => m.Name == name);

            return rs.Count() == 0 ? null : rs.First();

        }


        /// 獲取RevitAPIUI程序集Moudle內的方法名稱.

        /// <summary>

        /// 獲取RevitAPIUI程序集Moudle內的方法名稱.

        /// </summary>

        /// <param name="name"></param>

        /// <returns></returns>

        public static MethodInfo GetUIMoudlerMethod(string name)

        {

            var moudle = NativeMoudle.getUIMoudle();

            var rs = moudle.GetMethods(BindingFlags.NonPublic | BindingFlags.Static).Where(m => m.Name == name);

            return rs.Count() == 0 ? null : rs.First();

        }


        /// 獲取RevitAPI Modules.

        /// <summary>

        /// 獲取RevitAPI Modules.

        /// </summary>

        /// <returns></returns>

        internal static Module getAPIMoudle()

        {

            return typeof(Document).Assembly.Modules.First();

        }


        /// 獲取RevitAPIUI Modules.

        /// <summary>

        /// 獲取RevitAPIUI Modules.

        /// </summary>

        /// <returns></returns>

        internal static Module getUIMoudle()

        {

            return typeof(UIDocument).Assembly.Modules.First();

        }


    }


    public static class ParameterExtension

    {

        /// <summary>

        /// 設置參數對象對用戶是否可見.

        /// </summary>

        /// <param name="parameter"></param>

        /// <param name="visible"></param>

        /// <returns></returns>

        public static bool SetVisibility(this Parameter parameter, bool visible)

        {

            var parameterIntPtr = parameter.ToParamDef();

            if (parameterIntPtr == IntPtr.Zero)

            {

                return false;

            }


            var result = NativeCore.InvokeMoudle("ParamDef.setUserVisible", new object[] 

                {

                    parameterIntPtr, visible

                });


            return result;

        }


        /// <summary>

        /// 將參數對象轉為非托管指針.

        /// </summary>

        /// <param name="parameter"></param>

        /// <returns></returns>

        public static IntPtr ToParamDef(this Parameter parameter)

        {

            try

            {

                var m = typeof(Parameter).GetMethod("getParamDef", BindingFlags.NonPublic | BindingFlags.Instance);

                return ((Pointer)m.Invoke(parameter, null)).ToIntPtr();

            }

            catch

            {

                return IntPtr.Zero;

            }

        }

    }


    public static class PointerExtension

    {

        /// 將指針轉為句柄.

        /// <summary>

        /// 將指針轉為句柄.

        /// </summary>

        /// <param name="p"></param>

        /// <returns></returns>

        public unsafe static IntPtr ToIntPtr(this Pointer p)

        {

            return (IntPtr)p

                .GetType()

                .GetMethod("GetPointerValue", BindingFlags.NonPublic | BindingFlags.Instance)

                .Invoke(p, null);

        }

    }

}

圖片.png

圖片.png

本文版權歸腿腿教學網及原創作者所有,未經授權,謝絕轉載。

未標題-1.jpg

上一篇:REVIT中如何把墻附著到樓梯底部?

下一篇:Revit二次開發教程:Revit API Hook 之 攔截鼠標雙擊元素事件

60acb4e0ef112.png
不卡视频在线观看_三级网站视频在线观看_91精品网站_国产综合一区二区

      9000px;">

          国产精品一区一区三区| 国产女人水真多18毛片18精品视频| 99久久免费精品高清特色大片| 成人av影视在线观看| 欧美一级黄色大片| 国产精品久久99| 激情五月婷婷综合| 欧美精品高清视频| 一区二区三区日韩在线观看| 国产乱码精品一品二品| 欧美日韩黄色一区二区| 国产精品麻豆久久久| 色综合天天做天天爱| 亚洲影院在线观看| 精品久久免费看| www.99精品| 日韩av电影天堂| 国产精品亲子伦对白| 91精品国产全国免费观看| 国产成人亚洲精品青草天美| 亚洲九九爱视频| 欧美美女视频在线观看| 麻豆精品视频在线观看免费| 国产农村妇女精品| 欧美日韩一区在线观看| 精品一区二区三区在线观看| 久久久久久久综合狠狠综合| 色综合久久久久久久久久久| 图片区小说区区亚洲影院| 国产女人18水真多18精品一级做| 欧美日韩成人在线| 成人午夜免费电影| 亚洲精品国产成人久久av盗摄| 欧美日韩国产系列| 成人黄色电影在线| 国产成人精品三级| 亚洲妇女屁股眼交7| 国产免费观看久久| 欧美日韩综合在线| 欧洲视频一区二区| 色综合天天综合网天天看片 | 国产aⅴ综合色| 久久国产欧美日韩精品| 国产精品中文字幕日韩精品| 国产精品自拍网站| 国产精品1区2区3区在线观看| 国产成人免费网站| 懂色av一区二区在线播放| 91福利国产精品| 欧美三级在线看| 精品国产污网站| 国产精品视频第一区| 日韩电影在线一区| 成人毛片在线观看| 91精品国产麻豆国产自产在线| 精品国产一区二区三区久久影院 | 国产美女在线精品| 99久久久国产精品| 久久精品亚洲乱码伦伦中文| 亚洲婷婷综合色高清在线| 日韩电影一区二区三区四区| 国产毛片精品国产一区二区三区| 色婷婷精品久久二区二区蜜臂av| 欧美一级一级性生活免费录像| 国产精品三级av| 韩国三级电影一区二区| 欧美一级黄色大片| 亚洲国产aⅴ天堂久久| 99国产精品久| 国产偷国产偷亚洲高清人白洁| 日韩国产欧美视频| 欧洲国内综合视频| 亚洲一区二区偷拍精品| 91色porny在线视频| 亚洲久本草在线中文字幕| 91年精品国产| 亚洲靠逼com| 欧美日韩一区二区三区四区| 一区二区三区色| 在线不卡的av| 狠狠色狠狠色综合系列| 国产片一区二区三区| 色婷婷av一区二区三区软件| 依依成人综合视频| 4438亚洲最大| 国产成人午夜精品影院观看视频| 欧美成人精品二区三区99精品| 国产黄人亚洲片| 洋洋成人永久网站入口| 精品免费日韩av| 成人免费高清在线观看| 亚洲一区二区欧美激情| 日韩欧美成人激情| youjizz久久| 日本伊人色综合网| 亚洲三级电影网站| 久久美女艺术照精彩视频福利播放| 高清国产一区二区| 香蕉久久一区二区不卡无毒影院 | 亚洲影视资源网| 成人国产精品视频| 免费成人你懂的| 亚洲va国产va欧美va观看| 国产精品久久久久久久久免费相片| 欧美亚洲国产bt| 99v久久综合狠狠综合久久| 美女性感视频久久| 免费观看日韩av| 日韩av电影天堂| 国产原创一区二区| 91福利视频久久久久| 国产精品538一区二区在线| 亚洲成人午夜影院| 一区二区国产视频| 午夜欧美大尺度福利影院在线看| 自拍偷自拍亚洲精品播放| 日本一区二区三区国色天香 | 韩国视频一区二区| 蜜桃av一区二区在线观看| 国产一区视频网站| 99久久99久久综合| 色婷婷综合久久久久中文一区二区| aaa亚洲精品| 欧美色图激情小说| 欧美一区二区三区影视| 国产欧美一区二区三区网站| 中文字幕一区二区视频| 亚洲一区在线观看免费| 日韩和的一区二区| 国产成人在线视频网址| 欧美自拍偷拍午夜视频| 久久一区二区三区四区| 五月天视频一区| 大白屁股一区二区视频| 欧美一区二区精美| 亚洲日本一区二区| 国产激情一区二区三区| 欧美在线短视频| 中文字幕中文在线不卡住| 国产精品香蕉一区二区三区| 欧美日本韩国一区二区三区视频| 国产精品―色哟哟| 日韩影院在线观看| 色乱码一区二区三区88 | 91福利在线观看| 欧美一级高清片| 亚洲一区电影777| 99视频超级精品| 久久―日本道色综合久久| 国产精品家庭影院| 婷婷综合久久一区二区三区| 97精品国产露脸对白| 欧美精品丝袜中出| 美国三级日本三级久久99| 欧美亚洲另类激情小说| 国产欧美精品一区| 国产一本一道久久香蕉| 欧美一级艳片视频免费观看| 蜜臀久久99精品久久久画质超高清| 91国偷自产一区二区使用方法| 一区二区三区在线视频免费观看| 91免费版在线| 亚洲成人激情自拍| 欧美区视频在线观看| 免费高清视频精品| 亚洲日本一区二区| 精品久久久久久综合日本欧美| 国产麻豆精品久久一二三| 国产精品久久久久aaaa樱花 | 欧美一区二区三区婷婷月色| 本田岬高潮一区二区三区| 亚洲成人精品在线观看| 国产欧美日韩精品一区| 欧美老人xxxx18| av在线不卡免费看| 亚洲国产一区二区a毛片| 国产夜色精品一区二区av| 日韩一区二区三区av| 91亚洲大成网污www| 久久99深爱久久99精品| 日韩av不卡在线观看| 亚洲第一主播视频| 亚洲国产精品高清| 精品国产凹凸成av人网站| 6080日韩午夜伦伦午夜伦| 91免费国产在线观看| 国产69精品久久777的优势| 日本不卡在线视频| 午夜精品久久久久久久99水蜜桃| 一区二区三区四区亚洲| 亚洲日本欧美天堂| 一区二区视频免费在线观看| 亚洲色图在线看| 午夜精品久久久久影视| 亚洲小说春色综合另类电影| 亚洲电影欧美电影有声小说| 奇米一区二区三区av| 韩国av一区二区三区四区 | 粉嫩av一区二区三区粉嫩 | 午夜不卡av免费|