オートデスク製品ラインには、基本的なAutoCADの他に、さまざまな設計分野向けに最適化された多くの専門製品があります。 そのような製品の1つがAutoCAD Architectureです。 AutoCADと同様に、AutoCAD Architectureは.NETプラグインを作成できます。 オートデスクのライブラリに加えて、Teigha for Architecture C ++ライブラリを使用してAutoCAD Architectureオブジェクトを操作できます。これにより、そのようなオブジェクトをロード、描画、および操作できます。
最初は、.NETとTeigha for Architectureを使用して建築オブジェクトを操作する方法を示す一連のチュートリアルを作成したかったのですが、これらの一連のチュートリアルの紹介は別の記事に成長しました。
以下の記事にはプログラミングについては何もありません。 これは、AutoCAD Architectureとは何か、その中に実装されているオブジェクト、およびその機能は何かという表面的な考えを示すために書かれました。

はじめに
AutoCAD Architecture(略称ACA)は、建築設計のニーズに合わせて設計された、Autodeskの主力製品であるAutoCADに基づく特殊なアプリケーションです。 ACAの最初のバージョンは1998年にリリースされ、その後、ほぼ年に1回更新されています。 現在、ACAの最新バージョンはAutoCAD Architecture 2016と呼ばれています。
なぜこのような製品を作成する必要があったのですか?
ACAを使用して作成されたいくつかの建築図面を検討してください。


通常、建築図面には、壁、窓、ドア、屋根、階段などの部分で構成される建物または建物の一部が含まれます。
AutoCAD(AutoDeskのコア製品)では、描画プリミティブは線、ポリライン、ブロック、円、アーチ、吹き出し、テキストなどです。 AutoCADへの扉は、線で描いて、別のファイルに保存する必要がありました(再利用のため)。
オブジェクトのジオメトリが2Dと3D表現で異なる場合(または一般にビューの方向に依存する場合)、これらのオプションはすべて手動で描画して正しいものに配置する必要がありました。 最初の図面を見ると、オブジェクトの各表現を描くのがどれほど骨の折れる作業であるかを推測できます。
さらに、実際のタスクでは、図面が頻繁に変更されます。 たとえば、AutoCADを使用しているときに図面#1でウィンドウを移動する必要がある場合、2Dと3Dの両方の表現を同時に変更する必要があります。
プラン上でウィンドウを移動するには、ウィンドウ自体を移動し、その場所に壁を復元し、新しい壁に開口部を描く必要があります。 そして、3Dモデルについても同じことを行います。 さらにタイプがある場合は、各フォームで編集する必要があります。 このような変更により、種間で間違いや矛盾が生じやすくなります。
ACAは、アーキテクチャ設計を促進および加速する特別なツールとオブジェクトライブラリを実装しています。 AutoCAD Architectureでは、「ウィンドウ」と「壁」は関係と動作を持つオブジェクトです。 ウィンドウは、壁に取り付けられていることを「認識」し、壁はウィンドウの存在を認識します。 ウィンドウが移動すると、壁のジオメトリが自動的に変更され、新しいドアの位置に穴が作成され、古い位置の穴が削除されます。 壁が動くと、ドアは壁とともに動きます。 壁を削除すると、この壁にあったすべての窓とドアも削除されます。
描画モデルは1つです。 2次元の平面図ビューを作成するには、ビューを切り替えるだけです。 ビューを編集すると、モデル全体が編集されます。
このモデルに関連付けられているすべてのセクションとフロアプランは、モデルが変更されると自動的に更新されるため、建築図面のエラーや不整合の可能性が減り、作成が大幅にスピードアップします。
ACAオブジェクトは設計ドキュメントと通信します。 図面を変更すると、ドキュメントが自動的に変更され、エラーが回避されます。

ACAのプリミティブのタイプ
標準のAutoCADプリミティブに加えて、ACAには次の基本的なプリミティブがあります。
1)壁

2)ステンドグラスの窓(カーテンウォール)。 ステンドグラスの窓は、1つ以上のネットで構成されています。 ステンドグラスの窓の各グリッドは、水平または垂直にセルに分割されますが、最も単純なものから最も複雑なものまで、さまざまな組み合わせを得るために、グリッドをアタッチメントの方法で組み合わせることができます。

3)ドア、窓、開口部、ドアおよび窓アセンブリ(ドア、窓、開口部、DWA):

4)階段と手すり(階段と手すり):

5)屋根、天井、屋根の斜面(屋根、スラブ、屋根スラブ):

6)ベアリング要素(構造部材)。 耐荷重要素は、図面内の梁、ブレース、または柱になるオブジェクトです。 作成されたすべての梁、ブレース、および柱は、同じオブジェクト(ベアリング要素)のサブタイプです。

