Editor/Floor/ArchFloorDrawers.cs

Two editor drawer classes for architectural floors. ArchStoreyDrawer draws a storey by calling ArchFloorGen.Storey with canvas, drawn floor group, containing building, plan, kit and style. ArchFoundationDrawer draws foundations by calling ArchFloorGen.Foundation with similar parameters in a different order.

Reflection
namespace Sunless.Architecture;

public sealed class ArchStoreyDrawer : IArchDrawer
{
	public string Draws => ArchDraws.Storey;

	public void Draw( ArchDrawing drawing )
	{
		ArchFloorGen.Storey( drawing.Canvas, drawing.Drawn<ArchFloorGroup>(), drawing.Within<ArchBuilding>(),
			drawing.Plan, drawing.Kit, drawing.Style );
	}
}

public sealed class ArchFoundationDrawer : IArchDrawer
{
	public string Draws => ArchDraws.Foundation;

	public void Draw( ArchDrawing drawing )
	{
		ArchFloorGen.Foundation( drawing.Canvas, drawing.Drawn<ArchFloorGroup>(), drawing.Within<ArchBuilding>(),
			drawing.Kit, drawing.Style, drawing.Plan );
	}
}