CorridorSurfaceCollection オブジェクトで、Add() メソッドを使用して、新しい空の CorridorSurface を追加することができます。このメソッドには、新しい CorridorSurface の名前を指定する文字列と、サーフェスに適用する CorridorSurfaceStyle の StyleID (省略可能)を指定します。
CorridorSurfaces は、CorridorSurfaceCollection から Remove() または RemoveAt() メソッドを使用して削除することができます。 Remove() には、CorridorSurface の名前を指定する文字列、または CorridorSurface オブジェクト自身を指定します。RemoveAt() には、CorridorSurfaceCollection 内の削除する CorridorSurface オブジェクトのインデックスを指定する整数を指定します。
この例では、新しい CorridorSurface を作成し、指定したコリドーの CorridorSurfaces コレクションに追加します。
// prompt for the target corridor name: String corridorName = _editor.GetString("Enter a corridor name:").StringResult; // Get the corridor ObjectId corridorId = _civilDoc.CorridorCollection[corridorName]; Corridor corridor = ts.GetObject(corridorId, OpenMode.ForWrite) as Corridor; // Get a surface style to use for the new corridor surface: ObjectId surfaceStyleId = _civilDoc.Styles.SurfaceStyles[0]; CorridorSurface corridorSurface = corridor.CorridorSurfaces.Add("New Example Corridor Surface", surfaceStyleId); // Corridor will now be out-of-date: _editor.WriteMessage("Corridor is out of date: {0}", corridor.IsOutOfDate); // You can re-build, although this won't do anything in this case, since // the new surface is empty: corridor.Rebuild(); // Remove the new surface: corridor.CorridorSurfaces.Remove(corridorSurface); ts.Commit();