app
Fusion - the Fusion 360 Bridge
Public Made by Adomby adom
Drive Autodesk Fusion 360 from the cloud via Adom Bridge: component libraries, IPC package generation, board layout, exports (STEP/Gerbers/BOM/CPL), fast APS cloud search, and parametric modeling.
master
Drew Owens
Share frozen native Rust mechanical development checkpoint and qualification scope
b2d7cdb
26d ago
Legacy sketch mapping
Read-only references, never executed:
../../exploded-preview-preparation/runtime-dev9-build-r1/source/addin/AdomBridge/commands/mechanical/sketches.py, SHA2561117e1e18d12ce3b4a92a20da43e4283d717f041ec4b05afdc64b5bb0984fe0c.- Adjacent
schema.json, SHA2566f704e05de031fa8ef329dc7be0b02d3a2b167eeb2fbc44ec6c2d933af4f7b48;sketch_geometryschema has eight variants, 1–128 items, 3–128 polygon sides, 2–128 spline points, mm coordinates and degree angles. - Adjacent
core.py::numberaccepts finite non-Boolean numeric values and optional positivity.test_mechanical_transactions.pyin the published-readback tests includes Boolean-radius schema refusal. No legacy Python test was run.
| Legacy behavior | Rust pure preparation | Remaining difference/gate |
|---|---|---|
point |
Two/three-number PointMm; mm/10, zero Z only for 2D |
New numeric range/underflow checks; no Point3D SDK allocation. |
| Point/line/circle branches | Typed point/line/center-radius instructions | Native creation, validity and readback absent; extra degeneracy/envelope checks. |
| Rectangle branch | Four ordered corners/lines, original PrimitiveKind::Rectangle retained |
Native addTwoPointRectangle ordering and helper constraints are not qualified by these coordinates. Explicit equal-Z guard. |
| Arc branch | Signed radians plus analytic Z-rotation endpoint | Native plane/projection semantics and measured endpoint absent; equal Z, finite envelope and noncollapsed chord required. |
| Polygon branch | Same circumradius, positive angular order and closed line chain | Angle bounded/reduced before trig; floating-point bits need not match Python; minimum edge length is stricter. |
| Slot branch | Left-perpendicular half-width, line/negative-half-turn/line/negative-half-turn order | Same Z tolerance and center distance threshold; stricter radius/envelope/representability rules; exact shared predicted endpoints. |
| Fitted spline branch | Preserve all ordered fit points and closed flag |
No solved spline is produced; stricter closed minimum and repeated-endpoint refusal. |
| Construction assignment | Curve Option<bool> preserved per generated entity |
No property setter; invalid point flag rejected at typed JSON boundary. |
| Complete geometry batch | All validation/expansion/output checks before returning a plan | Pure preparation is not legacy transaction grouping or rollback. |
quantity |
Numeric lengths used by these primitives only | Unit-bearing expressions, dimensional validation and evaluated ValueInput require Fusion UnitsManager; not approximated here. |
sketch_create, component, plane, axis, get_sketch, named |
No native equivalent | Exact SDK identity/ownership/validity and current revision checks are integration work. |
| Constraint/dimension/project/edit/plane handlers | Not implemented | Depend on selected native entities, current geometry, solver or units; this crate does not supply their SDK effects or claim complete sketch porting. |
The prepared JSON deliberately has no session, document, revision, guarded native selector, transaction or durable-effect fields. It is not a compatible replacement for a legacy request or result. Native integration and public exposure are later gates.
# Legacy sketch mapping
Read-only references, never executed:
- `../../exploded-preview-preparation/runtime-dev9-build-r1/source/addin/AdomBridge/commands/mechanical/sketches.py`, SHA256 `1117e1e18d12ce3b4a92a20da43e4283d717f041ec4b05afdc64b5bb0984fe0c`.
- Adjacent `schema.json`, SHA256 `6f704e05de031fa8ef329dc7be0b02d3a2b167eeb2fbc44ec6c2d933af4f7b48`; `sketch_geometry` schema has eight variants, 1–128 items, 3–128 polygon sides, 2–128 spline points, mm coordinates and degree angles.
- Adjacent `core.py::number` accepts finite non-Boolean numeric values and optional positivity. `test_mechanical_transactions.py` in the published-readback tests includes Boolean-radius schema refusal. No legacy Python test was run.
| Legacy behavior | Rust pure preparation | Remaining difference/gate |
| --- | --- | --- |
| `point` | Two/three-number `PointMm`; mm/10, zero Z only for 2D | New numeric range/underflow checks; no Point3D SDK allocation. |
| Point/line/circle branches | Typed point/line/center-radius instructions | Native creation, validity and readback absent; extra degeneracy/envelope checks. |
| Rectangle branch | Four ordered corners/lines, original `PrimitiveKind::Rectangle` retained | Native `addTwoPointRectangle` ordering and helper constraints are not qualified by these coordinates. Explicit equal-Z guard. |
| Arc branch | Signed radians plus analytic Z-rotation endpoint | Native plane/projection semantics and measured endpoint absent; equal Z, finite envelope and noncollapsed chord required. |
| Polygon branch | Same circumradius, positive angular order and closed line chain | Angle bounded/reduced before trig; floating-point bits need not match Python; minimum edge length is stricter. |
| Slot branch | Left-perpendicular half-width, line/negative-half-turn/line/negative-half-turn order | Same Z tolerance and center distance threshold; stricter radius/envelope/representability rules; exact shared predicted endpoints. |
| Fitted spline branch | Preserve all ordered fit points and `closed` flag | No solved spline is produced; stricter closed minimum and repeated-endpoint refusal. |
| Construction assignment | Curve `Option<bool>` preserved per generated entity | No property setter; invalid point flag rejected at typed JSON boundary. |
| Complete geometry batch | All validation/expansion/output checks before returning a plan | Pure preparation is not legacy transaction grouping or rollback. |
| `quantity` | Numeric lengths used by these primitives only | Unit-bearing expressions, dimensional validation and evaluated ValueInput require Fusion UnitsManager; not approximated here. |
| `sketch_create`, `component`, `plane`, `axis`, `get_sketch`, `named` | No native equivalent | Exact SDK identity/ownership/validity and current revision checks are integration work. |
| Constraint/dimension/project/edit/plane handlers | Not implemented | Depend on selected native entities, current geometry, solver or units; this crate does not supply their SDK effects or claim complete sketch porting. |
The prepared JSON deliberately has no session, document, revision, guarded native selector, transaction or durable-effect fields. It is not a compatible replacement for a legacy request or result. Native integration and public exposure are later gates.