Second week of coding
Welcome to the third weekly check-in. I'll be sharing my progress for the second week of coding.
What did you do this week?
I created an example to demonstrate how one can render multiple bonds (double and triple). This required me to write an algorithm to detect bonding. I used this as a reference and made a few tweaks of my own to detect the presence of double/triple bonds from interatomic distances. The math involved in bond detection was quite intriguing.
Preview (molecules rendered: Ethane, Ethene, Ethyne from left to right):
In addition to this, I tried understanding the codebase of
vtkPeriodicTable and was able to render ball and stick models, stick models using it.
This will be of great help although it's rather slow in rendering large molecules (using shaders to improve its speed will be crucial if it's to be utilised).
- Preview of Stick representation using
- Preview of Ball and Stick representation using
What is coming up next week?
Try to implement the above models using shaders. Try implementing the ribbon model using the
vtkProteinRibbonFilter. The rest will be decided in the meeting with the mentors.
Did you get stuck anywhere?
Predicting bonds had been a problem since the past few weeks, it was resolved to a large extent by
vtkSimpleBondPerceiver (the only limitation of
vtkSimpleBondPerceiver being its inability to predict multiple bonds).