PITCHMARK measures the slope of a line and draws the standard pitch triangle beside it: a small right-angled triangle whose hypotenuse lies parallel to the roof, with the run written along the horizontal leg and the rise along the vertical one.
What PitchMark does
It can also report the same slope as an angle in degrees, as a percentage grade, or as a ratio — the four ways a slope gets called up depending on whether you are drawing a roof, a ramp, a road or a drain.
Rise-per-run convention. Imperial roof pitch is quoted as rise per 12 of run, so the run label reads 12 and the rise is whatever the slope gives against it. Metric practice quotes a run of 100 or a plain angle, both available from the Format option.
How to use it
- Load the routine with
APPLOAD, or put it on your support file search path. - Type
PITCHMARK. - Select a sloping line, or pick two points along the slope.
- Choose the format — rise per 12, rise per 100, degrees, grade or ratio.
- Pick which side of the line the symbol sits on.
How it works
The slope is always taken as positive. A roof falling to the left has the same pitch as one falling to the right, and the symbol is mirrored rather than signed.
A perfectly vertical line has no defined pitch and is rejected. A perfectly horizontal one has a pitch of zero, which is reported rather than drawn — a zero-height triangle is not a symbol.
The triangle is built at the near end of the line and then shifted bodily perpendicular, toward the side you picked, by a small gap. That way the symbol never lands on top of the roof line itself.
Everything is sized from the dimension variables. The horizontal leg defaults to DIMDLI × DIMSCALE, text height from DIMTXT × DIMSCALE, and the standoff gap from DIMGAP × DIMSCALE — so the symbol looks like it belongs with the dimensions already on the sheet. Override the leg once and the new size is remembered for the session.
The triangle is drawn as a single closed polyline, so it selects, moves and erases as one object.
Notes and limits
- Vertical lines are rejected, horizontal ones reported rather than drawn.
- Pick the side deliberately — the symbol offsets perpendicular to the roof, not to the screen.
- Sizes come from your dimension variables, so check
DIMSCALEis right first. - One undo group covers the symbol.
Download and details
| Name | PitchMark — measure a slope and draw the pitch triangle |
| Download | PitchMark.lsp — 13.5 KB, plain AutoLISP source. Downloads directly; no zip to unpack. |
| Type | AutoCAD AutoLISP routine |
| Command | PITCHMARK |
| Requires | nothing beyond a CAD platform with AutoLISP. |
| Source size | 13.5 KB, 309 lines |
| Error handling | Yes — a *error* handler restores every system variable it changed, on cancel as well as on error. |
| Undo | The whole operation is wrapped in a single undo group, so one U reverses all of it. |
| Compatibility | AutoCAD (any release with AutoLISP), BricsCAD, ZWCAD, GstarCAD, ProgeCAD and other IntelliCAD-based platforms. AutoCAD LT needs a LISP enabler. No .NET, no ObjectARX, no installer. |
| Author | YZ, August 2026 |
| Licence | Free to use, supplied “as is” with no warranty. |
References
- ROOFPITCH LISP — working with roof slopes directly
- HOUSESHELL LISP — the roof this measures
- RISERUN LISP — dimensioning the X and Y components of a run
- More free AutoLISP routines on this site
- Wisey’s Steel Shapes — free structural steel section drawing program