Sign in to store your mechanisms on this site and reopen them from any device — the same sign-in family as the other RGZ studios.
Opens a clean A4 sheet in a new window — title block, watermark, dimension-true drawing. Pick Save as PDF in the browser dialog to export a PDF file.
Build: open a group on the left and pick an element. Bodies drag-stretch in the canvas (a rod’s drag sets its length and angle). Joints, springs, jacks and drivers ask for two clicks — the first click snaps to the body under it, the second click picks the other body, or empty space for ground. Shift-click keeps the tool for repeated placement, Esc cancels, Alt bypasses the 5 mm snap and the magnet. Double-click anything for the wide edit dialog; Ctrl+Z/Ctrl+Y undo/redo; the wheel zooms, F fits, arrows nudge the selected body by one grid pitch.
Anchor magnet (њ Snap): while a draw tool is active, every rod tip, pin hole, joint anchor, spring end, trace and note — plus the UCS origin — is a magnet target: an orange reticle marks the exact point your click will use, and the HUD names the target. This is how you dock a link onto the tip of another link precisely. While chaining, the HUD shows the live length and angle from your last point; hold Shift to lock the rubber line to 15° steps. For keyboard-exact work use the exact x, y box at the canvas corner: type 120, 45 + Enter to place the next click at that world coordinate (prefix @ for a step relative to your last placed point) — or 240<35 for a step given as length & angle from the last point. Coordinates always refer to the orange/blue global frame. Grid pitch is 5 mm (hold Alt for 1 mm freehand). Links are built tip-to-tip: the two canvas points you click (or the two coordinates you type) become the rod’s exact end pins — the body stretches between them, never beyond them.
Model tree: the card under the Inspector lists every body, joint, force element, driver and note in the current model. Click a row to select that item on the canvas (ground-attached rows carry an amber gnd chip); double-click a row to give it your own name — the new name propagates automatically into every joint, spring, motor and trace that references it. Renaming an element of a loaded sample detaches that sample’s built-in self-checks, because the checks refer to the original names.
Joints (the ADAMS-style set): revolute pin with angle limits, weld, prismatic slider with travel stops (uncheck rotLock and it is a cylindrical joint — slide + spin), rigid rod link (massless dyad), pin-in-slot (point-on-line, optionally with hard stops), ball & socket, orientation lock (keeps a body level/gyro-compass), gear mesh, belt/chain, rope over pulley, lead screw, rack & pinion, universal joint (Cardan–Hooke, exact nonlinear relation — it wobbles like a real single cross), constant-velocity joint (ideal 1:1), cam-follower contact, and the intermittent-motion set: Geneva wheel (analytic pin-in-slot engagement with dwell lock on the index lattice — the wheel bursts, then holds dead), ratchet & pawl (any revolute pin gains a one-way row with tooth pitch), optional gear backlash (deadband at the pinion on any gear mesh), and slip clutch / brake elements (torque-capped regularized-Coulomb drag — a torque limiter by construction). Note: the engine solves the view plane, so the spatial ball & socket acts as its in-plane projection (a free pivot); a fully spatial ball joint has no planar-only equivalent — that is stated wherever it applies.
Coordinate systems: the orange/blue marker at the origin is the global frame; the cursor read-out (bottom-left HUD) is always in millimetres on that frame. Every body also carries its local frame — select a body to see its x′/y′ axes; its pose (x, y, angle) and every anchor are editable numbers in the Inspector, so you can design to exact dimensions.
Edit live: the Inspector rewrites any number — size, mass (via material & thickness, or a point mass directly), stiffness, damping, gear teeth, motor speed, jack profile — and applies it immediately, even while the simulation runs. Drag a body while it runs to feel the forces fight back.
Four ways to analyse: Kinematic — drivers prescribe exact motion and the solver closes the loops (position/velocity analysis, no mass needed); Dynamic — gravity, springs, dampers and inertia rule; motors become torque-limited drivers, so an undersized motor visibly stalls; Static — the &weigher;#9878; button settles the model by dynamic relaxation and reports the equilibrium; Kinetic — every joint continuously reports its reaction force (the solver’s Lagrange multipliers) in the Live card, in any mode. In dynamic mode the Live card also reports kinetic / potential / total energy: potential energy is measured from a datum at the model’s lowest point at build (energy is defined up to an arbitrary constant — only its changes carry physical meaning) and includes spring stretch energy, so a healthy conserved system holds a steady, non-negative total.
3D view: the ▣ button extrudes the model (thickness t and z offset on each body) and lets you orbit with shaded, painter-sorted solids. Traces, springs and reactions ride on a transparent annotation plane. Editing stays in 2D.
Samples in three levels: Simple — four-bars, slider-crank, gears, cam, pendulums, seesaw statics, block & tackle, slotted lever; Intermediate — Whitworth quick-return, Watt & Chebyshev straight-line linkages, Peaucellier–Lipkin, Oldham & cardan couplings, Ackermann steering, toggle clamp, lead screw, windscreen wiper; Advanced — double-wishbone & MacPherson suspensions, motorcycle monoshock, engine + flywheel, excavator, scissor lift, dump hoist, deadbolt, valve train, two-leg walker, garage opener, landing gear. Every sample carries live self-checks (loop closure, stroke, ratio, period, static reactions) so you can watch the physics prove itself.
Print / PDF: builds an A4 engineering sheet (title block, watermark, your name) in a new window — print on paper or Save as PDF.
Graph & Study: 📈 Graph records any solver metric while the sim runs and exports CSV; ⚙ Study sweeps one parameter (a size, spring rate, motor speed, pin friction…) through a range, re-simulates each step from rest and can apply the winning value back to the design.
⚕ Synth: dimensional synthesis — Freudenstein function generation (exact at three angle pairs), three-point path generation by the coupler-shape method (Varedi-Koulaei & Rezagholizadeh 2020): you draw the connecting rod — hinges A and B around tracer point P — enter the three precision points, and the centres are circumcentres of the rod’s poses; optional prescribed timing (input pivot A0 + crank swings φ′/ψ) derives hinge A by motion inversion. Plus a coupler-curve atlas whose previews are drawn by the solver itself. Every synthesis is verified by re-simulation before it is offered for the bench.
σ Stress: the link-stress view colours every rod/plate/block by worst-section stress against its material's yield, from the reaction forces the joints report this instant (plus element forces, driver reactions, contact impulses and gravity). It is an elementary rectangular-section beam estimate for first-pass sizing — deliberately not an FEA.
🎓 Labs: the Guided lab drops a challenge apparatus on the bench with one thing deliberately wrong (a pulley ratio, an unbalanced seesaw, an under-damped bounce…). Edit the model until the live checks — the same engine as the sample self-checks — all pass.
🔗 Share: packs the whole design into a link (after #d=) that rebuilds the same mechanism on any machine — no account, no server copy, nothing uploaded. The same panel also exports motion: a WebM clip where the browser offers a native recorder, otherwise a PNG filmstrip grid.
Account: sign in (top right) and ☁ Save keeps the design on this site — reopen it from My designs here or from the deck profile, on any device. Without an account everything stays in this browser (localStorage / JSON export).
Honest scope: planar (2D) rigid-body mechanics with a semi-implicit Euler integrator and sequential-impulse constraints, 240 Hz in dynamic / 120 Hz in kinematic mode; designed for mechanism work at mm–m scale, not contact-rich crash simulation. Cam contact is a radial-profile follower (analytical), the Cardan (universal) joint is the exact closed-form relation, the CV joint is ideal-1:1, the ball & socket is its planar projection (free pivot), gears/belts/screws are ideal aside from the optional gear-backlash deadband (no belt slip or tooth compliance), the Geneva is the analytic pin-in-slot/dwell-lock model (not slot-wall contact), the pawl is a one-way angular stop at tooth pitch, and the clutch is a regularized-Coulomb slip model (no thermal fade). All mathematics runs in this browser tab on your own machine — nothing is sent anywhere while you simulate; a very heavy model at 4× speed simply runs slower than real time, it never silently skips physics.
Learning: mechanism lessons live in the Learning Hub › Mechanisms & Machines.
No channels yet — pick a metric above and press + Add channel, then run the simulation.
Each channel is auto-scaled to its own min/max band (the legend shows the live value plus that band). History keeps the last ~20 s at the record rate; Clear forgets it. Recording pauses when the sim is paused.
No runs yet — set the sweep and press Run study.
Every value is re-simulated from rest with the complete solver — never interpolated or curve-fitted (≤ 12 values × ≤ 8 s keeps it responsive). Sweeping a size keeps the joint anchors where they are, so an extreme value may fail to assemble: it is marked, never silently skipped. Bars scale to the largest |metric| in this table.
Freudenstein’s equation finds the crank-rocker geometry that maps crank angle → rocker angle exactly at three precision pairs (angles absolute from the ground line, CCW +). Between the pairs it interpolates smoothly — bracket your working range with the pairs. The defaults reproduce a real crank-rocker’s transfer curve, so Run out of the box.
No solution yet — press Solve & verify.
Three-precision-point path generation after Varedi-Koulaei & Rezagholizadeh, Proc. IMechE Part C 234(13), 2020 — worked the paper’s own way: ① draw the connecting rod by placing hinges A and B around tracer point P (P is the point of the rod that must pass through the precision points), ② enter the precision points P1..P3, ③ solve — the fixed centres A0, B0 follow as the circumcentres of the rod’s three poses (paper eq. 4/5, in the singularity-free bisector form). Tick prescribed timing to instead choose the input pivot A0 and crank swings φ′ (P1→P2) & ψ (P2→P3): hinge A is then derived by motion inversion (paper eq. 8/9) and you only draw hinge B.
Click the sketch or drag a hinge — drawing and numbers stay in sync.
No solution yet — press Solve & verify.
Positions check: the three poses of the drawn rod with the solved centres (the paper’s Fig. 1(e)/2(e) graphic) — your eye confirms what the solver measured.
Curated four-bar coupler geometries. Each preview is the coupler curve re-drawn by the solver when you open this tab — what you see is what the built mechanism will trace.
The link packs the whole design into the URL itself (everything after #d=) — it never touches a server. Anyone opening it on this page rebuilds the same mechanism on their own machine.
Captures the live canvas while the sim runs: a WebM clip when this browser ships a native recorder, otherwise a PNG filmstrip grid you can slice in any image editor.