Bond Tool
The Bond tool is the main drawing tool in Molkit. With it you sketch skeletal structures by dragging bonds out of atoms, connect existing atoms, change bond orders by clicking, and relabel atoms to the active element. Press B to activate it.
Drawing bonds
- Drag from an atom. Press on any atom and drag outward. A preview line follows the cursor; releasing creates a new atom at the endpoint plus a bond connecting it. New carbon atoms are unlabeled, matching skeletal convention.
- Drag between two existing atoms. If you release the drag near an existing atom, the endpoint snaps onto it (a snap ring highlights the target) and the bond connects the two atoms instead of creating a new one. If those atoms are already bonded, the existing bond’s order cycles instead.
- Click empty canvas. A single click on empty space places a lone atom of the active element. Carbon is placed with a hidden label; other elements show their symbol.
- Cancel with
Esc. PressingEscmid-gesture cancels the bond and removes the start atom if it has no bonds (including a pre-existing isolated atom you started the drag from).
Clicking existing bonds
Clicking a bond with the default single-bond tool cycles its order: single, double, triple, then back to single. A bond that carries a stereo style (wedge, dash, and so on) loses the stereo style on the first click, then cycles order on later clicks.
Two refinements:
- Clicks within 10 px of a bond endpoint start a new bond from that atom rather than cycling the clicked bond.
- A double bond inside a ring cycles its inner line first: inside the ring, outside the ring, centered, and only then advances to triple. This lets you flip which ring the second line faces in fused systems.
With a specific bond type selected in the flyout, clicking a bond applies that type. Clicking again with the same wedge, dash, or dative type swaps the bond’s direction. With the double-bond tool, repeated clicks on a double bond cycle the second line’s placement: auto-detected side, opposite side, centered.
Clicking atoms
Clicking an atom with the Bond tool relabels it to the active element (chosen with the Atom tool or element shortcuts). If the atom already matches the active element and that element is carbon, the click toggles the carbon label between hidden and visible.
Snapping and modifier keys
While dragging, the bond angle snaps to 15 degree increments and the length snaps to the standard bond length, which is 40 px in the Traditional and Textbook presets and 28 px in Compact. Angle snapping requires both the canvas Snap to Angle setting and Smart Guides (Ctrl+;) to be on.
Modifier keys during the drag relax each snap independently:
| Modifier | Angle | Length |
|---|---|---|
| None | Snapped (15 degrees) | Standard |
Shift | Snapped | Free |
Alt or Ctrl | Free | Standard |
Shift+Ctrl | Free | Free |
Shift alone is the extension gesture: the bond stays on a snapped angle but reaches as far as you drag. Shift+Ctrl is fully free drawing.
Bond types
The Bond toolbar button opens a flyout with every bond variant. Picking one makes it the active type for new bonds and for clicks on existing bonds.
- Basic: Single, Double, Triple, Quadruple
- Stereo: Wedge, Wedge (outline), Dash, Wavy
- Coordinate and weak: Dative, Dative (dots), Hydrogen, Coordination
- Aromatic and crossed: Aromatic, Crossed, Double X
- Style variants: Bold, Dotted, Dashed Double, Dashed Triple
Aromatic rings can render in Kekulé style (alternating double bonds) or with an inscribed circle. The display mode is part of the structure preset and can be switched from the Structure menu; see Presets.
Per-bond styling overrides (color, thickness, wedge and hash geometry, crossing gaps, aromatic display) are documented on the Bond Styling panel page.
Bond crossings
Where two bonds cross, the bond drawn on top gets a short white break in the bond underneath so the crossing reads correctly. To control which bond is on top, select a bond, right-click, and choose Bring Bond to Front or Send Bond to Back. Reset Bond Crossing Order removes the manual override and returns to draw order.