* Give a warning when using per-project default units Signed-off-by: Nick Cameron <nrc@ncameron.org> * Factor non-settings out of MetaSettings Signed-off-by: Nick Cameron <nrc@ncameron.org> * Fix formatting * Fix code pane e2e test * Fix callstack blowup in edit flow * Avoid dumb timeout issue with command registration in test * Use a safer way to wait for modeling command registration in test --------- Signed-off-by: Nick Cameron <nrc@ncameron.org> Co-authored-by: Nick Cameron <nrc@ncameron.org> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Pierre Jacquier <pierre@zoo.dev> Co-authored-by: Frank Noirot <frankjohnson1993@gmail.com>
98 lines
2.3 KiB
Plaintext
98 lines
2.3 KiB
Plaintext
@no_std
|
||
@settings(defaultLengthUnit = mm)
|
||
|
||
/// The value of `pi`, Archimedes’ constant (π).
|
||
///
|
||
/// ```
|
||
/// circumference = 70
|
||
///
|
||
/// exampleSketch = startSketchOn(XZ)
|
||
/// |> circle(center = [0, 0], radius = circumference/ (2 * PI))
|
||
///
|
||
/// example = extrude(exampleSketch, length = 5)
|
||
/// ```
|
||
export PI = 3.14159265358979323846264338327950288_
|
||
|
||
/// The value of Euler’s number `e`.
|
||
///
|
||
/// ```
|
||
/// exampleSketch = startSketchOn(XZ)
|
||
/// |> startProfileAt([0, 0], %)
|
||
/// |> angledLine({
|
||
/// angle = 30,
|
||
/// length = 2 * E ^ 2,
|
||
/// }, %)
|
||
/// |> yLine(endAbsolute = 0)
|
||
/// |> close()
|
||
///
|
||
/// example = extrude(exampleSketch, length = 10)
|
||
/// ```
|
||
export E = 2.71828182845904523536028747135266250_
|
||
|
||
/// The value of `tau`, the full circle constant (τ). Equal to 2π.
|
||
///
|
||
/// ```
|
||
/// exampleSketch = startSketchOn(XZ)
|
||
/// |> startProfileAt([0, 0], %)
|
||
/// |> angledLine({
|
||
/// angle = 50,
|
||
/// length = 10 * TAU,
|
||
/// }, %)
|
||
/// |> yLine(endAbsolute = 0)
|
||
/// |> close()
|
||
///
|
||
/// example = extrude(exampleSketch, length = 5)
|
||
/// ```
|
||
export TAU = 6.28318530717958647692528676655900577_
|
||
|
||
/// Compute the cosine of a number (in radians).
|
||
///
|
||
/// ```
|
||
/// exampleSketch = startSketchOn(XZ)
|
||
/// |> startProfileAt([0, 0], %)
|
||
/// |> angledLine({
|
||
/// angle = 30,
|
||
/// length = 3 / cos(toRadians(30)),
|
||
/// }, %)
|
||
/// |> yLine(endAbsolute = 0)
|
||
/// |> close()
|
||
///
|
||
/// example = extrude(exampleSketch, length = 5)
|
||
/// ```
|
||
@(impl = std_rust)
|
||
export fn cos(@num: number(rad)): number(_) {}
|
||
|
||
/// Compute the sine of a number (in radians).
|
||
///
|
||
/// ```
|
||
/// exampleSketch = startSketchOn(XZ)
|
||
/// |> startProfileAt([0, 0], %)
|
||
/// |> angledLine({
|
||
/// angle = 50,
|
||
/// length = 15 / sin(toDegrees(135)),
|
||
/// }, %)
|
||
/// |> yLine(endAbsolute = 0)
|
||
/// |> close()
|
||
///
|
||
/// example = extrude(exampleSketch, length = 5)
|
||
/// ```
|
||
@(impl = std_rust)
|
||
export fn sin(@num: number(rad)): number(_) {}
|
||
|
||
/// Compute the tangent of a number (in radians).
|
||
///
|
||
/// ```
|
||
/// exampleSketch = startSketchOn(XZ)
|
||
/// |> startProfileAt([0, 0], %)
|
||
/// |> angledLine({
|
||
/// angle = 50,
|
||
/// length = 50 * tan(1/2),
|
||
/// }, %)
|
||
/// |> yLine(endAbsolute = 0)
|
||
/// |> close()
|
||
///
|
||
/// example = extrude(exampleSketch, length = 5)
|
||
/// ```
|
||
@(impl = std_rust)
|
||
export fn tan(@num: number(rad)): number(_) {}
|