7)補助プリミティブ:ADポリゴン、質量要素、2Dプロファイル
ACAプリミティブとは何ですか?
ACAオブジェクトは、ACAイネーブラーと呼ばれる個別のライブラリのグループに実装されたAutoCADカスタムオブジェクトです。 ACAオブジェクトを保存およびロードするには、DWG形式が使用されますが、このようなオブジェクトを表示および操作するにはこれらのライブラリが必要です。
本質的に、ACAオブジェクトはC ++クラスです。 オブジェクトのジオメトリはレンダリング中に計算され、その設定に依存します(事前定義されていません)。
たとえば、次のスクリーンショットでは、幅、高さ、上昇、配置、スタイルなど、ダイアログボックスのドアのパラメーターを確認できます。 スクリーンショットのドアは幅と開き角度のみが異なりますが、これらのデータに基づいて、ジオメトリの違いは重要です。

ACAオブジェクトの主な機能
関係と詳細を詳しく調べることなく、ACAオブジェクトに関連する主な機能を検討します。
1. ACAオブジェクトには、外観(および部分的に動作)を定義するスタイルが割り当てられます。
2. ACAオブジェクトはビューポートに依存しています。 彼らは、さまざまなビューで自分自身のさまざまなビューを描きます。 表現とは、ジオメトリを意味します。 たとえば、アイソメ図の壁は通常、3Dモデルとしてレンダリングされ、上面では長方形としてレンダリングされます。
3. ACAオブジェクトのジオメトリは、個々のコンポーネントで構成されています。 オブジェクトの各表現には、独自のコンポーネントセットがあります。
オブジェクトの外観を定義するスタイルが割り当てられたACAオブジェクト
たとえば、2つのドアを次に示します。 壁に挿入してドキュメントに追加できるという意味でドアのように動作し、壁が移動すると移動します。 ただし、異なるスタイルが割り当てられているため、外観が異なります。

オブジェクトのスタイルは非常に複雑になる場合があります。 たとえば、以下もドア(および窓)です。

スタイルを作成する必要があるのは1回だけです。その後、このスタイルのドアをいくつでも追加できます。 スタイルを変更すると、このスタイルを持つすべてのドアが変更されます。
ACAフィーチャジオメトリはビューに依存します
次の図は、同じモデルを示しています。 ビューの変更のみ-カメラがオブジェクトを「見る」方向。 カメラの設定と方向に応じて、ACAオブジェクトは異なるジオメトリをレンダリングします。 各ビューのオブジェクトのジオメトリは、指定されたビューのロジックを反映しており、他のビューのジオメトリとは関係ありません。

AutoCADは各ビューを手動で描画する必要がありました。 さらに、建物内に複数のタイプのドアがある場合、すべてのユースケースでそれぞれを描画する必要がありました。
ACA Architectural Librariesには、広範囲の定義済みスタイルがすでに含まれています。 たとえば、次の図は、ライブラリのスタイルを持ついくつかのタイプのドアを示しています。

ACAフィーチャジオメトリはコンポーネントで構成されます
ACAオブジェクトのジオメトリは、いくつかの別個のコンポーネントで構成されています。 ジオメトリは通常、物理世界のロジックに従ってコンポーネントに分割されます。 したがって、ウィンドウコンポーネントは、フレーム、ガラス、サッシなどになります。
たとえば、3Dのドアを考えてみましょう。 塗装されたドアを構成するコンポーネントは、開いているリストに表示されます。 コンポーネントごとに、そのプロパティ(色、線の種類など)を変更したり、表示または非表示にすることができます。

さまざまな表現では、オブジェクトにはさまざまなコンポーネントがあります。 平面図(平面図)のドアは、異なるジオメトリを持ち、それに応じて、それを構成するコンポーネントの異なるセットを持っています。

ドキュメントオブジェクト
ASAでドキュメントを作成するための次のプリミティブが存在します。
•2Dセクション
•寸法
•スケジュールテーブル
•スペース
ドキュメンテーションオブジェクトは、アーキテクチャオブジェクトと連動するように設計されており、追加のロジックがあります。 例として、寸法線を考えます:

ACAディメンションを使用する場合、各オブジェクトのディメンションを手動で描画する必要はありません。 寸法オブジェクトを壁にアタッチすると、窓、ドア、開口部の寸法が自動的に設定されます。 開口部が移動すると、寸法線が自動的に再描画され、図面の現在の状態が反映されます。 壁を移動すると、寸法線は壁の後ろに自動的に移動します。 オブジェクトが削除されると、これらのオブジェクトに属する寸法線の一部も削除されます。
おわりに
上記では、ASAとその中の「プリミティブ」であるオブジェクトの表面的な考えを与えようとしました。 ACAの建築図面を使用すると、建物を低レベルのAutoCADプリミティブ(線、円、アーチなど)ではなく、壁、窓、ドア、屋根などの高レベルプリミティブを使用して描画できます。 モデルが作成されると、それに基づいて、ドキュメント、2Dプロジェクション、フロアプラン、セクションを自動的に生成できます。 オブジェクトに動作が存在すると、図面をさらに変更するタスクが容易になり、ドキュメントを最新の状態に維持できます。