Esempio n. 1
0
    def test1():
        obj = cuemol.createObj("Vector")
        obj2 = cuemol.createObj("Vector")
        print "Result: ", obj.UID
        print "v.x =  ", obj.x
        obj.x = 123.456
        print "v.x =  ", obj.x
        obj.set4(1, 2, 3, 4)
        print "toString() =  ", obj.toString()

        return
Esempio n. 2
0
 def atomPropCol(mol):
     iter = cuemol.createObj("AtomIterator")
     iter.target = mol
     
     iter.first()
     i = 0;
     col = cuemol.createObj("Color")
     while iter.hasMore():
         atom = iter.get()
         col.setHSB(i/360.0, 1.0, 1.0)
         ccode = col.getCode()
         atom.setAtomPropInt("col", ccode)
         iter.next()
         i = i+131
Esempio n. 3
0
    def atomPropCol(mol):
        iter = cuemol.createObj("AtomIterator")
        iter.target = mol

        iter.first()
        i = 0
        col = cuemol.createObj("Color")
        while iter.hasMore():
            atom = iter.get()
            col.setHSB(i / 360.0, 1.0, 1.0)
            ccode = col.getCode()
            atom.setAtomPropInt("col", ccode)
            iter.next()
            i = i + 131
Esempio n. 4
0
def create_default_paint_coloring():
    rval = cm.createObj("PaintColoring")
    rval.append(cm.sel("sheet"), cm.col("SteelBlue"))
    rval.append(cm.sel("helix"), cm.col("khaki"))
    rval.append(cm.sel("nucleic"), cm.col("yellow"))
    rval.append(cm.sel("*"), cm.col("FloralWhite"))
    return rval
Esempio n. 5
0
    def __init__(self, aMol, aSel):
        molObj = cuemol.obj(aMol)
        selObj = cuemol.sel(aSel, molObj.scene_uid)

        self.mIter = cuemol.createObj("ResidIterator");
        self.mIter.target = molObj;
        self.mIter.sel = selObj;

        self.mIter.first()
Esempio n. 6
0
def rotateZ(aMol, aCen, aDeg, aSel=None):
    sel=aSel
    if sel is None:
        sel = cuemol.sel("*")
    else:
        sel = cuemol.sel(aSel)
        
    mat = cuemol.createObj("Matrix")
    mat.setRotate(aCen, cuemol.vec(0,0,1), aDeg)
    aMol.xformByMat(mat, sel)
Esempio n. 7
0
    def __init__(self, aMol, aSel="*"):
        molObj = cuemol.obj(aMol)
        #uid = molObj.uid
        selObj = cuemol.sel(aSel, molObj.scene_uid)

        self.mIter = cuemol.createObj("AtomIterator")
        self.mIter.target = molObj
        self.mIter.sel = selObj

        self.mIter.first()
Esempio n. 8
0
    def makeSel(self, selstr, uid):
        sel = cm.createObj("SelCommand")
        if uid:
            if not sel.compile(selstr, uid):
                return null

        else:
            if not sel.compile(selstr, 0):
                return null

        return sel
Esempio n. 9
0
    def test2():
        scm = cuemol.getService("SceneManager")
        scid = scm.activeSceneID
        print "Active scene ID=", scid
        sc = scm.getScene(scid)
        vwid = sc.activeViewID
        print "Active view ID=", vwid

        color = cuemol.createObj("Color")
        color.setCode(0xFFFFFF)
        sc.bgcolor = color
Esempio n. 10
0
def shift(aMol, aShift, aSel=None, aNotify=True):
    sel = aSel
    if sel is None:
        sel = cuemol.sel("*")
    else:
        sel = cuemol.sel(aSel)

    mat = cuemol.createObj("Matrix")
    mat.setTranslate(aShift)
    aMol.xformByMat(mat, sel)
    if aNotify:
        aMol.fireAtomsMoved()
Esempio n. 11
0
def rotate(aMol, aCen, aAxis, aDeg, aSel=None, aNotify=True):
    sel = aSel
    if sel is None:
        sel = cuemol.sel("*")
    else:
        sel = cuemol.sel(aSel)

    mat = cuemol.createObj("Matrix")
    mat.setRotate(aCen, aAxis, aDeg)
    aMol.xformByMat(mat, sel)
    if aNotify:
        aMol.fireAtomsMoved()
