check
Detect interference, clearance, contact, alignment, and motion issues between parts in OpenSCAD assemblies, returning precise measurements and witness points.
Instructions
Relations between named parts, exported separately (never unioned), cached, in the assembly frame. parts=[{name, code, place?, frame?, ghost?, mass_g?, motion?}] (code "lid();", place "translate(P)") or check_file= (YAML/JSON: frames, quality, parts, checks, model). mode "interference": clear|contact|interference with penetration depth and witness point (flush contact is contact). "clearance": exact minimum distance, closest points, min_mm. "contact": area, normal, plane; kind=static|sliding. "alignment": coaxial hole stacks across parts, offsets, orphans. "motion": sweep moving= about axis/center over range deg, or along vector over range mm; full turns add a certificate. "rules": every rule in the check file; exit_code 0/1/2. Any number or vector in a rule or motion may be a SCAD expression string ("[BOLT_R, 0, BASE_H]") evaluated in the model's scope. quality: draft|normal|high or $fn, echoed per row; distances inside the tessellation error bound are UNRESOLVED. volume=true cross-checks with OpenSCAD's intersection volume.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| axis | No | ||
| kind | No | ||
| mode | No | interference | |
| pairs | No | all | |
| parts | No | ||
| range | No | ||
| steps | No | ||
| center | No | ||
| checks | No | ||
| frames | No | ||
| min_mm | No | ||
| moving | No | ||
| vector | No | ||
| volume | No | ||
| against | No | all | |
| quality | No | ||
| scad_file | No | ||
| variables | No | ||
| check_file | No | ||
| scad_content | No | ||
| tolerance_mm | No | ||
| include_paths | No | ||
| response_format | No | concise |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||