* Move some sketch functions to KCL Signed-off-by: Nick Cameron <nrc@ncameron.org> * Move asserts to KCL Signed-off-by: Nick Cameron <nrc@ncameron.org> * sweep, loft -> KCL Signed-off-by: Nick Cameron <nrc@ncameron.org> * Move pattern transforms to KCL Signed-off-by: Nick Cameron <nrc@ncameron.org> --------- Signed-off-by: Nick Cameron <nrc@ncameron.org>
126 KiB
126 KiB
title, subtitle, excerpt, layout
title | subtitle | excerpt | layout |
---|---|---|---|
patternLinear2d | Function in std::sketch | manual |
patternLinear2d(
@sketches: [Sketch; 1+],
instances: number(_),
distance: number(Length),
axis: Axis2d | Point2d,
useOriginal?: bool,
): [Sketch; 1+]
Repeat a 2-dimensional sketch along some dimension, with a dynamic amount of distance between each repetition, some specified number of times.
Arguments
Name | Type | Description | Required |
---|---|---|---|
sketches |
[Sketch; 1+] |
The sketch(es) to duplicate. | Yes |
instances |
number(_) |
The number of total instances. Must be greater than or equal to 1. This includes the original entity. For example, if instances is 2, there will be two copies -- the original, and one new copy. If instances is 1, this has no effect. | Yes |
distance |
number(Length) |
Distance between each repetition. Also known as 'spacing'. | Yes |
axis |
Axis2d or Point2d |
The axis of the pattern. A 2D vector. | Yes |
useOriginal |
bool |
If the target was sketched on an extrusion, setting this will use the original sketch as the target, not the entire joined solid. | No |
Returns
Examples
/// Pattern using a named axis.
exampleSketch = startSketchOn(XZ)
|> circle(center = [0, 0], radius = 1)
|> patternLinear2d(
axis = X,
instances = 7,
distance = 4
)
example = extrude(exampleSketch, length = 1)
/// Pattern using a raw axis.
exampleSketch = startSketchOn(XZ)
|> circle(center = [0, 0], radius = 1)
|> patternLinear2d(
axis = [1, 0],
instances = 7,
distance = 4
)
example = extrude(exampleSketch, length = 1)