Autodesk.Revit.DB.Architecture.Railing クラスは Autodesk Revit プロジェクトの手すり要素を表します。手すりは階段に関連付けられていますが、床などの別のホストに関連付けたり、スペースに配置できます。手すりは連続または非連続にすることができます。非連続の場合は、アクセス権のレベルは制限されます。
階段に関連付けられている手すりは GetAssociatedRailings()メソッドを使用して Stairs クラスから取得できます。上部手すりの ElementId を返す TopRail プロパティや手すりがフリップされた場合に表示する Flipped など、手すりに特有なプロパティとメソッドは数個だけです。Railing.Flip()メソッドは手すりをフリップし、RemoveHost()メソッドは、手すりとそのホスト間の関連付けを削除します。
次の例では、Stairs オブジェクトに関連付けられたすべての手すりを取得して、システムが生成した既定のレールである各手すりをフリップします。
|
コード領域: Railing を使用して作業 |
private void FlipDefaultRailings(Stairs stairs)
{
ICollection<ElementId> railingIds = stairs.GetAssociatedRailings();
Transaction trans = new Transaction(stairs.Document, "Flip Railings");
trans.Start();
foreach (ElementId railingId in railingIds)
{
Railing railing = stairs.Document.GetElement(railingId) as Railing;
if (railing.IsDefault == true)
{
railing.Flip();
}
}
trans.Commit();
}
|
Railing クラスには、階段要素のすべての面で指定された手すりタイプを使用して、新しい手すりを自動的に作成する Create メソッドがあります。Railing の作成は、「階段を作成、編集する」セクションで説明されています。
RailingType クラスは、手すりの生成に使用される手すりのタイプを表します。高さ、側面オフセット、主補助手すりおよび副補助手すりのタイプ、上部手すりなど、手すりには多くのプロパティが含まれています。
|
コード領域: RailingType |
private void GetRailingType(Stairs stairs)
{
ICollection<ElementId> railingIds = stairs.GetAssociatedRailings();
foreach (ElementId railingId in railingIds)
{
Railing railing = stairs.Document.GetElement(railingId) as Railing;
RailingType railingType = stairs.Document.GetElement(railing.GetTypeId()) as RailingType;
// Format railing type info for display
string info = "Railing Type: " + railingType.Name;
info += "\nPrimary Handrail Height: " + railingType.PrimaryHandrailHeight;
info += "\nTop Rail Height: " + railingType.TopRailHeight;
TaskDialog.Show("Revit", info);
}
}
|