Package org.jmol.modelsetbio
Class BioPolymer
- java.lang.Object
-
- org.jmol.modelsetbio.BioPolymer
-
- All Implemented Interfaces:
Structure
- Direct Known Subclasses:
AlphaPolymer,CarbohydratePolymer,PhosphorusPolymer
public abstract class BioPolymer extends java.lang.Object implements Structure
A "BioPolymer" is a constructed set of contiguous (probably connected) "Monomers", which may be one of Alpha (Calpha atoms), Amino (Calpha + backbone), Phosphorus (P atoms), Nucleic (DNA/RNA), or Carbohydrate. BioPolymers are constructed after file loading and after various changes that might affect secondary structure. BioPolymers are not Chains. Chains are set at load time and just constitute collections of unique chain identifiers in the file.
-
-
Field Summary
Fields Modifier and Type Field Description intbioPolymerIndexInModel(package private) BSbsSelectedMonomersprotected javajs.util.P3[]controlPointsintcyclicFlagprotected booleanhasStructureprotected booleanhasWingPointsbooleanhaveParametersprotected booleaninvalidControlprivate booleaninvalidLeadprotected int[]leadAtomIndicesprotected javajs.util.P3[]leadMidpointsprotected javajs.util.P3[]leadPointsModelmodelintmonomerCountMonomer[]monomersBSreversedprivate intselectedMonomerCountprotected floatsheetSmoothingbooleantwistedSheetsprotected inttypeprotected static intTYPE_AMINOprotected static intTYPE_CARBOHYDRATEprotected static intTYPE_NOBONDINGprotected static intTYPE_NUCLEICprivate javajs.util.V3unitVectorXprotected javajs.util.V3[]wingVectors
-
Constructor Summary
Constructors Modifier Constructor Description protectedBioPolymer()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected booleancalcEtaThetaAngles()private voidcalcLeadMidpointsAndWingVectors()booleancalcParameters()protected booleancalcPhiPsiAngles()voidcalcRasmolHydrogenBonds(BioPolymer polymer, BS bsA, BS bsB, javajs.util.Lst<Bond> vHBonds, int nMaxPerResidue, int[][][] min, boolean checkDistances, boolean dsspIgnoreHydrogens)voidcalcSelectedMonomersCount(BS bsSelected)protected floatcalculateRamachandranHelixAngle(int m, char qtype)voidclearStructures()voidfindNearestAtomIndex(int xMouse, int yMouse, Atom[] closest, short[] mads, int myVisibilityFlag, BS bsNot)protected javajs.util.P3getControlPoint(int i, javajs.util.V3 v)javajs.util.P3[]getControlPoints(boolean isTraceAlpha, float sheetSmoothing, boolean invalidate)private javajs.util.P3[]getControlPoints2(float sheetSmoothing)protected intgetIndex(int chainID, int seqcode, int istart, int iend)private javajs.util.P3getInitiatorPoint()int[]getLeadAtomIndices()(package private) voidgetLeadMidPoint(int i, javajs.util.P3 midPoint)javajs.util.P3[]getLeadMidpoints()(package private) javajs.util.P3getLeadPoint(int monomerIndex)(package private) javajs.util.P3[]getLeadPoints()intgetPolymerPointsAndVectors(int last, BS bs, javajs.util.Lst<javajs.util.P3[]> vList, boolean isTraceAlpha, float sheetSmoothing)voidgetPolymerSequenceAtoms(int group1, int nGroups, BS bsInclude, BS bsResult)ProteinStructuregetProteinStructure(int monomerIndex)voidgetRange(BS bs, boolean isMutated)voidgetRangeGroups(int nResidues, BS bsAtoms, BS bsResult)(package private) intgetSelectedMonomerCount()java.lang.StringgetSequence()private javajs.util.P3getTerminatorPoint()intgetType()(package private) javajs.util.P3getWingPoint(int polymerIndex)javajs.util.V3[]getWingVectors()booleanisCyclic()(package private) booleanisMonomerSelected(int i)booleanisNucleic()voidrecalculateLeadMidpointsAndWingVectors()protected voidresetHydrogenPoints()protected voidset(Monomer[] monomers)voidsetAtomBits(BS bs)voidsetAtomBitsAndClear(BS bs, BS bsOut)voidsetConformation(BS bsSelected)
-
-
-
Field Detail
-
model
public Model model
-
monomers
public Monomer[] monomers
-
hasStructure
protected boolean hasStructure
-
leadMidpoints
protected javajs.util.P3[] leadMidpoints
-
leadPoints
protected javajs.util.P3[] leadPoints
-
controlPoints
protected javajs.util.P3[] controlPoints
-
wingVectors
protected javajs.util.V3[] wingVectors
-
leadAtomIndices
protected int[] leadAtomIndices
-
type
protected int type
-
bioPolymerIndexInModel
public int bioPolymerIndexInModel
-
monomerCount
public int monomerCount
-
TYPE_NOBONDING
protected static final int TYPE_NOBONDING
- See Also:
- Constant Field Values
-
TYPE_AMINO
protected static final int TYPE_AMINO
- See Also:
- Constant Field Values
-
TYPE_NUCLEIC
protected static final int TYPE_NUCLEIC
- See Also:
- Constant Field Values
-
TYPE_CARBOHYDRATE
protected static final int TYPE_CARBOHYDRATE
- See Also:
- Constant Field Values
-
cyclicFlag
public int cyclicFlag
-
invalidLead
private boolean invalidLead
-
invalidControl
protected boolean invalidControl
-
sheetSmoothing
protected float sheetSmoothing
-
hasWingPoints
protected boolean hasWingPoints
-
reversed
public BS reversed
-
twistedSheets
public boolean twistedSheets
-
unitVectorX
private final javajs.util.V3 unitVectorX
-
selectedMonomerCount
private int selectedMonomerCount
-
bsSelectedMonomers
BS bsSelectedMonomers
-
haveParameters
public boolean haveParameters
-
-
Method Detail
-
set
protected void set(Monomer[] monomers)
-
setAtomBits
public void setAtomBits(BS bs)
- Specified by:
setAtomBitsin interfaceStructure
-
setAtomBitsAndClear
public void setAtomBitsAndClear(BS bs, BS bsOut)
- Specified by:
setAtomBitsAndClearin interfaceStructure
-
getRange
public void getRange(BS bs, boolean isMutated)
-
clearStructures
public void clearStructures()
-
getLeadAtomIndices
public int[] getLeadAtomIndices()
-
getIndex
protected int getIndex(int chainID, int seqcode, int istart, int iend)
-
getLeadPoint
final javajs.util.P3 getLeadPoint(int monomerIndex)
-
getInitiatorPoint
private final javajs.util.P3 getInitiatorPoint()
-
getTerminatorPoint
private final javajs.util.P3 getTerminatorPoint()
-
getLeadMidPoint
void getLeadMidPoint(int i, javajs.util.P3 midPoint)
-
getWingPoint
final javajs.util.P3 getWingPoint(int polymerIndex)
-
setConformation
public void setConformation(BS bsSelected)
-
recalculateLeadMidpointsAndWingVectors
public void recalculateLeadMidpointsAndWingVectors()
-
resetHydrogenPoints
protected void resetHydrogenPoints()
-
getLeadMidpoints
public javajs.util.P3[] getLeadMidpoints()
-
getLeadPoints
javajs.util.P3[] getLeadPoints()
-
getControlPoints
public javajs.util.P3[] getControlPoints(boolean isTraceAlpha, float sheetSmoothing, boolean invalidate)
-
getControlPoints2
private javajs.util.P3[] getControlPoints2(float sheetSmoothing)
-
getControlPoint
protected javajs.util.P3 getControlPoint(int i, javajs.util.V3 v)- Parameters:
i-v-- Returns:
- the leadPoint unless a protein sheet residue (see AlphaPolymer)
-
getWingVectors
public final javajs.util.V3[] getWingVectors()
-
calcLeadMidpointsAndWingVectors
private final void calcLeadMidpointsAndWingVectors()
-
findNearestAtomIndex
public void findNearestAtomIndex(int xMouse, int yMouse, Atom[] closest, short[] mads, int myVisibilityFlag, BS bsNot)
-
getSelectedMonomerCount
int getSelectedMonomerCount()
-
calcSelectedMonomersCount
public void calcSelectedMonomersCount(BS bsSelected)
-
isMonomerSelected
boolean isMonomerSelected(int i)
-
getPolymerPointsAndVectors
public int getPolymerPointsAndVectors(int last, BS bs, javajs.util.Lst<javajs.util.P3[]> vList, boolean isTraceAlpha, float sheetSmoothing)
-
getSequence
public java.lang.String getSequence()
-
getPolymerSequenceAtoms
public void getPolymerSequenceAtoms(int group1, int nGroups, BS bsInclude, BS bsResult)
-
getProteinStructure
public ProteinStructure getProteinStructure(int monomerIndex)
- Parameters:
monomerIndex-- Returns:
- "HELIX" "TURN" etc
-
calcParameters
public boolean calcParameters()
-
calcEtaThetaAngles
protected boolean calcEtaThetaAngles()
-
calcPhiPsiAngles
protected boolean calcPhiPsiAngles()
-
calculateRamachandranHelixAngle
protected float calculateRamachandranHelixAngle(int m, char qtype)- Parameters:
m-qtype-- Returns:
- calculated value
-
isNucleic
public boolean isNucleic()
-
calcRasmolHydrogenBonds
public void calcRasmolHydrogenBonds(BioPolymer polymer, BS bsA, BS bsB, javajs.util.Lst<Bond> vHBonds, int nMaxPerResidue, int[][][] min, boolean checkDistances, boolean dsspIgnoreHydrogens)
- Parameters:
polymer-bsA-bsB-vHBonds-nMaxPerResidue-min-checkDistances-dsspIgnoreHydrogens-
-
getType
public int getType()
-
isCyclic
public boolean isCyclic()
-
-