前のセクションにあったように、2 つの接続の間には新しい配管やダクトを作成できます。接続はドメイン(ダクト、配管、コネクタ)に関連付けられます。ドメインは接続の Domain プロパティから取得できます。接続は、機械設備の他、ダクトや配管にあります。
システムを移動するために、システムのベース設備の接続を調べ、IsConnected プロパティと AllRefs プロパティを確認して、接続にアタッチされているものを確認します。物理的な接続を探す場合は、接続の ConnectionType を確認することが重要です。Revit には物理接続と論理接続の両方がありますが、アプリケーションに表示されるのは物理接続のみです。次の図は、終点接合と曲線接続の 2 つのタイプの物理接続を表しています。
図 167: 物理接続
次の例は、接続の所有者、アタッチ先、接続タイプを確認する方法を説明しています。
|
コード領域 30-5: 接続にアタッチされているものを確認 |
public void GetElementAtConnector(Connector connector)
{
MEPSystem mepSystem = connector.MEPSystem;
if (null != mepSystem)
{
string message = "Connector is owned by: " + connector.Owner.Name;
if (connector.IsConnected == true)
{
ConnectorSet connectorSet = connector.AllRefs;
ConnectorSetIterator csi = connectorSet.ForwardIterator();
while (csi.MoveNext())
{
Connector connected = csi.Current as Connector;
if (null != connected)
{
// look for physical connections
if (connected.ConnectorType == ConnectorType.EndConn ||
connected.ConnectorType == ConnectorType.CurveConn ||
connected.ConnectorType == ConnectorType.PhysicalConn)
{
message += "\nConnector is connected to: " + connected.Owner.Name;
message += "\nConnection type is: " + connected.ConnectorType;
}
}
}
}
else
{
message += "\nConnector is not connected to anything.";
}
MessageBox.Show(message, "Revit");
}
}
|
次のダイアログ ボックスは、機械設備の接続でこのコード サンプルを実行したときの結果です。
図 168: 接続情報