BIM的乐趣

显示ParameterType和Parameter Group中

2020-05-18  本文已影响0人  九哥BIMer

今天我们来聊聊ParameterType和Parameter Group这两个节点,因为每次使用的时候,都特别的痛苦,明明Revit里是显示中文的,可是这两个节点显示下拉菜单里,显示的却是英文,而且Parameter Group显示的更是Butitin Parameter,是以PG开头的显示方式,对于英文不好的我,简直是太痛苦了。。。

image

那么,有没有办法,获取ParameterType和Parameter Group的中文名称?答案,当然是有的。

这里呢,就用到了Revit API中一个叫做“LabelUtils”的方法——获取标签的方法,我们在API中搜一下这个,如下图:

image

我们点ParameterType就能看到基本语法:

image

想要得到ParameterType的标签,我们就需要先得到ParameterType,这里我们随意点下上面图中的ParameterType,就会跳转到ParameterType Enumeration页面,这里展示该枚举下的所有方法:

image

这个东西有很多,我们就获取基本参数类型就行,FamilyType后面,都是族参数类型,我们用到的不多,这里就不一一列出来了。

然后就简单了,我们只要获取ParameterType的枚举,然后再依次获取他们的标签,就能得到我们梦寐以求的中文显示了,代码如下:

# Copyright(c) 2020, 九哥BIMer
import clr
clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import*
import System

ParTypes =[]
ParTypes = System.Enum.GetValues(ParameterType)
ParTypesName = list()
for i in ParTypes:
  try:
    ParTypesName.append((LabelUtils.GetLabelFor(i)))
  except:
    pass

OUT = ParTypes,ParTypesName

效果如下图:

image

样的方式,我们也可以获取参数分组的中文标签,代码如下:

# Copyright(c) 2020, 九哥BIMer
import clr
clr.AddReference('RevitAPI')
from Autodesk.Revit.DB import*
import System

groups =[]

groups = System.Enum.GetValues(BuiltInParameterGroup)
groupsname = list()
for b in groups:
  try:
    groupsname.append((LabelUtils.GetLabelFor(b)))
  except:
    pass

OUT = groups,groupsname

效果如下:

image

合Data-Shape使用,特别顺手,一定要试试哦~

image

好了,今天的分享就到这里了,该方法是通用的,获取Element Type之类的中文标签都是可以的,大家自行尝试,有不对的地方,请指正哈!

BIM的乐趣“群成员已经过百了,有希望入群的小伙伴,可以加我好友,备注来源,我来拉你入群哦~

上一篇下一篇

猜你喜欢

热点阅读