Closes https://github.com/KittyCAD/engine/issues/3494. Thanks to @nadr0 for helping on the JS side.
If users set their units, the grid will stop auto scaling, and instead will be set to 10 of whatever unit they used.
If users set their units, and those units are metric, then it'll include a scale bar (see screenshot). Imperial units won't have that bar.
This behaviour is configurable via settings.
## Limitations
- The scale bar below the grid cannot be disabled in metric units, and cannot be enabled in imperial units
<img width="1690" alt="Screenshot 2025-06-05 at 7 51 41 PM" src="https://github.com/user-attachments/assets/c597087c-f96d-4c30-95f4-b3d8ba2b5567" />
* Replace tag type with tagIdent and tagDecl
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Replace tagIdent with TaggedEdge and TaggedFace
Signed-off-by: Nick Cameron <nrc@ncameron.org>
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* the settings docs have a stutter with 2 h1s this fixes it
Signed-off-by: Jessie Frazelle <github@jessfraz.com>
* regenerate
Signed-off-by: Jessie Frazelle <github@jessfraz.com>
---------
Signed-off-by: Jessie Frazelle <github@jessfraz.com>
* Improve docs around PI
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Refactor and polish type error messages
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Add suggestion to fix unknown numbers error
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Don't warn so often about unknown units
Signed-off-by: Nick Cameron <nrc@ncameron.org>
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Shuffle around function call code
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Refactor function calls to share more code
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Hack to leave the result of revolve as a singleton rather than array
Signed-off-by: Nick Cameron <nrc@ncameron.org>
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Treat number as any rather than default
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Don't square root negative numbers
Signed-off-by: Nick Cameron <nrc@ncameron.org>
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Document the units of PI
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Add links between lang and std references
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Change signature of conversion functions
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Split foreign imports out of modules docs
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* More docs for Plane
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Update docs/kcl-std/consts/std-math-PI.md
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
* Update rust/kcl-lib/std/math.kcl
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>
Co-authored-by: Jess Frazelle <jessfraz@users.noreply.github.com>
Co-authored-by: graphite-app[bot] <96075541+graphite-app[bot]@users.noreply.github.com>
* Add documentation to modules, and some constants and types
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Improve the language reference
Signed-off-by: Nick Cameron <nrc@ncameron.org>
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Fix various docs errors around std module
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* remove KCL from lang docs titles and move settings docs
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Include functions declared in Rust in module docs
Signed-off-by: Nick Cameron <nrc@ncameron.org>
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* Support modules in docs
Signed-off-by: Nick Cameron <nrc@ncameron.org>
* shuffle around directories
Signed-off-by: Nick Cameron <nrc@ncameron.org>
---------
Signed-off-by: Nick Cameron <nrc@ncameron.org>