CIP stereo labels intersect with bonds or are placed too close to the structure in macromolecule layout modes
- Dominant language
- TypeScript
- Stars
- 886
- Forks
- 262
- Avg merge
- 3d 19h
- Merged PRs (30d)
- 110
Description
**Description:**
In Flex, Snake, and Sequence macromolecule modes, CIP stereo labels (R/S) are rendered in a way that they either intersect with nearby bonds or are placed too close to atoms/bonds. This makes the labels visually cluttered and difficult to read, reducing overall clarity of the structure.
**Steps to Reproduce**
1. Open file and copy it to Ketcher . File: [ring-and-chains-with-stereo.ket](https://gist.githubusercontent.com/zefiris87/a06e51d7ba1f677d623416f407d8b82e/raw/5724180fcac62791c15a758ac663b799e373504f/ring-and-chains-with-stereo.ket)
2. Press Calculate CIP button
3. Switch to any macromolecule mode (Flex, Snake, Sequence).
4. Observe how (R)/(S) labels intersect bonds or sit too close to them.
**Actual behavior**
CIP labels sometimes overlap with structure elements or are positioned directly adjacent to bonds without spacing, especially in compact ring systems.
**Expected behavior**
CIP stereo labels should be rendered with enough padding from the atoms and bonds to ensure readability and avoid visual overlap. Label positioning should dynamically adapt to avoid intersections.
**Screenshots**

**Desktop:**
- OS: Windows 11
- Browser Chrome
- Version 136.0.7103.114 (Official Build) (64-bit)
**Ketcher version**
[Version 3.5.0-rc.1]
**Indigo version**
[Version 1.33.0-rc.1]
This bug was found while testing: https://github.com/epam/ketcher/issues/6995
Contributor guide
No contributing guide indexed for this repository
Research direction
Load ring-and-chains-with-stereo.ket in Ketcher, calculate CIP, and reproduce the issue in Flex, Snake, and Sequence modes. Start from the macromolecule layout and CIP-label rendering entry points; done means R/S labels have visible spacing from atoms and bonds without intersections in the reported compact structures.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100