epam / epam/ketcher

CIP stereo labels intersect with bonds or are placed too close to the structure in macromolecule layout modes

Open
#7,239 1 comment 0 reactions 0 assignees View on GitHub
3.7.0-rc.1 confirmed Common UI problems Priority: Low Severity: Low Stereochemistry
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

Image

3. Switch to any macromolecule mode (Flex, Snake, Sequence).

Image

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**

![Image](https://github.com/user-attachments/assets/2f1c4baf-800b-4983-a51a-9b277a61aca4)

**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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.