3dmol / 3Dmol.js

WebGL accelerated JavaScript molecular graphics library
https://3dmol.org/
Other
778 stars 191 forks source link

More cartoon options for nucleic acids. #559

Open Psirving opened 2 years ago

Psirving commented 2 years ago

Is your feature request related to a problem? Please describe. I'd like more options for nucleic acid cartoon styles. Particularly, something like PyMol's cartoon_ring_mode,3 or how they appear on the PDB website.

Also, your documentation seems to end prematurely under "CartoonStyleSpec" in the middle of a sentence about nucleic acids. So I'm not sure if something like this is possible already.

Describe the solution you'd like I'm using py3Dmol. view.setStyle({"cartoon": {"style": "NA_rings_3"}}) --> similar to cartoon_ring_mode,3 in PyMol. view.setStyle({"cartoon": {"style": "NA_rectangles"}}) --> similar to PDB representation

Describe alternatives you've considered(Optional) I've played around with addCustom, addBox, and addCylinder. This seems like a solution, but would require more time than I have.

dkoes commented 2 years ago

I've added this is a possible project for Google Summer of Code: https://wiki.openchemistry.org/GSoC_Ideas_2022#3Dmol.js_Project_Ideas Hopefully someone will pick it up.

paul-111 commented 2 years ago

can i work upon it?

paul-111 commented 2 years ago

@dkoes

dkoes commented 2 years ago

Certainly

sachinsh01 commented 1 year ago

Hello @dkoes , I'm Sachin Sharma and I'm interested in contributing to this project for GSOC 2023.

I have experience with JavaScript and client-server programming, and I'm excited to learn more about nucleic acids visualization. I've read through the project description and related documentation and I'm interested to contribute to the project.

I would love to discuss the project with you and learn more about any additional details or requirements. Please let me know if it is available.

Thank you

dkoes commented 1 year ago

A project proposal should include examples (from other software) of what the output will look like and describe what data you will use to test your code. It should be pretty straightforward. You might want to extend it with alternative representations for carbohydrates as well.

sachinsh01 commented 1 year ago

Hello @dkoes, I have started working on the project proposal. My plan is to share the link to my proposal document with you so that you can review it and provide me with your feedback as needed. This way, I can make sure that the proposal meets your expectations and includes all the necessary information.

Please let me know if this approach works for you, and if you have any suggestions or concerns. I'm excited to get started on this project, and I appreciate your guidance and support along the way.

dkoes commented 1 year ago

Sounds good to me.

prince-patel23 commented 6 months ago

Hi @dkoes ,

Hi David,

I'm keen on contributing to the 3Dmol.js project for GSoC 2024. I have experience in web technologies, especially the MERN stack, along with skills in SCSS, TypeScript, and Blender. I'm passionate about 3D modeling and see this as an exciting opportunity.

I've identified areas for improvement on the GitHub Issues page and would like to discuss them further.

Thanks, @prince-patel23

perminder-17 commented 5 months ago

Hi @dkoes I understand the situation better now. Initially, I thought we were focusing on shader modifications, but upon reading the issue thoroughly, it seems we're leaning towards simplifying the molecules into sticks.

image

This involves creating geometry for these rounded sticks. Additionally, I believe we'll need to establish values or perhaps use a straightforward syntax similar to set cartoon_ring_mode, value where different values produce different effects. I'll outline my proposal and detail a basic implementation plan in our codebase. Could you please review it via email ( dkoes@pitt.edu. ) ? I've grasped the codebase well and have a clear idea for its implementation. I have previously contributed to these kind of projects where we involve creative coding, webgl, etc. etc.