Revision: 21208
          http://sourceforge.net/p/jmol/code/21208
Author:   hansonr
Date:     2016-08-11 01:43:07 +0000 (Thu, 11 Aug 2016)
Log Message:
-----------
PyMOL reader upgrade -- complete and tested

Modified Paths:
--------------
    branches/v14_6/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLReader.java
    branches/v14_6/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLScene.java
    trunk/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLReader.java
    trunk/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLScene.java

Modified: 
branches/v14_6/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLReader.java
===================================================================
--- branches/v14_6/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLReader.java     
2016-08-10 21:51:12 UTC (rev 21207)
+++ branches/v14_6/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLReader.java     
2016-08-11 01:43:07 UTC (rev 21208)
@@ -557,10 +557,8 @@
         if (ns > stateCount)
           stateCount = ns;
         int nAtoms, nBonds;
-        Object o = listAt(pymolObject, 6).get(1);
-        haveBinaryArrays = AU.isAB(o);
         if (haveBinaryArrays) {
-          nBonds = ((byte[]) o).length / 20;
+          nBonds = ((byte[]) listAt(pymolObject, 6).get(1)).length / 20;
           nAtoms = ((byte[]) listAt(pymolObject, 7).get(1)).length / 120;
           n += nAtoms;
         } else {
@@ -1803,8 +1801,6 @@
   }
 
   static String stringAt(Lst<Object> list, int i) {
-    if (!AU.isAB(list.get(i)))
-      System.out.println("??");
     byte[] a = (byte[]) list.get(i);
     return (a.length == 0 ? " " : bytesToString(a));
   }
@@ -1812,7 +1808,7 @@
   static String bytesToString(Object object) {
     try {
       return new String((byte[]) object, "UTF-8");
-    } catch (UnsupportedEncodingException e) {
+    } catch (Exception e) {
       return object.toString();
     }
   }

Modified: branches/v14_6/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLScene.java
===================================================================
--- branches/v14_6/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLScene.java      
2016-08-10 21:51:12 UTC (rev 21207)
+++ branches/v14_6/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLScene.java      
2016-08-11 01:43:07 UTC (rev 21208)
@@ -432,6 +432,7 @@
     sname = "_!c_" + name + "_";
     Lst<Object> colorection = PyMOLReader.listAt(thisScene, 3);
     int n = colorection.size();
+    n -= n % 2;
     // [color/selEntry,color/selEntry,color/selEntry.....]
     // [3, 262,        0, 263,        4, 264,       .....]
     // see layer3/Selector.c SelectorColorectionApply

Modified: trunk/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLReader.java
===================================================================
--- trunk/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLReader.java      
2016-08-10 21:51:12 UTC (rev 21207)
+++ trunk/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLReader.java      
2016-08-11 01:43:07 UTC (rev 21208)
@@ -557,10 +557,8 @@
         if (ns > stateCount)
           stateCount = ns;
         int nAtoms, nBonds;
-        Object o = listAt(pymolObject, 6).get(1);
-        haveBinaryArrays = AU.isAB(o);
         if (haveBinaryArrays) {
-          nBonds = ((byte[]) o).length / 20;
+          nBonds = ((byte[]) listAt(pymolObject, 6).get(1)).length / 20;
           nAtoms = ((byte[]) listAt(pymolObject, 7).get(1)).length / 120;
           n += nAtoms;
         } else {
@@ -1803,8 +1801,6 @@
   }
 
   static String stringAt(Lst<Object> list, int i) {
-    if (!AU.isAB(list.get(i)))
-      System.out.println("??");
     byte[] a = (byte[]) list.get(i);
     return (a.length == 0 ? " " : bytesToString(a));
   }
@@ -1812,7 +1808,7 @@
   static String bytesToString(Object object) {
     try {
       return new String((byte[]) object, "UTF-8");
-    } catch (UnsupportedEncodingException e) {
+    } catch (Exception e) {
       return object.toString();
     }
   }

Modified: trunk/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLScene.java
===================================================================
--- trunk/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLScene.java       
2016-08-10 21:51:12 UTC (rev 21207)
+++ trunk/Jmol/src/org/jmol/adapter/readers/pymol/PyMOLScene.java       
2016-08-11 01:43:07 UTC (rev 21208)
@@ -432,6 +432,7 @@
     sname = "_!c_" + name + "_";
     Lst<Object> colorection = PyMOLReader.listAt(thisScene, 3);
     int n = colorection.size();
+    n -= n % 2;
     // [color/selEntry,color/selEntry,color/selEntry.....]
     // [3, 262,        0, 263,        4, 264,       .....]
     // see layer3/Selector.c SelectorColorectionApply

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. http://sdm.link/zohodev2dev
_______________________________________________
Jmol-commits mailing list
Jmol-commits@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/jmol-commits

Reply via email to