It seems to me that there is a small problem with parsing pdb files  
that contain hydrogen atoms.  I don't see this problem with most pdb  
files.

--Chuck

Using 1GXX this code snippet produces the output below:

        private String[] getMoleculeElements(String script)
        {
                if(null != script)
                {
                        System.out.println("\nViewer.getMoleculeElements 
script: " + script);
                        MySelectionListener mySelectionListener = new 
MySelectionListener();
                        
getJmolViewer().addSelectionListener(mySelectionListener);
                
                        getJmolViewer().scriptWait(script);
        
                        int atomCount = getJmolViewer().getSelectionCount();
                        BitSet bitSet = 
mySelectionListener.getSelectionBitSet();
                        
                        
getJmolViewer().removeSelectionListener(mySelectionListener);
        
                        return extractArray(atomCount, bitSet);         
                }
                return null;
        }

        public String[] extractArray(int count, BitSet bitset)
        {
                ArrayList<String> arrayList = new ArrayList<String>();
                String current = null;
                int bitIndex = 0;
                for(int i=0; count != i; i++)
                {
                        bitIndex = bitset.nextSetBit(bitIndex);
                        String atomInfo = 
getJmolViewer().getAtomInfo(bitIndex++);
                        System.err.println("Viewer.extractArray atomInfo: " + 
atomInfo);
                }
                return arrayList.toArray(new String[0]);
        }
        
        class MySelectionListener implements JmolSelectionListener
        {
                BitSet selectionBitSet = null;
                public BitSet getSelectionBitSet()
                {
                        return this.selectionBitSet;
                }
                
                public synchronized void selectionChanged(BitSet 
selectionBitSet)
                {
                        this.selectionBitSet = (BitSet) selectionBitSet.clone();
                }
                
        }

Viewer.getMoleculeElements script: select none; select water;  ---  
SHOULD PRODUCE ON WATER
Viewer.extractArray atomInfo: [LYS]1:A.H1 #10
Viewer.extractArray atomInfo: [ARG]21:A.HH21 #341
Viewer.extractArray atomInfo: [THR]40:A.OG1 #613
Viewer.extractArray atomInfo: [THR]40:A.HG1 #618
Viewer.extractArray atomInfo: [SER]50:A.OG #753
Viewer.extractArray atomInfo: [SER]50:A.HG #758
Viewer.extractArray atomInfo: [ASN]59:A.HD22 #900
Viewer.extractArray atomInfo: [SER]60:A.HG #911
Viewer.extractArray atomInfo: [THR]69:A.OG1 #1056
Viewer.extractArray atomInfo: [THR]69:A.HG1 #1061
Viewer.extractArray atomInfo: [SER]100:A.OG #1502
Viewer.extractArray atomInfo: [SER]100:A.HG #1507
Viewer.extractArray atomInfo: [HOH]130:A.O #1962
Viewer.extractArray atomInfo: [HOH]130:A.H1 #1963
Viewer.extractArray atomInfo: [HOH]130:A.H2 #1964
Viewer.extractArray atomInfo: [HOH]131:A.O #1965
Viewer.extractArray atomInfo: [HOH]131:A.H1 #1966
Viewer.extractArray atomInfo: [HOH]131:A.H2 #1967
Viewer.extractArray atomInfo: [HOH]132:A.O #1968
Viewer.extractArray atomInfo: [HOH]132:A.H1 #1969
Viewer.extractArray atomInfo: [HOH]132:A.H2 #1970
Viewer.extractArray atomInfo: [HOH]133:A.O #1971
Viewer.extractArray atomInfo: [HOH]133:A.H1 #1972
Viewer.extractArray atomInfo: [HOH]133:A.H2 #1973
Viewer.extractArray atomInfo: [HOH]134:A.O #1974
Viewer.extractArray atomInfo: [HOH]134:A.H1 #1975
Viewer.extractArray atomInfo: [HOH]134:A.H2 #1976

Viewer.getMoleculeElements script: select none; select hetero xor  
water;  --- SHOULDN'T PRODUCE ANYTHING
Viewer.extractArray atomInfo: [LYS]1:A.H1 #10
Viewer.extractArray atomInfo: [ARG]21:A.HH21 #341
Viewer.extractArray atomInfo: [THR]40:A.OG1 #613
Viewer.extractArray atomInfo: [THR]40:A.HG1 #618
Viewer.extractArray atomInfo: [SER]50:A.OG #753
Viewer.extractArray atomInfo: [SER]50:A.HG #758
Viewer.extractArray atomInfo: [ASN]59:A.HD22 #900
Viewer.extractArray atomInfo: [SER]60:A.HG #911
Viewer.extractArray atomInfo: [THR]69:A.OG1 #1056
Viewer.extractArray atomInfo: [THR]69:A.HG1 #1061
Viewer.extractArray atomInfo: [SER]100:A.OG #1502
Viewer.extractArray atomInfo: [SER]100:A.HG #1507


------------------------------------------------------------------------------
Come build with us! The BlackBerry(R) Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9 - 12, 2009. Register now!
http://p.sf.net/sfu/devconference
_______________________________________________
Jmol-users mailing list
Jmol-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-users

Reply via email to