## The StairCase Macro

The StairCase macro adds a staircase, or parts of a staircase, to a scene file. Control variables are used to control the path that the staircase follows and the components that are incorporated into the scene file. The following major components are included by default but can be suppressed by setting the appropriate control variable.

Major Component | Control Variable |
Stairs | SCStairsOn | Comprised of Risers and Treads.
Main Banister | SCMainBanisterOn | Comprised of Newel Posts, Balusters, Hand Rail, Toe Rail and Stringer.
Paired Banister | SCPairedBanisterOn | Comprised of Newel Posts, Balusters, Hand Rail, Toe Rail and Stringer.
Landings | SCLandingsOn | Comprised of Flooring with optional carpet.
Carpeting | SCStairCarpetOn

The StairCase macro can be used to produce a single flight of stairs or a more complex structure with multiple flights of stairs connected together with landings. The path that the staircase follows is based upon the positions of newel posts as specified in the SCPostPositions control variable. The control variables used to control this macro are described with examples in the Variables Reference section of this document.

The StairCase macro is contained within the staircase.inc file along with sufficient default object definitions to generate the default staircase.

All of the control variables have default settings to enable the StairCase macro to be used by POV-Ray users without much experience.

The StairCase macro does not accept any parameters.

## The BannisterGen Macro

This macro is used by the StairCase macro to define the banister rail that connects two newel posts. Certain variables must be set before this macro is called. This macro is not intended to be called directly from a scene file.

## The SCNewelShape Macro

This macro can be used to define a newel post based upon the definitions held in the samples.inc file. The use of this macro is illustrated in the description for the use of the SCNewelPost variable.

## The SCBalusterShape Macro

This macro can be used to define define a baluster based upon the definitions held in the samples.inc file. The use of this macro is illustrated in the description for the use of the SCBaluster variable.