Skip to content
/ mol Public
forked from fogleman/mol

Render ball-and-stick models of molecules.

License

Notifications You must be signed in to change notification settings

jwdeitch/mol

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

14 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mol The Molecule Renderer

Examples

Installation

You need cairo and pkg-config installed first.

go get github.com/fogleman/mol

Usage

The program parses MDL Molfiles or SDF files and generates PNGs.

mol input.sdf
mol examples/*

There are no other command line options as of yet, though one can imagine several possibilities. Output resolution, output format (SVG), camera position, animations, etc. Quality pull requests are welcome. Also, I know very little about chemistry, so if something doesn't look right, let me know!

Input Files

You can search for molecules here:

https://www.ncbi.nlm.nih.gov/pccompound/?term=benzene

Select a result and click Download > 3D Conformer > SDF.

There are also several examples in the examples folder.

How it Works

mol uses another library I created called ln. ln is a 3D vector renderer that works somewhat like a ray tracer. mol simply constructs spheres and cylinders in the right places and uses ln to render.

https://github.com/fogleman/ln

Camera Placement

The program automatically positions the camera to maximize visibility of all atoms in the molecule.

Example

The two molecules shown above are the same (testosterone). One is shown from the most optimal point of view while the other is shown from the least optimal point of view. See camera.go to see how this works. It's pretty straightforward.

About

Render ball-and-stick models of molecules.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 100.0%