Commit Graph

  • 178fc47ed7 Custom title bar: on Windows and Linux the application bar is the window's title bar (drag to move with OS snapping, double-click to maximize or restore, minimize/maximize/close buttons, resize from the edges and corners); macOS keeps its traffic lights over the bar; the web build has no window buttons; ui.window control method (adapted from VectorCraft) bherbruckandClaude Opus 5.5 2026-10-08 03:54:15 +00:00
  • e5560e8035 Sheet metal: rules as expressions (Thickness, K-factor, bend radius, reliefs, gaps; may use parameters), sheet bodies kept as flat patterns and sewn folded from exact faces (new kernel::sew), Flange (base, edge with height to the outer face, angle, inside/outside/middle, several edges at once with corners closed to the rule gap, contour from an open chain), Hem, Unfold/Refold with cut-outs that follow the bends, Convert to Sheet Metal, flat pattern with bend lines and bend table, DXF export; recipes: sm_flange, sm_hem, unfold/refold, rule edits (oracle 67-76 all pass) bherbruckandClaude Opus 5.5 2026-10-08 03:50:06 +00:00
  • df64a373b0 Sketch links: body-based references (edges, faces, silhouettes, sections, iso curves) are cached by model identity, so editing a sketch with projections no longer re-projects (30x faster per edit on a 20k-triangle model) bherbruckandClaude Opus 5.5 2026-10-08 04:11:06 +00:00
  • 7ca6e9278b Loop blends: sharp corners between straight edges meet in mitres (ellipse arcs), arcs of exactly the blend's radius become sphere octants (pole-free), and loops plus the other edges blend in order (every edge of an extruded part: sphere and torus corners) bherbruckandClaude Opus 5.5 2026-10-08 03:50:00 +00:00
  • 457ed7fed7 Offset works on splines, ellipses and conics (and chains through them): the offset curve becomes a fit spline within a few hundredths of a millimetre bherbruckandClaude Opus 5.5 2026-10-08 03:55:48 +00:00
  • 205ddfcf27 Sketch Fillet on corners of a line and an arc or two arcs (the tangent arc nearest the corner, curves cut back to it, radius dimension) bherbruckandClaude Opus 5.5 2026-10-08 03:43:57 +00:00
  • 9a9caa6511 Browser tree: components with an activation radio (others drawn faded), ground pin, groups in Bodies/Sketches/Construction (new, from selection, rename, ungroup, kept in the design: browser.group/ungroup/rename_group/move/order), drag and drop to reorder, into and out of groups and into another component, Ctrl/Shift multi-select, hover lights the bodies, folds remembered; occurrence Move/Copy with a gizmo and Capture Position/Revert; the viewport shows bodies where their occurrences place them bherbruckandClaude Opus 5.5 2026-10-08 02:11:36 +00:00
  • 7e373ff1f7 Draft of walls between caps on non-convex bodies: planes tilt about their neutral-plane line, cylinders become cones (47: drafted round-ended pocket) bherbruckandClaude Opus 5.5 2026-10-08 03:29:15 +00:00
  • 94a0cdef77 Ellipse dimensions: major radius (type major: centre to axis end) and minor radius (a radius dimension on the ellipse) bherbruckandClaude Opus 5.5 2026-10-08 03:34:01 +00:00
  • 59685a9180 Shell and offset faces on bodies of planes and cylinders (filleted boxes, bosses: each face moves along its normal, cylinders change radius, corners and arcs follow); surface classification leaves out singular points (cone apexes); recipes: holes on cylinders drill toward the axis bherbruckandClaude Opus 5.5 2026-10-08 03:18:16 +00:00
  • d285cedd73 Trim and Break on ellipses, splines and conics: cut at the exact crossings (alternating projection onto both curves), pieces stay exact (Bézier spans as single-span control splines, conic arcs as conics); geom Seg2::split_at and closest_param bherbruckandClaude Opus 5.5 2026-10-08 03:23:40 +00:00
  • 097217a3f3 Sketch drawing: points dropped on a curve stay on it ("on:<curve>:x,y" point arguments add a point-on-curve constraint; On hint while drawing) bherbruckandClaude Opus 5.5 2026-10-08 03:12:36 +00:00
  • a6dc759a02 Fix: rectangles over-constrained after an edit (dragged sides collapsed) bherbruckandClaude Opus 5.5 2026-10-08 02:46:35 +00:00
  • c2309eb43b Joints engine: joint origins that snap to faces, round ends or points (re-found on every solve, so joints follow edits), joints (rigid, revolute, slider, cylindrical, pin-slot, planar, ball) with values, limits, flip and offset, As-built Joint, Rigid Group, Drive Joints, Motion Link, a joint-graph solver from grounded occurrences (degrees of freedom per occurrence, loop conflicts reported), Interference between bodies bherbruckandClaude Opus 5.5 2026-10-08 02:39:16 +00:00
  • 13b72bb011 Sketch drawing: clicking a model vertex projects it into the sketch (linked point) and draws from it, as Fusion does ("vertex:x,y,z" point arguments) bherbruckandClaude Opus 5.5 2026-10-08 02:58:43 +00:00
  • 8c88fb8d2d Measure: split triangles that cut through curved faces onto the surface (trimmed faces after booleans were measured up to 15% off; 61's keyway volume now matches); oracle step check shows the original volume bherbruckandClaude Opus 5.5 2026-10-08 02:39:05 +00:00
  • 063d55bdb3 Sketch drawing: a point snapped to a line's midpoint stays there ("mid:<line>" point arguments add a MidPoint constraint) bherbruckandClaude Opus 5.5 2026-10-08 02:45:16 +00:00
  • d729918034 Change Parameters dialog (params_dialog.rs): favourites, user parameters (unit, expression, value, comment; add, rename, delete) and model parameters grouped by sketch or feature, live validation and preview while typing, CSV/JSON import and export; parameter-name autocomplete (Tab) in every expression box: dialogs, inline sketch dimensions, manipulator values bherbruckandClaude Opus 5.5 2026-10-08 02:24:25 +00:00
  • 0da4c756c8 Sketch drawing inference: the cursor snaps to line midpoints and to horizontal/vertical alignment with the previous point (with an H/V/Mid hint), so lines drawn that way get their constraints inferred bherbruckandClaude Opus 5.5 2026-10-08 02:35:08 +00:00
  • 888ac0f5c4 Navigation bar: Look At (selected face or plane, else the active sketch) and visual style (shaded with edges, shaded, wireframe; kept between runs); F6 fits the view bherbruckandClaude Opus 5.5 2026-10-08 02:22:42 +00:00
  • 9c03f4bf32 Oracle replayer: features with fusion_effective_extent replay the extent Fusion actually used (63: its through-all is sized from vertices); noted per case in docs/oracle.md bherbruckandClaude Opus 5.5 2026-10-08 02:07:55 +00:00
  • 606d9913aa ROADMAP: sketch milestone update bherbruckandClaude Opus 5.5 2026-10-08 02:16:37 +00:00
  • 31030ed008 Exact free-form profiles: geom Seg2 gains cubic Béziers and conics (rational quadratics: exact length, area, split, tangents); sketch ellipses, conics, text, fit splines and control splines up to degree 3 enter profiles as exact segments wherever a loop uses a whole segment, and the kernel builds them as B-spline / NURBS edges (an extruded ellipse is three faces with the exact volume) bherbruckandClaude Opus 5.5 2026-10-08 02:08:53 +00:00
  • 8b4ec13d3b Edit Feature dialogs for construction planes (offset, at angle), split, scale, offset face, thread, stock, pipe, emboss, rib/web, replace face and remove bherbruckandClaude Opus 5.5 2026-10-08 02:05:06 +00:00
  • 0136567d4d Double-click an edge selects its smooth loop bherbruckandClaude Opus 5.5 2026-10-08 02:01:26 +00:00
  • 950fa39b0f Coil dialog; value box for curve-based dialogs (pipe, rib, path pattern) at the picked curve bherbruckandClaude Opus 5.5 2026-10-08 01:59:53 +00:00
  • 83438eeaab Coil walls as smooth B-spline surfaces (one per profile segment; ruled walls only as a fallback): a 3-turn coil has 4 faces instead of 724 bherbruckandClaude Opus 5.5 2026-10-08 01:56:30 +00:00
  • d2ba20e174 Dialogs with live previews for Rib, Web, Emboss, Replace Face, Align, Remove, Pattern on Path, Pipe and Stock bherbruckandClaude Opus 5.5 2026-10-08 01:40:38 +00:00
  • 015bc56c93 Offset Plane (with plane preview), Plane at Angle, Split Body, Scale, Offset Face and Thread dialogs bherbruckandClaude Opus 5.5 2026-10-08 01:37:40 +00:00
  • 441b36ce74 Browser: derive Default for rows (clippy) bherbruckandClaude Opus 5.5 2026-10-08 01:30:32 +00:00
  • fa8da64613 Context menus: radial marking menu in the viewport (Repeat on top, Undo, Delete, Press Pull, Create Sketch, Extrude, Move/Copy, Hole; right press-and-hold or a right drag on the ring flicks to pick), contextual lists for faces, edges, bodies, sketch entities (construction, fix, applicable constraints) and empty space; browser menus for bodies, sketches and components; rename box, Properties window; body.rename and sketch.redefine commands; ui.menu / ui.menuPick / ui.rename control methods bherbruckandClaude Opus 5.5 2026-10-08 01:28:08 +00:00
  • 1df3e3fe0f ROADMAP: parameters done, M7 progress, oracle 52/66 bherbruckandClaude Opus 5.5 2026-10-08 01:38:03 +00:00
  • 1b664bb1b0 Sketch UI: click a constraint glyph to select it, Delete removes the constraint; glyphs sit half way along their curve; lighter randomized sketch test bherbruckandClaude Opus 5.5 2026-10-08 01:24:48 +00:00
  • 1c10d1e56a STEP import: 65/66 Fusion files; bounded meshing bherbruckandClaude Opus 5.5 2026-10-08 01:12:43 +00:00
  • 7a0cc85392 Preferences (File menu): theme, grid, perspective, auto-project face edges, body selection; all kept between runs bherbruckandClaude Opus 5.5 2026-10-08 01:20:33 +00:00
  • 967bee179a Physical Material dialog (body appearance follows the material: steel, brass, copper, PLA…), Enter applies every OK dialog bherbruckandClaude Opus 5.5 2026-10-08 01:17:45 +00:00
  • 218d19d753 Coil: clippy bherbruckandClaude Opus 5.5 2026-10-08 01:11:44 +00:00
  • 9df954cd94 Coil (PrimitiveCoil: diameter, two of revolutions/height/pitch, circular or square section inside/on/outside, start angle, handedness) on a new kernel helical sweep; loft to a point (sketch point sections, pyramids); recipes: a sweep along a fitted 3D helix replays as a coil (oracle 49, compared within 0.5% since Fusion's path is a spline fit) and loft point sections (oracle 37) bherbruckandClaude Opus 5.5 2026-10-08 01:10:16 +00:00
  • 4455402eab Sketch profiles: grid-accelerated splitting and node merging, bounding-box nesting (large sketches several times faster); randomized sketch-editing test (thousands of mixed create/modify/constraint/projection/undo steps: no panics, designs round-trip) bherbruckandClaude Opus 5.5 2026-10-08 01:11:36 +00:00
  • 97abc687ae Extrude taper handle: drag the ring beside the arrow sideways to tilt the walls (1 degree steps; Alt/Ctrl free) bherbruckandClaude Opus 5.5 2026-10-08 00:59:19 +00:00
  • 708aad8e65 ROADMAP: M6 UI depth status bherbruckandClaude Opus 5.5 2026-10-08 00:56:18 +00:00
  • 428237563a Hole: depth arrow into the material (drag sets the depth; empty is through all) bherbruckandClaude Opus 5.5 2026-10-08 00:55:53 +00:00
  • 10e66785b1 Patterns of components (rectangular, circular or path: new occurrences at each placement); path pattern orientation test bherbruckandClaude Opus 5.5 2026-10-08 00:44:47 +00:00
  • 1988594a13 Section Analysis (FusionHalfSectionViewCommand, INSPECT): cut the view by an origin plane, construction plane or planar face with an offset (drag arrow) and flip; the inside of cut bodies shows a flat cap colour; live while the dialog is open, Remove Section on the right-click menu; viewport shader validated in a test bherbruckandClaude Opus 5.5 2026-10-08 00:14:57 +00:00
  • 24627d4f0a Selection filter in the SELECT panel: select bodies (a face picks and highlights its body), faces, edges, vertices, sketch geometry bherbruckandClaude Opus 5.5 2026-10-08 00:09:01 +00:00
  • 656502b882 Clipboard: clippy bherbruckandClaude Opus 5.5 2026-10-08 00:36:09 +00:00
  • b5051b2744 Rib and Web (to the next face or a depth, flip), Emboss/deboss on planar faces (EmbossCmd), Replace Face onto a parallel plane or face, Align (point to point, face to face), Remove (SoftDeleteCommand), timeline Copy/Paste of features (independent copies: own dimension parameters and input names, references remapped, optional translation) bherbruckandClaude Opus 5.5 2026-10-08 00:34:47 +00:00
  • 075808e7ee Pattern on Path (PatternOnPath: spacing or first-to-last distance, flip, identical or path orientation; instance k moves by path(k·d) − path(0)), rectangular/circular/path patterns of bodies; recipes: path_pattern (oracle 53 passes) bherbruckandClaude Opus 5.5 2026-10-08 00:25:39 +00:00
  • 02de01f87c Projection keeps free-form geometry exact: tilted circles project to ellipses and tilted arcs to conics (rational quadratic arcs), other sketches' ellipses, splines and conics in parallel planes map exactly, and smooth edges that are neither lines nor arcs become fit splines instead of line chains bherbruckandClaude Opus 5.5 2026-10-08 00:38:10 +00:00
  • e4f7ff3997 Kernel: clippy bherbruckandClaude Opus 5.5 2026-10-08 00:31:13 +00:00
  • 935e6465fa Blends: whole smooth loops picked by one edge (tangent chain), full circles, walls at any angle, several loops per feature; flat non-plane faces healed into planes; fillets and chamfers repeat in feature patterns bherbruckandClaude Opus 5.5 2026-10-08 00:30:36 +00:00
  • cde3af7a3c UI: interactive tools for the new sketch commands (crates/ui-egui/src/sketch_tools.rs): Project/Intersect/Include and the other model-pick tools, Trim/Extend/Break by clicking the piece, Offset (curve then side), sketch Fillet/Chamfer at a corner (radius dialog), Curvature, tangent circles, SketchConstrainer, Polygon, Mirror and sketch patterns, Project To Surface, Intersection Curve, Spun Profile, point tools for midpoint line, tangent arc, ellipse, conic, splines, arc slots, blend curve, and a text box for Text; constraint glyphs on the active sketch; text outline points hidden. Hooks in tools.rs/viewport.rs/lib.rs are a few lines bherbruckandClaude Opus 5.5 2026-10-08 00:28:01 +00:00
  • 9330ee5698 STEP export: AP242 file of our own, names, colours, components as assemblies bherbruckandClaude Opus 5.5 2026-10-08 00:12:14 +00:00
  • dd7485503a Parameters: unit-aware parameters (an inch parameter reads bare numbers as inches), atan2/mod/trunc and clearer unit errors, cycle paths (a → b → a), rename with every reference following (expressions, feature inputs, dimensions, favourites, comments), deletes refused with the list of users, parameter errors shown on the features using them, parameters.add/rename/delete/comment/users/graph/complete and expr.evaluate; ChangeParameterCommand renames and favourites; hostile test no longer writes stray files bherbruckandClaude Opus 5.5 2026-10-07 23:57:56 +00:00
  • a88b8eb6b3 SketchConstrainer (applies the constraint one or two entities nearly satisfy) and sketch.toggle_driven (driven/driving dimensions, with over-constraint check) bherbruckandClaude Opus 5.5 2026-10-08 00:12:56 +00:00
  • 57d01f8405 Kernel: revolved faces turned away from the angle wrap (booleans with revolved bodies work), cuts that leave pieces make separate bodies, trivial booleans (clear of / inside) by sampling, body mirrors with join; recipes: pattern source names, thread, holes at sketch points, mirror of bodies bherbruckandClaude Opus 5.5 2026-10-07 23:50:36 +00:00
  • cb01314d35 3D sketch curves (wires): Include 3D Geometry keeps out-of-plane edges and curves 3D; Project To Surface (curves onto a face along the sketch normal), Intersection Curve (bodies/faces), Isoparametric Curve (u/v or a direction), Spun Profile (a body's outline about an axis) and Fit Curves to Mesh Section; all linked and re-resolved; wires drawn, inspected and deletable bherbruckandClaude Opus 5.5 2026-10-07 23:54:18 +00:00
  • beab69cfb2 Measure tool (I): pick one or two vertices, edges or faces for length/area/position, minimum distance with ΔX/ΔY/ΔZ and a line in the view, and the angle between planar faces or straight edges (MeasureCommand items, engine test); theme switch from the control channel no longer leaves stale scene colours bherbruckandClaude Opus 5.5 2026-10-07 23:29:17 +00:00
  • 7518c4f4b5 Edit Feature dialogs for rectangular/circular patterns, loft, sweep and move (directions along other vectors are kept) bherbruckandClaude Opus 5.5 2026-10-07 23:23:10 +00:00
  • 0271919d52 Fix: false "projected face changed shape" warnings after a rollback bherbruckandClaude Opus 5.5 2026-10-07 23:47:25 +00:00
  • 08cf223ced STEP export: unique ids, plain curves, right revolution senses; seams on split faces bherbruckandClaude Opus 5.5 2026-10-07 23:39:57 +00:00
  • 32e6b2a578 ROADMAP: sketch milestone status and limitations bherbruckandClaude Opus 5.5 2026-10-07 23:39:25 +00:00
  • 3ab3e961de Sketch: drawing infers tangent (from an arc end) and perpendicular (from a line end) constraints; profile finding prefilters crossings by bounding box (text and free-form sketches 30x faster); large-sketch solver tests bherbruckandClaude Opus 5.5 2026-10-07 23:33:44 +00:00
  • 346be40377 Parameters: name feature inputs when features are added bherbruckandClaude Opus 5.5 2026-10-07 23:25:20 +00:00
  • e8de4d9e69 Parameters: check document size before naming inputs bherbruckandClaude Opus 5.5 2026-10-07 23:23:49 +00:00
  • f0cfeba59b Parameters engine: feature inputs as named model parameters (dN, editable, referenceable), parameters table with sources, values, dependencies (uses/used by) and cycles, favourites, comments, CSV/JSON export and import; more units (inch, mil, yd, km, nm) and functions (exp, ln, log, sign, pow, hypot) bherbruckandClaude Opus 5.5 2026-10-07 23:20:51 +00:00
  • 6f349b79f5 AutoConstrain (from datum, and Finish with AutoConstrain): infers coincident, horizontal/vertical and tangent constraints, then dimensions until fully constrained; Insert DXF (ASCII: lines, arcs, circles, bulged polylines, ellipses, splines, text; $INSUNITS) and Insert SVG (paths with all commands, shapes, transforms, units; Béziers kept exact as splines/conics; text) into sketches; sketch.export_dxf; text outline points hidden (view::sketch_point_visible) bherbruckandClaude Opus 5.5 2026-10-07 23:22:25 +00:00
  • b511ac6124 Sketch: drag points of the active sketch (the solver keeps the constraints, one undo step per drag); closed profiles shaded bherbruckandClaude Opus 5.5 2026-10-07 23:14:24 +00:00
  • 0f8e4a464b fmt bherbruckandClaude Opus 5.5 2026-10-07 23:15:23 +00:00
  • eb2a5d27b9 Scope decisions (in-scope parity headline, deferred tabs), STEP import and kernel notes in ROADMAP/plan bherbruckandClaude Opus 5.5 2026-10-07 23:15:09 +00:00
  • 9d46efc9ec Components: clippy fixes bherbruckandClaude Opus 5.5 2026-10-07 23:11:15 +00:00
  • 97d03e3824 Components: occurrences with transforms (instances and Paste New copies), world placement of the model (Session::world_state for display, measure, export), active component authoring frame, move/ground/capture/revert positions, move bodies and sketches between components, rename/delete, migration of older designs bherbruckandClaude Opus 5.5 2026-10-07 23:10:40 +00:00
  • 54ee20bef4 Sketch constraints and dimensions: Curvature (G2, ConstraintSmooth) and Polygon constraints; redundant constraints and dimensions are refused as over-constraining (Fusion behaviour), with driven (reference) dimensions that measure instead; arc length and linear diameter (about a centerline) dimensions; sketch.glyphs (constraint glyph anchors, conflicts) and sketch.snap (coincident/midpoint/on-curve/horizontal/vertical inference); solver damping floor keeps weakly seen variables from flying off bherbruckandClaude Opus 5.5 2026-10-07 23:06:31 +00:00
  • a1accbf46e Extrude: Two sides direction with a second draggable arrow, taper angle field; ground grid drawn under the model (bodies below the grid plane are no longer hidden by it); preview extent included in the view depth range bherbruckandClaude Opus 5.5 2026-10-07 23:06:32 +00:00
  • a13f4664dc UI: compile fix for the new feature kinds (Hole pattern rest, timeline icon fallback) bherbruckandClaude Opus 5.5 2026-10-07 23:01:41 +00:00
  • 840eddb875 Pipe (solid or hollow, along sketch curves), Bounding Solid, Scale (uniform or per axis), Offset Face (planar faces), physical materials with mass in Measure; sweeps keep profile holes bherbruckandClaude Opus 5.5 2026-10-07 23:00:19 +00:00
  • 37f4e4e49e Kernel: shell of non-convex bodies with planar faces (faces offset with the body's topology) bherbruckandClaude Opus 5.5 2026-10-07 22:55:49 +00:00
  • 2f39f0381a Kernel: push coincident faces apart before trying the boolean (no slow failing retries first) bherbruckandClaude Opus 5.5 2026-10-07 22:54:43 +00:00
  • b3ca8911eb Holes at sketch points (one feature, many holes, following the points) and threaded holes; cosmetic threads (FusionThreadCommand, ISO metric, model.threads); components groundwork: the document is a component tree (New Component, Create Components from Bodies, active component, component.list) bherbruckandClaude Opus 5.5 2026-10-07 22:52:12 +00:00
  • 61ed21847a Rectangular and circular pattern, loft and sweep dialogs with live previews (pattern spacing arrow, loft sections by sketch in pick order, sweep path from sketch curves) bherbruckandClaude Opus 5.5 2026-10-07 22:55:25 +00:00
  • 6e20038906 Sketch Blend Curve (tangent control-point spline between two curve ends) and the Centerline line type (sketch.centerline: left out of profiles, drawn as an axis) bherbruckandClaude Opus 5.5 2026-10-07 22:55:34 +00:00
  • 2491c40fef Sketch Text (MTextCmd, sketch.edit_text): glyph outlines of the embedded Liberation Sans (SIL OFL 1.1, attributed) as lines and conics that close into extrudable profiles; editable text, height, position and angle bherbruckandClaude Opus 5.5 2026-10-07 22:47:30 +00:00
  • 79a4194f6e Revolve angle rotator (drag the arc end, 5 degree steps), right-click menu in the viewport (Repeat last command, commands for the selection, fit/home/undo), larger inline sketch dimension boxes bherbruckandClaude Opus 5.5 2026-10-07 22:43:21 +00:00
  • 3229fd9740 Kernel: booleans with coincident planar faces push the faces apart exactly (perpendicular neighbours stretched or shrunk), union cuts the slab beyond the plane bherbruckandClaude Opus 5.5 2026-10-07 22:32:39 +00:00
  • 8d7a0cf3d0 Sketch free-form curves: Ellipse (centre, major axis end, minor radius), Fit Point and Control Point (degree 3 and 5) Splines, Conic Curve (rho); solved like other curves (points on them, tangency at shared ends, drag fit points), profiled as polylines; mirror/pattern/move/scale copy them; Tangent Arc continues splines and conics bherbruckandClaude Opus 5.5 2026-10-07 22:35:03 +00:00
  • 956492c993 Dark theme (default): Fusion-like blue-grey viewport #2e3440, darker chrome, subtle grid, light text, blue accent; light theme kept as a second Tokens set; toggle on the application bar (sun/moon), ui.set {dark}, kept between runs (eframe storage; browser local storage on the web); viewport, sketch, glyph, view cube, timeline and overlay colours all come from the theme; preview spinner and state in ui.inspect bherbruckandClaude Opus 5.5 2026-10-07 22:23:24 +00:00
  • 71a1903122 Fix: sketch edit exit (double-click a sketch no longer traps you) bherbruckandClaude Opus 5.5 2026-10-07 22:25:45 +00:00
  • 73f68f3f50 Sketch tools: Midpoint Line, Tangent Arc, 2-Tangent and 3-Tangent Circle, Center Point Slot, three-point and center-point Arc Slots; Trim, Extend, Break, sketch Fillet (radius dimension), equal/distance-angle/two-distance Chamfers, Offset (chains, side point), Mirror (symmetry constraints), Circular and Rectangular sketch patterns, Sketch Scale, sketch.move (move/rotate/copy) bherbruckandClaude Opus 5.5 2026-10-07 22:15:55 +00:00
  • 51f5f8a0e5 Kernel tests: restore the mesh-body test after the merge bherbruckandClaude Opus 5.5 2026-10-07 22:16:52 +00:00
  • a4a17331dc Kernel: concave edge fillets; whole smooth-loop blends of planar faces (cylinders and tori: pocket floors, plate outlines); rounding every edge of a convex planar body (sphere corners); healing after booleans (exact lines/arcs for intersection curves, coplanar faces merged, collinear edges joined); faces rebuilt on their stored surfaces bherbruckandClaude Opus 5.5 2026-10-07 22:08:19 +00:00
  • b2b9331415 Drag manipulators and automatic operation: extrude (two arrows when symmetric), fillet/chamfer, shell and move arrows drag their value with round-step snapping (Alt/Ctrl: free) and the dialog follows; Extrude operation "auto" (engine) and the dialog follow the geometry: into a body cuts (red), out of one joins, free space makes a new body; a manual choice sticks bherbruckandClaude Opus 5.5 2026-10-07 21:56:37 +00:00
  • f5c2c725c8 Extrude/revolve "all profiles" means the drawn ones: auto-projected face edges only count when the drawn curves make no profile bherbruckandClaude Opus 5.5 2026-10-07 21:58:17 +00:00
  • 9301bc4210 Sketch projection: Project (edges, face loops, body silhouettes, vertices, other sketches' curves and points, origin, axes, planes), Intersect (body/face/edge section with the sketch plane) and Include 3D Geometry as linked reference geometry: fixed, purple, re-resolved on every recompute (follows upstream edits, keeps ids when the shape is unchanged, flagged when the reference is lost), usable in profiles, constraints and dimensions; Break Link; sketching on a face auto-projects its edges (sketch.auto_project); drawing on a model vertex or edge projects it bherbruckandClaude Opus 5.5 2026-10-07 21:43:32 +00:00
  • eb22a149b1 Sketch inline dimensions while drawing (line length/angle, rectangle width/height, circle diameter, arc radius/sweep, polygon radius/sides, slot length/width): boxes sit on what they measure, typing goes into the first box and locks it, Tab moves on, Enter places the shape, typed values become dimension constraints (expressions and units); Press Pull (Q: faces extrude/cut by sign, edges fillet), X toggles construction on selected curves, Move dialog (M) with preview bherbruckandClaude Opus 5.5 2026-10-07 21:40:13 +00:00
  • ea3dd0ed6e 3MF: export, and 3MF/STL import as mesh bodies bherbruckandClaude Opus 5.5 2026-10-07 21:23:37 +00:00
  • 043a542e29 Kernel: pole-free six-patch spheres; vendored truck-shapeops with robust meshing and nearest-parameter loop projection (sphere and box booleans work); least-squares sphere classification bherbruckandClaude Opus 5.5 2026-10-07 21:24:11 +00:00
  • 7ef3426cb3 Keyboard-first commands: E/F/H open with the on-canvas value box focused as soon as the geometry is picked (typing replaces the value, Enter applies, Tab moves on, Esc cancels), extrude direction arrow; Extrude takes planar body faces (face: [x,y,z] copies the face boundary into a sketch), so select-face-then-E press-pulls; join/cut previews show the tool body (cut see-through red) bherbruckandClaude Opus 5.5 2026-10-07 21:23:47 +00:00
  • d44083d1cc Live operation previews: open feature dialogs (new or Edit Feature) evaluate on a scratch session off the UI thread (Session::preview, no document or undo changes) and draw the result in place: new surface tinted, removed material as a translucent ghost; errors show in the dialog and keep the last good preview; a failing join/cut still shows its tool body bherbruckandClaude Opus 5.5 2026-10-07 21:08:56 +00:00
  • b8d0fcc8e2 STEP: bound assembly traversal, name imports after a lone body bherbruckandClaude Opus 5.5 2026-10-07 21:01:02 +00:00
  • d224fde7d4 STEP: corpus check bherbruckandClaude Opus 5.5 2026-10-07 20:52:08 +00:00