PPT_LOGO_4b
Revit Programming Introduction <#>
Copyright © 2009 Autodesk Inc.
オブジェクト モデル (サブセットのサブセット)
API Object
Element
HostObject
HostObject Attributes
Insertable Object
Family Symbol
Group Type
Floor Type
Cont. Footing Type
Wall Type
Wall
Floor
Clg. & Flr
Cont. Footing
RoofBase
Family Base
Symbol
Family
Instance
Insertable Instance
Family Instance
Group
要素コレクション
ホストとコンポーネントオブジェクト(標準とシステム)
ファミリーとタイプ – 別名シンボル
これを更にグループ化して見て行きます。
Revitの構造を大まかに表しております。
99%のオブジェクトがAPIObjectを継承しています。
そこからElementオブジェクトが派生し、さらにFamilyBase、Symbol,Group、Instance,HostObjectが派生します。
HostObjectからWallやFloorクラスが派生していますが、ドアや窓が建築では使用されると思いますが見当たりません。
ここでRevitのUIを思い出して頂きたいのですが、ドアや窓はファミリーとして外部ファイルで編集されます。
但し、壁等は外部ファミリーとして提供されません。
この違いが現れているのがこの部分になります。
次にFamilyInstanceと赤で囲われたクラスが有りますが、これがドアや窓が属するクラスとなります。
ということは標準ファミリー(コンポーネントと呼ばれる)が、このFamilyInstanceに属します。
それに対して、Revitのシステムでしか定義出来ないシステムファミリーがHostObject下のクラスに該当します。
表示されているインスタンス以外に、Symbolというクラスが有ります。
これはいわゆるファミリーシンボルですが、壁のシンボルやドアのシンボルとして定義されますが、画面の左下の赤枠のクラス2つがそれになります。
その直ぐ右上にFamilySymbolが有りますが、これは標準ファミリーのシンボルになります。
ここで構造の分け目となるのは、Symbolである要素かSymbolでは無い要素か、Symbolの中でもコンポーネント系なのか、それともシステム系なのかで判別します。
システム系であれば専用のクラスが用意されていますが、コンポーネント系であればFamilyInstanceもしくはFamilySymbolとなります。
これは外部で定義されると専用のクラスを持つことが出来ませんので、この様な構造となります。
一番左にFamilyクラスが有りますが、これが入れ物に該当します。
例えば、ドアのファミリーには大きさの異なる色々なタイプがあり、これらがFamilyクラスに含まれます。
ですから、FamilyクラスはSymbolクラスのコンテナとなります。