Esempio n. 12
0
    def readPDB(fname):

        # Create Mol & Register to the scene
        mol = cuemol.createObj("MolCoord");

        for line in open(fname):
            #    print "PDB: ", line;
            if line[0:6] in ["ATOM  ", "HETATM"]:
                aname = line[12:16].strip(  )
                altloc = line[16:17]
                resn = line[17:20].strip(  )
                chn = line[21:22]
                resid = int( line[22:26] )
                ins = line[26:27]
                posx = float( line[30:38] )
                posy = float( line[38:46] )
                posz = float( line[46:54] )
                occ = float( line[54:60] )
                bfac = float( line[60:66] )
                elem = line[76:78].strip()
                
            else:        
                print "PDB: ", line
                continue

            # print "name=", aname
            atom = cuemol.createObj("MolAtom");
            atom.name = aname;
            atom.element = elem;
            atom.bfac = bfac;
            atom.occ = occ;
            
            vpos = cuemol.createObj("Vector");
            vpos.set3(posx, posy, posz);
            atom.pos = vpos;
            
            mol.appendAtom1(atom, chn, resid, resn);

        return mol
Esempio n. 13
0
    def readPDB(fname):

        # Create Mol & Register to the scene
        mol = cuemol.createObj("MolCoord")

        for line in open(fname):
            #    print "PDB: ", line;
            if line[0:6] in ["ATOM  ", "HETATM"]:
                aname = line[12:16].strip()
                altloc = line[16:17]
                resn = line[17:20].strip()
                chn = line[21:22]
                resid = int(line[22:26])
                ins = line[26:27]
                posx = float(line[30:38])
                posy = float(line[38:46])
                posz = float(line[46:54])
                occ = float(line[54:60])
                bfac = float(line[60:66])
                elem = line[76:78].strip()

            else:
                print "PDB: ", line
                continue

            # print "name=", aname
            atom = cuemol.createObj("MolAtom")
            atom.name = aname
            atom.element = elem
            atom.bfac = bfac
            atom.occ = occ

            vpos = cuemol.createObj("Vector")
            vpos.set3(posx, posy, posz)
            atom.pos = vpos

            mol.appendAtom1(atom, chn, resid, resn)

        return mol
Esempio n. 14
0
def forEachResid(aMol, aSel, aFn):
    molObj = cuemol.obj(aMol)

    selObj = cuemol.sel(aSel, molObj.scene_uid)

    iter = cuemol.createObj("ResidIterator");

    iter.target = molObj;
    iter.sel = selObj;

    iter.first()
    while True:
        if not iter.hasMore():
            break
        resid = iter.get()
        if aFn(resid):
            break
        iter.next()
Esempio n. 15
0
 def makeSel(mol, selstr):
     selobj = cuemol.createObj("SelCommand");
     uid = mol.scene_uid
     if (not selobj.compile(selstr, uid)):
         return null
     return selobj
Esempio n. 16
0
            ccode = col.getCode()
            atom.setAtomPropInt("col", ccode)
            iter.next()
            i = i+131

    ##############################

    scm = cuemol.getService("SceneManager")
#    scid = scm.activeSceneID;
#    scene = scm.getScene(scid);
    scene = scm.getScene(scene_id);

    # view = scm.getView(scene.activeViewID);
    view = scm.getView(view_id);

    mol = readPDB(fname)
    mol.name = "PLP"
    scene.addObject(mol)
    mol.applyTopology()

    rend = createRend(mol, "simple", "*");
    # rend.applyStyles("DefaultCPK,DefaultCPKColoring");
    rend.name = "simple1"
    rend.coloring = cuemol.createObj("AtomPropColoring");

    atomPropCol(mol)

    pos = rend.getCenter();
    view.setViewCenter(pos);
    
Esempio n. 17
0
    def test3():
        scm = cuemol.getService("SceneManager")
        scid = scm.activeSceneID
        print "Active scene ID=", scid
        scene = scm.getScene(scid)

        #print "scene = "+str(scene)

        mol = cuemol.createObj("MolCoord")

        fname = '/Users/user/Dropbox/works/test_data/1CRN.pdb'

        for line in open(fname):
            #print "PDB: ", line;
            if line[0:6] in ["ATOM  ", "HETATM"]:
                aname = line[12:16].strip()
                altloc = line[16:17]
                resn = line[17:20].strip()
                chn = line[21:22]
                resid = int(line[22:26])
                ins = line[26:27]
                posx = float(line[30:38])
                posy = float(line[38:46])
                posz = float(line[46:54])
                occ = float(line[54:60])
                bfac = float(line[60:66])
                elem = line[76:78].strip()
            else:
                print "PDB: ", line
                continue

            # print "name=", aname
            atom = cuemol.createObj("MolAtom")
            atom.name = aname
            atom.element = elem
            atom.bfac = bfac
            atom.occ = occ

            vpos = cuemol.createObj("Vector")
            vpos.set3(posx, posy, posz)
            atom.pos = vpos

            mol.appendAtom1(atom, chn, resid, resn)

        # apply topology
        mol.applyTopology()
        mol.name = "Mol"

        # calc 2nry str
        mgr = cuemol.getService("MolAnlManager")
        mgr.calcProt2ndry2(mol, True, 0.0)

        # Register to the scene
        scene.addObject(mol)

        # Create simple renderer
        rend = mol.createRenderer("simple")
        rend.name = "simple1"
        rend.applyStyles("DefaultCPKColoring")

        vwid = scene.activeViewID
        print "Active view ID=", vwid
        view = scm.getView(vwid)
        view.setViewCenter(rend.getCenter())

        return
