File: roll_helix.py

package info (click to toggle)
openstructure 2.11.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 206,240 kB
  • sloc: cpp: 188,571; python: 36,686; ansic: 34,298; fortran: 3,275; sh: 312; xml: 146; makefile: 29
file content (22 lines) | stat: -rw-r--r-- 455 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import math

e=io.LoadEntity('../entity/sdh.pdb')
c=e.FindChain('A')

edi=e.EditICS(mol.EditMode.BUFFERED_EDIT)
for r in c.GetResidueList():
  phi=r.GetPhiTorsion()
  psi=r.GetPsiTorsion()
  if phi.IsValid(): 
    edi.SetTorsionAngle(phi, math.radians(-60))    
  if psi.IsValid(): 
    edi.SetTorsionAngle(psi, math.radians(-45))    
  
edi.UpdateXCS()

g=gfx.Entity('helix', e.Select('aname=CA,N,O,C,CB'))
scene.Add(g)
scene.SetCenter(g.GetCenter())