cancel
Element
Element functions can be customized with set
and show
rules.
set
and show
rules.Displays a diagonal line over a part of an equation.
This is commonly used to show the elimination of a term.
Example
Here, we can simplify:
$ (a dot b dot cancel(x)) /
cancel(x) $
Parameters
Parameters are the inputs to a function. They are specified in parentheses after the function name.
body
The content over which the line should be placed.
length
Settable
Settable parameters can be customized for all following uses of the function with a set
rule.
set
rule.The length of the line, relative to the length of the diagonal spanning
the whole element being "cancelled". A value of 100%
would then have
the line span precisely the element's diagonal.
Default:100% + 3pt
View example
$ a + cancel(x, length: #200%)
- cancel(x, length: #200%) $
inverted
Settable
Settable parameters can be customized for all following uses of the function with a set
rule.
set
rule.Whether the cancel line should be inverted (flipped along the y-axis). For the default angle setting, inverted means the cancel line points to the top left instead of top right.
Default:false
View example
$ (a cancel((b + c), inverted: #true)) /
cancel(b + c, inverted: #true) $
cross
Settable
Settable parameters can be customized for all following uses of the function with a set
rule.
set
rule.Whether two opposing cancel lines should be drawn, forming a cross over
the element. Overrides inverted
.
Default:false
View example
$ cancel(Pi, cross: #true) $
angle
How much to rotate the cancel line.
- If given an angle, the line is rotated by that angle clockwise with respect to the y-axis.
- If
auto
, the line assumes the default angle; that is, along the rising diagonal of the content box. - If given a function
angle => angle
, the line is rotated, with respect to the y-axis, by the angle returned by that function. The function receives the default angle as its input.
Default:auto
View example
$ cancel(Pi)
cancel(Pi, angle: #0deg)
cancel(Pi, angle: #45deg)
cancel(Pi, angle: #90deg)
cancel(1/(1+x), angle: #(a => a + 45deg))
cancel(1/(1+x), angle: #(a => a + 90deg)) $
stroke
How to stroke the cancel line.
Default:0.5pt
View example
$ cancel(
sum x,
stroke: #(
paint: red,
thickness: 1.5pt,
dash: "dashed",
),
) $