docs: Add better docs for tolerance parameter (#7548)

* Add better docs for tolerance parameter

* Update generated docs
This commit is contained in:
Jonathan Tran
2025-06-20 11:42:14 -04:00
committed by GitHub
parent 24edb66b3c
commit 5f2a10ec7e
16 changed files with 30 additions and 30 deletions

View File

@ -9,7 +9,7 @@ use kittycad_modeling_cmds::{
websocket::OkWebSocketResponseData,
};
use super::{args::TyF64, DEFAULT_TOLERANCE};
use super::{args::TyF64, DEFAULT_TOLERANCE_MM};
use crate::{
errors::{KclError, KclErrorDetails},
execution::{types::RuntimeType, ExecState, KclValue, ModelingCmdMeta, Solid},
@ -57,7 +57,7 @@ pub(crate) async fn inner_union(
ModelingCmdMeta::from_args_id(&args, solid_out_id),
ModelingCmd::from(mcmd::BooleanUnion {
solid_ids: solids.iter().map(|s| s.id).collect(),
tolerance: LengthUnit(tolerance.map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE)),
tolerance: LengthUnit(tolerance.map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE_MM)),
}),
)
.await?;
@ -122,7 +122,7 @@ pub(crate) async fn inner_intersect(
ModelingCmdMeta::from_args_id(&args, solid_out_id),
ModelingCmd::from(mcmd::BooleanIntersection {
solid_ids: solids.iter().map(|s| s.id).collect(),
tolerance: LengthUnit(tolerance.map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE)),
tolerance: LengthUnit(tolerance.map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE_MM)),
}),
)
.await?;
@ -186,7 +186,7 @@ pub(crate) async fn inner_subtract(
ModelingCmd::from(mcmd::BooleanSubtract {
target_ids: solids.iter().map(|s| s.id).collect(),
tool_ids: tools.iter().map(|s| s.id).collect(),
tolerance: LengthUnit(tolerance.map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE)),
tolerance: LengthUnit(tolerance.map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE_MM)),
}),
)
.await?;

View File

@ -18,7 +18,7 @@ use kittycad_modeling_cmds::{
};
use uuid::Uuid;
use super::{args::TyF64, utils::point_to_mm, DEFAULT_TOLERANCE};
use super::{args::TyF64, utils::point_to_mm, DEFAULT_TOLERANCE_MM};
use crate::{
errors::{KclError, KclErrorDetails},
execution::{
@ -79,7 +79,7 @@ async fn inner_extrude(
) -> Result<Vec<Solid>, KclError> {
// Extrude the element(s).
let mut solids = Vec::new();
let tolerance = LengthUnit(tolerance.as_ref().map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE));
let tolerance = LengthUnit(tolerance.as_ref().map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE_MM));
if symmetric.unwrap_or(false) && bidirectional_length.is_some() {
return Err(KclError::new_semantic(KclErrorDetails::new(

View File

@ -6,7 +6,7 @@ use kcmc::{each_cmd as mcmd, length_unit::LengthUnit, shared::CutType, ModelingC
use kittycad_modeling_cmds as kcmc;
use serde::{Deserialize, Serialize};
use super::{args::TyF64, DEFAULT_TOLERANCE};
use super::{args::TyF64, DEFAULT_TOLERANCE_MM};
use crate::{
errors::{KclError, KclErrorDetails},
execution::{
@ -122,7 +122,7 @@ async fn inner_fillet(
strategy: Default::default(),
object_id: solid.id,
radius: LengthUnit(radius.to_mm()),
tolerance: LengthUnit(tolerance.as_ref().map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE)),
tolerance: LengthUnit(tolerance.as_ref().map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE_MM)),
cut_type: CutType::Fillet,
}),
)

View File

@ -6,7 +6,7 @@ use anyhow::Result;
use kcmc::{each_cmd as mcmd, length_unit::LengthUnit, ModelingCmd};
use kittycad_modeling_cmds as kcmc;
use super::{args::TyF64, DEFAULT_TOLERANCE};
use super::{args::TyF64, DEFAULT_TOLERANCE_MM};
use crate::{
errors::{KclError, KclErrorDetails},
execution::{
@ -84,7 +84,7 @@ async fn inner_loft(
section_ids: sketches.iter().map(|group| group.id).collect(),
base_curve_index,
bez_approximate_rational,
tolerance: LengthUnit(tolerance.as_ref().map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE)),
tolerance: LengthUnit(tolerance.as_ref().map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE_MM)),
v_degree,
}),
)

View File

@ -442,5 +442,5 @@ pub(crate) fn std_ty(path: &str, fn_name: &str) -> (PrimitiveType, StdFnProps) {
}
}
/// The default tolerance for modeling commands in [`kittycad_modeling_cmds::length_unit::LengthUnit`].
const DEFAULT_TOLERANCE: f64 = 0.0000001;
/// The default tolerance for modeling commands in millimeters.
const DEFAULT_TOLERANCE_MM: f64 = 0.0000001;

View File

@ -9,7 +9,7 @@ use kcmc::{
};
use kittycad_modeling_cmds::{self as kcmc, shared::Point3d};
use super::{args::TyF64, DEFAULT_TOLERANCE};
use super::{args::TyF64, DEFAULT_TOLERANCE_MM};
use crate::{
errors::{KclError, KclErrorDetails},
execution::{
@ -133,7 +133,7 @@ async fn inner_revolve(
let mut solids = Vec::new();
for sketch in &sketches {
let id = exec_state.next_uuid();
let tolerance = tolerance.as_ref().map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE);
let tolerance = tolerance.as_ref().map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE_MM);
let direction = match &axis {
Axis2dOrEdgeReference::Axis { direction, origin } => {

View File

@ -6,7 +6,7 @@ use kittycad_modeling_cmds::{self as kcmc, shared::RelativeTo};
use schemars::JsonSchema;
use serde::Serialize;
use super::{args::TyF64, DEFAULT_TOLERANCE};
use super::{args::TyF64, DEFAULT_TOLERANCE_MM};
use crate::{
errors::KclError,
execution::{
@ -93,7 +93,7 @@ async fn inner_sweep(
target: sketch.id.into(),
trajectory,
sectional: sectional.unwrap_or(false),
tolerance: LengthUnit(tolerance.as_ref().map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE)),
tolerance: LengthUnit(tolerance.as_ref().map(|t| t.to_mm()).unwrap_or(DEFAULT_TOLERANCE_MM)),
relative_to,
}),
)