Revit では要素を頻繁に使用します。要素コマンドで API を使用する前には、目的の要素を Revit から取得する必要があります。Revit API による要素の取得には、次のようにいくつかの方法があります。
要素取得のためのこれらの各メソッドの詳細については、次のセクションで取り上げます。
目的の要素の ElementId が分かっている場合は、Document.Element プロパティを使用して要素を取得します。
ドキュメント内の要素を取得するための最も一般的な方法は、フィルタを使用して要素のコレクションを取得する方法です。Revit API には FilteredElementCollector クラスとサポート クラスがあり、要素のフィルタされたコレクションを作成して、その後に要素を繰り返すことができます。詳細は、「フィルタ」を参照してください。
モデル内のすべての要素からフィルタされたコレクションを取得するのではなく、選択した要素のみにアクセスすることができます。UIDocument.Selection.GetElementIds メソッドを使用して、現在アクティブなドキュメントから選択したオブジェクトを取得できます。アクティブな選択の使用法の詳細は、「選択」を参照してください。
要素にアクセスするための一般的な方法を使用する以外に、Revit プラットフォーム API の Document クラスには、すべての要素を走査せずに、現在アクティブなドキュメントから特定の要素を取得するためのプロパティがあります。次の表は、取得可能な特定の要素の一覧です。
表 11: ドキュメント プロパティから要素を取得
要素 |
ドキュメントのプロパティでのアクセス |
ProjectInfo |
Document.ProjectInformation |
ProjectLocation |
Document.ProjectLocations Document.ActiveProjectLocation |
SiteLocation |
Document.SiteLocation |
Phase |
Document.Phases |