path
Element
Element functions can be customized with set
and show
rules.
set
and show
rules.A path through a list of points, connected by Bezier curves.
Example
#path(
fill: blue.lighten(80%),
stroke: blue,
closed: true,
(0pt, 50pt),
(100%, 50pt),
((50%, 0pt), (40pt, 0pt)),
)
Parameters
Parameters are the inputs to a function. They are specified in parentheses after the function name.
fill
How to fill the path.
When setting a fill, the default stroke disappears. To create a rectangle with both fill and stroke, you have to configure both.
Default:none
fill-rule
Settable
Settable parameters can be customized for all following uses of the function with a set
rule.
set
rule.The drawing rule used to fill the path.
-
"non-zero"
Specifies that "inside" is computed by a non-zero sum of signed edge crossings.
-
"even-odd"
Specifies that "inside" is computed by an odd number of edge crossings.
Default:"non-zero"
View example
// We use `.with` to get a new
// function that has the common
// arguments pre-applied.
#let star = path.with(
fill: red,
closed: true,
(25pt, 0pt),
(10pt, 50pt),
(50pt, 20pt),
(0pt, 20pt),
(40pt, 50pt),
)
#star(fill-rule: "non-zero")
#star(fill-rule: "even-odd")
stroke
How to stroke the path. This can be:
Can be set to none
to disable the stroke or to auto
for a
stroke of 1pt
black if and if only if no fill is given.
Default:auto
closed
Settable
Settable parameters can be customized for all following uses of the function with a set
rule.
set
rule.Whether to close this path with one last bezier curve. This curve will takes into account the adjacent control points. If you want to close with a straight line, simply add one last point that's the same as the start point.
Default:false
vertices
RequiredPositional
Positional parameters are specified in order, without names.
Variadic
Variadic parameters can be specified multiple times.
The vertices of the path.
Each vertex can be defined in 3 ways:
- A regular point, as given to the
line
orpolygon
function. - An array of two points, the first being the vertex and the second being the control point. The control point is expressed relative to the vertex and is mirrored to get the second control point. The given control point is the one that affects the curve coming into this vertex (even for the first point). The mirrored control point affects the curve going out of this vertex.
- An array of three points, the first being the vertex and the next being the control points (control point for curves coming in and out, respectively).