ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
| この記事の要点 |
|
BuiltInCategory とは
BuiltInCategory は Revit API(Autodesk.Revit.DB 名前空間)で定義された列挙型で、Revit のすべての標準カテゴリ(壁・ドア・窓・床・配管等)を表します。FilteredElementCollector で要素を絞り込む際の必須キーです。
基本的な使い方
using Autodesk.Revit.DB;
// すべての壁を取得
var walls = new FilteredElementCollector(doc)
.OfCategory(BuiltInCategory.OST_Walls)
.WhereElementIsNotElementType()
.ToElements();
Console.WriteLine($"壁の数: {walls.Count}");
// 複数カテゴリを一度に取得
var categories = new List {
BuiltInCategory.OST_Doors,
BuiltInCategory.OST_Windows
};
var filter = new ElementMulticategoryFilter(categories);
var openings = new FilteredElementCollector(doc)
.WherePasses(filter)
.WhereElementIsNotElementType()
.ToElements();
建築カテゴリ(よく使う 15 個)
| BuiltInCategory | 意味 | 備考 |
|---|---|---|
OST_Walls | 壁 | もっとも使用頻度高 |
OST_Doors | ドア | 壁にホスト |
OST_Windows | 窓 | 壁にホスト |
OST_Floors | 床(スラブ) | 水平要素 |
OST_Roofs | 屋根 | |
OST_Ceilings | 天井 | |
OST_Stairs | 階段 | |
OST_StairsRailing | 手すり | |
OST_Ramps | スロープ | |
OST_Columns | 建築柱 | 意匠柱 |
OST_Furniture | 家具 | |
OST_FurnitureSystems | システム家具 | |
OST_Casework | 什器 | キッチン・収納 |
OST_GenericModel | 汎用モデル | その他 |
OST_Rooms | 部屋 | 面積拾い |
構造カテゴリ(よく使う 8 個)
| BuiltInCategory | 意味 |
|---|---|
OST_StructuralColumns | 構造柱 |
OST_StructuralFraming | 構造フレーム(梁・トラス) |
OST_StructuralFoundation | 基礎 |
OST_StructuralStiffener | スチフナ |
OST_StructuralTruss | トラス |
OST_Rebar | 鉄筋 |
OST_StructuralConnections | 接合部 |
OST_StructuralFramingSystem | 構造フレームシステム |
MEP(設備)カテゴリ
| BuiltInCategory | 意味 | 分野 |
|---|---|---|
OST_PipeCurves | 配管 | 衛生 / 空調 |
OST_PipeFitting | 配管継手 | 衛生 |
OST_PipeAccessory | 配管付属品(バルブ等) | 衛生 |
OST_DuctCurves | ダクト | 空調 |
OST_DuctFitting | ダクト継手 | 空調 |
OST_DuctAccessory | ダクト付属品 | 空調 |
OST_MechanicalEquipment | 機械設備 | 空調機等 |
OST_PlumbingFixtures | 衛生器具 | 便器・洗面台 |
OST_LightingFixtures | 照明器具 | 電気 |
OST_ElectricalEquipment | 電気設備 | 分電盤等 |
OST_ElectricalFixtures | 電気器具 | コンセント等 |
OST_Conduit | 電線管 | 電気 |
OST_CableTray | ケーブルラック | 電気 |
注釈・ビュー系カテゴリ
| BuiltInCategory | 意味 |
|---|---|
OST_Grids | 通り芯 |
OST_Levels | レベル(階) |
OST_Dimensions | 寸法 |
OST_TextNotes | 文字注釈 |
OST_Tags | タグ |
OST_Sheets | シート |
OST_Views | ビュー |
OST_Viewports | ビューポート |
OST_TitleBlocks | タイトルブロック |
カテゴリ判定の書き方
// パターン1: integer 値で比較
if (element.Category != null &&
element.Category.Id.IntegerValue == (int)BuiltInCategory.OST_Walls)
{
Console.WriteLine("これは壁");
}
// パターン2: BuiltInCategory に変換して比較
var bic = (BuiltInCategory)element.Category.Id.IntegerValue;
switch (bic)
{
case BuiltInCategory.OST_Walls:
Console.WriteLine("壁");
break;
case BuiltInCategory.OST_Doors:
Console.WriteLine("ドア");
break;
case BuiltInCategory.OST_Windows:
Console.WriteLine("窓");
break;
default:
Console.WriteLine($"その他: {element.Category.Name}");
break;
}
// パターン3: Category.BuiltInCategory プロパティ (Revit 2023+)
// if (element.Category.BuiltInCategory == BuiltInCategory.OST_Walls) ...
FilteredElementCollector との応用
// すべての建築要素を一度に取得
var archCategories = new List {
BuiltInCategory.OST_Walls,
BuiltInCategory.OST_Floors,
BuiltInCategory.OST_Roofs,
BuiltInCategory.OST_Ceilings,
BuiltInCategory.OST_Doors,
BuiltInCategory.OST_Windows,
BuiltInCategory.OST_Columns,
BuiltInCategory.OST_Stairs
};
var multiFilter = new ElementMulticategoryFilter(archCategories);
var archElements = new FilteredElementCollector(doc)
.WherePasses(multiFilter)
.WhereElementIsNotElementType()
.ToElements();
// レベルごとに壁を集計
var levels = new FilteredElementCollector(doc)
.OfCategory(BuiltInCategory.OST_Levels)
.Cast();
foreach (var level in levels)
{
var levelFilter = new ElementLevelFilter(level.Id);
var wallsOnLevel = new FilteredElementCollector(doc)
.OfCategory(BuiltInCategory.OST_Walls)
.WherePasses(levelFilter)
.WhereElementIsNotElementType()
.Count();
Console.WriteLine($"{level.Name}: {wallsOnLevel} walls");
}
カテゴリ一覧を動的に取得する
// プロジェクトの全カテゴリを列挙
foreach (Category cat in doc.Settings.Categories)
{
int id = cat.Id.IntegerValue;
string bicName = "";
if (Enum.IsDefined(typeof(BuiltInCategory), id))
bicName = ((BuiltInCategory)id).ToString();
Console.WriteLine($"{cat.Name} | {id} | {bicName}");
}
FAQ
Q: BuiltInCategory 一覧を全て見たい
A: Revit API ドキュメント、または Enum.GetValues(typeof(BuiltInCategory)) で列挙できます。約 1300 個あります。
Q: カスタムカテゴリは作れる?
A: BuiltInCategory には追加できませんが、サブカテゴリは作成可能(ファミリエディタ内)。
Q: タイプ要素もまとめて取得するには?
A: WhereElementIsElementType() または WhereElementIsNotElementType() を省略すれば両方取れます。
ページの作成
親となるページを選択してください。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球
子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール
親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
子ページ
子ページはありません
同階層のページ
- RevitAPI.dll と RevitAPIUI.dll の参照
- マニフェストファイルの書き方
- アドインの追加/設置方法
- アドインの作成サンプル(外部ツール編)
- アドインの作成サンプル(外部アプリケーション編)
- 要素の取得と情報の表示
- 要素のカテゴリとマテリアルの取得と表示
- よく使うBuiltInCategoryの一覧
- 外部ツールでAutodesk.Revit.Documentを取得する方法
- エラーメッセージの設定方法
- 「はい」、「いいえ」、「キャンセル」ボタンの設置と処理分岐
- 要素(カテゴリ、ファミリ、タイプ)とは
- ElementIdとUniqueIdの違い
- 要素フィルターの使い方
- 要素のパラメータ一覧の取得
- pyRevitの導入と簡単なアプリケーションの作成
- Revit SDKのサンプルの場所とビルド方法
- FamilySymbol(タイプ)の取得とパラメータの変更
- 相対パスでdllにアイコン画像を埋め込む方法
- 「グループ」について
人気ページ
- 1 Eclipseで「サーバーに追加または除去できるリソースがありません。」の原因と対処法
- 2 tomcat の起動 / 停止ログと catalina.log・catalina.out の違い
- 3 JavaScript base URL 取得方法|window.location.origin と SSR/Node.js 対応
- 4 YouTube Data API v3 エラー一覧|403/400/404 の主要原因と切り分け
- 5 Spring Frameworkのアノテーション一覧
- 6 Laravel エラー一覧|500/Blade/DB 接続/ルーティングの代表エラー
- 7 3Dグラフィックスとは|モデリング/レンダリング/主要ソフトウェア (Blender / Maya)
- 8 【Spring】@Valueアノテーションとは
- 9 CATALINA_HOME の確認方法 (Linux / Mac)
- 10 【Spring】@Autowiredアノテーションとは
最近更新/作成されたページ
- Laravel キャッシュクリア完全ガイド(cache:clear / config:clear / 2026-05-18 07:42:07
- プロジェクトの作成と削除 2026-05-18 07:42:07
- インストール直後にNetbeansが反応しない 2026-05-18 07:42:07
- 動画やチャンネルの検索 2026-05-18 07:42:07
- APIキー取得方法 2026-05-18 07:42:07
- チャンネル情報の取得 2026-05-18 07:42:07
- API 入門 — Web API(REST / GraphQL / gRPC / 2026-05-18 07:42:07
- インストール(eclipseプラグイン) 2026-05-18 07:42:07
- Laravel「Dotenv values containing spaces must be surrounded 2026-05-18 07:42:07
- エラー一覧 2026-05-18 07:42:07
- curl: (51) SSL: certificate subject name '~' does not match 2026-05-18 07:42:07
- インストール方法(Windows版) 2026-05-18 07:42:07
- JSONから配列に変換 2026-05-18 07:42:07
- 処理を一定時間待つ 2026-05-18 07:42:07
- A non well formed numeric value encountered 2026-05-18 07:42:07
コメントを削除してもよろしいでしょうか?