An editor-side drawer for arch roofs. It implements IArchDrawer and delegates roof generation to ArchRoofGen.Build, passing the canvas, collected roof parts, parent building, plan, kit, style, and a list of gutter run paths.
using System.Collections.Generic;
namespace Sunless.Architecture;
// The gutter runs are collected into the list the builder hands in, because the channel is drawn beside the
// roof rather than inside it. No list means the building has its gutters turned off.
public sealed class ArchRoofDrawer : IArchDrawer
{
public string Draws => ArchDraws.Roof;
public void Draw( ArchDrawing drawing )
{
ArchRoofGen.Build( drawing.Canvas, drawing.Drawn<ArchRoofPart>(), drawing.Within<ArchBuilding>(),
drawing.Plan, drawing.Kit, drawing.Style, drawing.Within<List<ArchRunPath>>() );
}
}