org.jmol.modelsetbio
Class BioPolymer

java.lang.Object
  extended by org.jmol.modelset.Polymer
      extended by org.jmol.modelsetbio.BioPolymer
Direct Known Subclasses:
AlphaPolymer, CarbohydratePolymer, NucleicPolymer, PhosphorusPolymer

public abstract class BioPolymer
extends Polymer


Field Summary
(package private)  java.util.BitSet bsSelectedMonomers
           
protected  Model model
           
(package private)  int monomerCount
           
(package private)  Monomer[] monomers
           
private static java.lang.String[] qColor
           
private  int selectedMonomerCount
           
private  float sheetSmoothing
           
private  javax.vecmath.Vector3f unitVectorX
           
 
Fields inherited from class org.jmol.modelset.Polymer
leadAtomIndices, leadMidpoints, leadPoints, sheetPoints, type, TYPE_AMINO, TYPE_CARBOHYDRATE, TYPE_NUCLEIC, TYPE_OTHER, wingVectors
 
Constructor Summary
BioPolymer(Monomer[] monomers)
           
 
Method Summary
(package private) static BioPolymer allocateBioPolymer(Group[] groups, int firstGroupIndex, boolean checkConnections)
           
private  void calcLeadMidpointsAndWingVectors(boolean getNewPoints)
           
protected  boolean calcPhiPsiAngles()
           
 void calcSelectedMonomersCount(java.util.BitSet bsSelected)
           
 void clearStructures()
           
 void findNearestAtomIndex(int xMouse, int yMouse, Atom[] closest, short[] mads, int myVisibilityFlag)
           
 javax.vecmath.Point3f[] getControlPoints(boolean isTraceAlpha, float sheetSmoothing, boolean invalidate)
           
(package private)  int getIndex(char chainID, int seqcode)
           
(package private)  javax.vecmath.Point3f getInitiatorPoint()
           
 int[] getLeadAtomIndices()
           
(package private)  void getLeadMidPoint(int groupIndex, javax.vecmath.Point3f midPoint)
           
 javax.vecmath.Point3f[] getLeadMidpoints()
           
(package private)  javax.vecmath.Point3f getLeadPoint(int monomerIndex)
           
(package private)  void getLeadPoint(int groupIndex, javax.vecmath.Point3f midPoint)
           
(package private)  javax.vecmath.Point3f[] getLeadPoints()
           
 int getMonomerCount()
           
 Monomer[] getMonomers()
           
static void getPdbData(BioPolymer p, char ctype, char qtype, int derivType, boolean isDraw, java.util.BitSet bsAtoms, java.lang.StringBuffer pdbATOM, java.lang.StringBuffer pdbCONECT, java.util.BitSet bsSelected, boolean addHeader, java.util.BitSet bsWritten)
           
(package private)  javax.vecmath.Point3f getPointPoint(int polymerIndex)
           
 java.util.Hashtable getPolymerInfo(java.util.BitSet bs)
           
 int getPolymerPointsAndVectors(int last, java.util.BitSet bs, java.util.Vector vList, boolean isTraceAlpha, float sheetSmoothing)
           
 void getPolymerSequenceAtoms(int iModel, int iPolymer, int group1, int nGroups, java.util.BitSet bsInclude, java.util.BitSet bsResult)
           
 ProteinStructure getProteinStructure(int monomerIndex)
           
private static float getQuaternionStraightness(java.lang.String id, Quaternion dqprev, Quaternion dq)
           
(package private)  int getSelectedMonomerCount()
           
 java.lang.String getSequence()
           
private  javax.vecmath.Point3f[] getSheetPoints(float sheetSmoothing)
           
(package private)  javax.vecmath.Point3f getTerminatorPoint()
           
(package private)  javax.vecmath.Point3f getWingPoint(int polymerIndex)
           
 javax.vecmath.Vector3f[] getWingVectors()
           
(package private)  boolean hasWingPoints()
           
(package private)  boolean isMonomerSelected(int i)
           
 void recalculateLeadMidpointsAndWingVectors()
           
(package private)  void removeProteinStructure(int monomerIndex, int count)
           
 void setConformation(java.util.BitSet bsSelected, int nAltLocsInModel)
           
 
Methods inherited from class org.jmol.modelset.Polymer
addSecondaryStructure, calcHydrogenBonds, calculateStructures, freeze, getPdbData, getType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

monomers

Monomer[] monomers

monomerCount

int monomerCount

model

protected Model model

sheetSmoothing

private float sheetSmoothing

unitVectorX

private final javax.vecmath.Vector3f unitVectorX

selectedMonomerCount

private int selectedMonomerCount

