© 2010 Autodesk
Introduction to Revit 2011 API
DB Element
Identifying an Element 
§ABC
§
<VB.NET>
    ''  identify the type of the element known to the UI.
    Public Sub IdentifyElement(ByVal elem As Element)
        Dim s As String = ""
        If TypeOf elem Is Wall Then
            s = “壁"
        ElseIf TypeOf elem Is Floor Then
            s = “床"
        ElseIf TypeOf elem Is RoofBase Then
            s = “屋根"
        ElseIf TypeOf elem Is FamilyInstance Then
            ''  An instance of a component family is all FamilyInstance.
            ''  We'll need to further check its category. 
            If elem.Category.Id.IntegerValue = _
                BuiltInCategory.OST_Doors Then
                s = “ドア"
            ElseIf elem.Category.Id.IntegerValue = _
                BuiltInCategory.OST_Windows Then
                s = “窓"
            ElseIf elem.Category.Id.IntegerValue = _
                BuiltInCategory.OST_Furniture Then
                s = “家具"
            Else
                s = “コンポーネント ファミリインスタンス"  '' e.g. Plant
            End If
        ...
</VB.NET>
要素
 要素インスタンスを識別
では、コードを例にとって要素の識別について見てみましょう。

この関数は要素を受け取り、その要素のインスタンスが何かを識別しています。(このコードでは要素が要素インスタンスであることが前提となっています)

まず、システムファミリである壁、床、屋根、を要素インスタンスの定義クラスで識別しています。

次にコンポーネントファミリの要素インスタンスの定義クラスであるFamilyInstance クラスで判定をして、BuiltInCategory というカテゴリの列挙型でドア、窓、家具かを識別しています。