MolecularSurfaceVisualizer

Github repo: https://github.com/android172/MolecularSurfaceVisualizer

Visualization of protein surfaces based on

M. Krone et al., "Molecular Surface Maps," in IEEE Transactions on Visualization and Computer Graphics, vol. 23, no. 1, pp. 701-710, Jan. 2017, doi: 10.1109/TVCG.2016.2598824.

Dependencies

All other dependencies are built in source

Building

We use cmake as out build system. There are no extra project specific flags.

Usage

Visualizer App

Run MolecularSurfaceVisualizer.exe. Running for the first time will show a prompt for rendering backend selection, the choice should not be important (other then the computers compatibility) but the app was developed using the Vulkan rendering backend.

Use the "Load Molecule" button to load in a molecule. The input file should be a zip archive containing at least the basic .mesh and .material files for the initial surface.

The name of the zip archive has to match the name of the base molecule mesh and material files!

Other names have to looks as follows, for a zip archive names <name>.zip:

Use the 4 buttons on the top of the window to change between viewing different surface types.

Use the "Save Molecule" button to save all computed results. The save file dialogue will let you chose a directory and the name of the BASE MOLECULE MESH. All other mesh and material files will be generated and saved with the appropriate names in the same directory.

Mesh converter

If you build our application on Windows or are using a prebuilt version of Assimp from our fork you can run the conversion scripts found in <root-dir>/scripts/pdb_to_ogre.sh. More details about usage can be found in the script file and information about MSMS can be found in the respective platform dependent folders.

On windows you can run the scripts with WSL bash. On linux you should be able to run them normally, provided you were able to build the OgreAssimpConverter executable but this has not been tested.

Known Bugs