bsSelectedMonomers

java.util.BitSet bsSelectedMonomers

qColor

private static final java.lang.String[] qColor
Constructor Detail

BioPolymer

BioPolymer(Monomer[] monomers)
Method Detail

getMonomers

public Monomer[] getMonomers()

getMonomerCount

public int getMonomerCount()

allocateBioPolymer

static BioPolymer allocateBioPolymer(Group[] groups,
                                     int firstGroupIndex,
                                     boolean checkConnections)

clearStructures

public void clearStructures()
Overrides:
clearStructures in class Polymer

removeProteinStructure

void removeProteinStructure(int monomerIndex,
                            int count)

getLeadAtomIndices

public int[] getLeadAtomIndices()

getIndex

int getIndex(char chainID,
             int seqcode)

getLeadPoint

final javax.vecmath.Point3f getLeadPoint(int monomerIndex)

getInitiatorPoint

final javax.vecmath.Point3f getInitiatorPoint()

getTerminatorPoint

final javax.vecmath.Point3f getTerminatorPoint()

getLeadMidPoint

void getLeadMidPoint(int groupIndex,
                     javax.vecmath.Point3f midPoint)

getLeadPoint

void getLeadPoint(int groupIndex,
                  javax.vecmath.Point3f midPoint)

hasWingPoints

boolean hasWingPoints()

getWingPoint

final javax.vecmath.Point3f getWingPoint(int polymerIndex)

getPointPoint

final javax.vecmath.Point3f getPointPoint(int polymerIndex)

setConformation

public void setConformation(java.util.BitSet bsSelected,
                            int nAltLocsInModel)
Overrides:
setConformation in class Polymer

recalculateLeadMidpointsAndWingVectors

public void recalculateLeadMidpointsAndWingVectors()
Overrides:
recalculateLeadMidpointsAndWingVectors in class Polymer

getLeadMidpoints

public javax.vecmath.Point3f[] getLeadMidpoints()
Overrides:
getLeadMidpoints in class Polymer

getLeadPoints

javax.vecmath.Point3f[] getLeadPoints()

getControlPoints

public javax.vecmath.Point3f[] getControlPoints(boolean isTraceAlpha,
                                                float sheetSmoothing,
                                                boolean invalidate)

getSheetPoints

private javax.vecmath.Point3f[] getSheetPoints(float sheetSmoothing)

getWingVectors

public final javax.vecmath.Vector3f[] getWingVectors()

calcLeadMidpointsAndWingVectors

private final void calcLeadMidpointsAndWingVectors(boolean getNewPoints)

findNearestAtomIndex

public void findNearestAtomIndex(int xMouse,
                                 int yMouse,
                                 Atom[] closest,
                                 short[] mads,
                                 int myVisibilityFlag)

getSelectedMonomerCount

int getSelectedMonomerCount()

calcSelectedMonomersCount

public void calcSelectedMonomersCount(java.util.BitSet bsSelected)
Overrides:
calcSelectedMonomersCount in class Polymer

isMonomerSelected

boolean isMonomerSelected(int i)

getPolymerPointsAndVectors

public int getPolymerPointsAndVectors(int last,
                                      java.util.BitSet bs,
                                      java.util.Vector vList,
                                      boolean isTraceAlpha,
                                      float sheetSmoothing)
Overrides:
getPolymerPointsAndVectors in class Polymer

getSequence

public java.lang.String getSequence()
Overrides:
getSequence in class Polymer

getPolymerInfo

public java.util.Hashtable getPolymerInfo(java.util.BitSet bs)
Overrides:
getPolymerInfo in class Polymer

getPolymerSequenceAtoms

public void getPolymerSequenceAtoms(int iModel,
                                    int iPolymer,
                                    int group1,
                                    int nGroups,
                                    java.util.BitSet bsInclude,
                                    java.util.BitSet bsResult)
Overrides:
getPolymerSequenceAtoms in class Polymer

getProteinStructure

public ProteinStructure getProteinStructure(int monomerIndex)

calcPhiPsiAngles

protected boolean calcPhiPsiAngles()

getPdbData

public static final void getPdbData(BioPolymer p,
                                    char ctype,
                                    char qtype,
                                    int derivType,
                                    boolean isDraw,
                                    java.util.BitSet bsAtoms,
                                    java.lang.StringBuffer pdbATOM,
                                    java.lang.StringBuffer pdbCONECT,
                                    java.util.BitSet bsSelected,
                                    boolean addHeader,
                                    java.util.BitSet bsWritten)

getQuaternionStraightness

private static float getQuaternionStraightness(java.lang.String id,
                                               Quaternion dqprev,
                                               Quaternion dq)