Esempio n. 18
0
import cuemol

# Create new scene
scm = cuemol.getService("SceneManager")
scene = scm.createScene()

mol = cuemol.createObj("MolCoord")

# Register to the scene
scene.addObject(mol)

#####

fname = '/net3/ishitani/PLP.pdb'

for line in open(fname):
    #    print "PDB: ", line;
    if line[0:6] in ["ATOM  ", "HETATM"]:
        aname = line[12:16].strip()
        altloc = line[16:17]
        resn = line[17:20].strip()
        chn = line[21:22]
        resid = int(line[22:26])
        ins = line[26:27]
        posx = float(line[30:38])
        posy = float(line[38:46])
        posz = float(line[46:54])
        occ = float(line[54:60])
        bfac = float(line[60:66])
        elem = line[76:78].strip()
Esempio n. 19
0
import cuemol

import wx

print "wc.veersion= "+wx.version()

print "scene ID = "+str(scene_id);
print "view ID = "+str(view_id);

scm = cuemol.getService("SceneManager");
scene = scm.getScene(scene_id);

print "scene.uid = "+str(scene.uid);

color = cuemol.createObj("Color");
color.setCode(0xFFFFFF);
scene.bgcolor = color;
Esempio n. 20
0
            col.setHSB(i / 360.0, 1.0, 1.0)
            ccode = col.getCode()
            atom.setAtomPropInt("col", ccode)
            iter.next()
            i = i + 131

    ##############################

    scm = cuemol.getService("SceneManager")
    #    scid = scm.activeSceneID;
    #    scene = scm.getScene(scid);
    scene = scm.getScene(scene_id)

    # view = scm.getView(scene.activeViewID);
    view = scm.getView(view_id)

    mol = readPDB(fname)
    mol.name = "PLP"
    scene.addObject(mol)
    mol.applyTopology()

    rend = createRend(mol, "simple", "*")
    # rend.applyStyles("DefaultCPK,DefaultCPKColoring");
    rend.name = "simple1"
    rend.coloring = cuemol.createObj("AtomPropColoring")

    atomPropCol(mol)

    pos = rend.getCenter()
    view.setViewCenter(pos)
Esempio n. 21
0
 def makeSel(mol, selstr):
     selobj = cuemol.createObj("SelCommand")
     uid = mol.scene_uid
     if (not selobj.compile(selstr, uid)):
         return null
     return selobj
Esempio n. 22
0
import cuemol

import wx

print "wc.veersion= " + wx.version()

print "scene ID = " + str(scene_id)
print "view ID = " + str(view_id)

scm = cuemol.getService("SceneManager")
scene = scm.getScene(scene_id)

print "scene.uid = " + str(scene.uid)

color = cuemol.createObj("Color")
color.setCode(0xFFFFFF)
scene.bgcolor = color
Esempio n. 23
0
import cuemol

# Create new scene
scm = cuemol.getService("SceneManager");
scene = scm.createScene();

mol = cuemol.createObj("MolCoord");

# Register to the scene
scene.addObject(mol);

#####

fname = '/net3/ishitani/PLP.pdb';

for line in open(fname):
#    print "PDB: ", line;
    if line[0:6] in ["ATOM  ", "HETATM"]:
        aname = line[12:16].strip(  )
        altloc = line[16:17]
        resn = line[17:20].strip(  )
        chn = line[21:22]
        resid = int( line[22:26] )
        ins = line[26:27]
        posx = float( line[30:38] )
        posy = float( line[38:46] )
        posz = float( line[46:54] )
        occ = float( line[54:60] )
        bfac = float( line[60:66] )
        elem = line[76:78].strip()