-
Notifications
You must be signed in to change notification settings - Fork 176
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support parsing KET file for macromolecules on ketcher side #3230
Comments
rrodionov91
added a commit
that referenced
this issue
Sep 12, 2023
- added ket macromolecules deserializer for monomers and bonds - changed entities coordinate system to angstrems
rrodionov91
added a commit
that referenced
this issue
Sep 12, 2023
- added ket macromolecules deserializer for monomers and bonds - changed entities coordinate system to angstrems
9 tasks
9 tasks
rrodionov91
added a commit
that referenced
this issue
Sep 13, 2023
- added ket macromolecules deserializer for monomers and bonds - changed entities coordinate system to angstrems
rrodionov91
added a commit
that referenced
this issue
Sep 15, 2023
- added ket macromolecules deserializer for monomers and bonds - changed entities coordinate system to angstrems
rrodionov91
added a commit
that referenced
this issue
Sep 18, 2023
…3292) * #3230 - Support parsing KET file for macromolecules on ketcher side - added ket macromolecules deserializer for monomers and bonds - changed entities coordinate system to angstrems * #3231 - Support serializing canvas to KET format for macromolecules on ketcher side - added ket macromolecules serializer for monomers and bonds --------- Co-authored-by: Roman Rodionov <roman_rodionov@epam.com>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Requirements
It needs to render monomers and connections from KET file. Specification of KET format for macromolecules:
KET_macromolecules_specification.pdf
In case of variant monomers/monomers groups/hydrogene connections or connections without the link to monomers it needs to show an error.
Implementation details
Algorithm is following:
root.nodes
array.1.1. If
node.type === 'monomer'
then create a command for new Monomer creation. Fieldsorigin.x, origin.y
should be used for coordinates. FieldtemplateId
should be used to find the template in library and take the type of monomer and label.1.2. If
node.type === 'group'
then show error.2.1. If
node.connectionType === 'single'
andnode.endPoint1.monomerId !== undefined
then create new PolymerBond by usingendPoint1.monomerId
andendPoint2.monomerId
fields as a reference to monomers andendPoint1.attachmentPointId
andendPoint2.attachmentPointId
as attachment points. if there is noattachmentPointId
field for some endPoint then do not set a specific attachment point to Monomer, just create a bond. Show error ifnode.endPoint1.monomerId === undefined
ornode.endPoint2.monomerId === undefined
ornode.connectionType !== 'single'
The text was updated successfully, but these errors were encountered: