public final class Resolver extends java.lang.Object implements JmolBioResolver
Modifier and Type | Class and Description |
---|---|
protected class |
Resolver.BondSorter |
Modifier and Type | Field and Description |
---|---|
private static java.lang.String |
aaPlus |
private static java.lang.String |
aaSp2 |
private static java.lang.String |
allCarbohydrates
this form is used for counting groups in ModelSet
GLX added for 13.1.16
|
private static int[] |
argbsAmino |
private static int[] |
argbsChainAtom
some pastel colors
C0D0FF - pastel blue
B0FFB0 - pastel green
B0FFFF - pastel cyan
FFC0C8 - pink
FFC0FF - pastel magenta
FFFF80 - pastel yellow
FFDEAD - navajowhite
FFD070 - pastel gold
FF9898 - light coral
B4E444 - light yellow-green
C0C000 - light olive
FF8060 - light tomato
00FF7F - springgreen
cpk on; select atomno>100; label %i; color chain; select selected & hetero; cpk off
|
private static int[] |
argbsChainHetero |
private static int[] |
argbsShapely |
static int |
ATOMID_MAX |
private int |
baseBondIndex |
private BS |
bsAddedHydrogens |
private BS |
bsAddedMask |
private BS |
bsAssigned |
private BS |
bsAtomsForHs |
private static int |
group3Count |
static short |
group3NameCount |
private boolean |
haveHsAlready |
private java.lang.String[] |
hNames |
private java.util.Map<java.lang.String,java.lang.String> |
htBondMap |
private java.util.Map<java.lang.String,java.lang.Boolean> |
htGroupBonds |
private static java.util.Map<java.lang.String,java.lang.String[][]> |
htPdbBondInfo |
private static java.util.Map<java.lang.String,java.lang.Byte> |
htSpecialAtoms |
private int |
lastSetH |
private int |
maxSerial |
private ModelLoader |
ml |
private ModelSet |
ms |
private static java.lang.String |
naNoH |
static java.lang.String[] |
pdbBondInfo
pdbBondInfo describes in a compact way what the hydrogen atom
names are for each standard amino acid.
|
private static int[] |
pdbHydrogenCount |
private javajs.util.P4 |
plane |
(package private) static char[] |
predefinedGroup1Names |
private static java.lang.String[] |
predefinedGroup3Names |
private static java.lang.String[] |
specialAtomNames |
private javajs.util.V3 |
vAB |
private javajs.util.V3 |
vNorm |
private Viewer |
vwr |
Constructor and Description |
---|
Resolver() |
Modifier and Type | Method and Description |
---|---|
static short |
addGroup3Name(java.lang.String group3)
These can overrun 3 characters; that is not significant.
|
private void |
addHydrogens() |
void |
addImplicitHydrogenAtoms(JmolAdapter adapter,
int iGroup,
int nH) |
(package private) static BioPolymer |
allocateBioPolymer(Group[] groups,
int firstGroupIndex,
boolean checkConnections) |
private static boolean |
checkCarbohydrate(java.lang.String group3) |
private void |
defineStructure(STR subType,
java.lang.String structureID,
int serialID,
int strandCount,
int startChainID,
int startSequenceNumber,
char startInsertionCode,
int endChainID,
int endSequenceNumber,
char endInsertionCode,
int[] atomRange,
int[] modelRange,
BS bsAssigned) |
private void |
deleteAtoms(BS bsDeletedAtoms)
called from org.jmol.modelsetbio.resolver when adding hydrogens.
|
private void |
deleteUnneededAtoms()
Delete hydrogen atoms that are still in bsAddedHydrogens,
because they were not actually added.
|
Group |
distinguishAndPropagateGroup(Chain chain,
java.lang.String group3,
int seqcode,
int firstAtomIndex,
int maxAtomIndex,
int modelIndex,
int[] specialAtomIndexes,
Atom[] atoms) |
void |
finalizeHydrogens() |
private void |
finalizePdbCharges() |
private void |
finalizePdbMultipleBonds() |
private void |
fixAnnotations(int i,
java.lang.String name,
int type) |
java.lang.Object |
fixPropertyValue(BS bsAtoms,
java.lang.Object data,
boolean toHydrogens) |
boolean |
getAminoAcidValenceAndCharge(java.lang.String res,
java.lang.String name,
int[] ret)
returns an array if we have special hybridization or charge
|
int[] |
getArgbs(int tok) |
Model |
getBioModel(int modelIndex,
int trajectoryBaseIndex,
java.lang.String jmolData,
java.util.Properties modelProperties,
java.util.Map<java.lang.String,java.lang.Object> modelAuxiliaryInfo) |
private void |
getBondInfo(JmolAdapter adapter,
java.lang.String group3,
java.lang.Object model) |
short |
getGroupID(java.lang.String g3) |
static short |
getGroupIdFor(java.lang.String group3) |
private java.lang.String[][] |
getLigandBondInfo(JmolAdapter adapter,
java.lang.Object model,
java.lang.String group3)
reads PDB ligand CIF info and creates a bondInfo object.
|
private java.lang.String[][] |
getPdbBondInfo(java.lang.String group3,
boolean isLegacy) |
(package private) static java.lang.String |
getSpecialAtomName(int atomID) |
private static int |
getStandardPdbHydrogenCount(java.lang.String group3) |
void |
initializeHydrogenAddition() |
boolean |
isHetero(java.lang.String group3)
MMCif, Gromacs, MdTop, Mol2 readers only
|
boolean |
isKnownPDBGroup(java.lang.String g3) |
void |
iterateOverAllNewStructures(JmolAdapter adapter,
java.lang.Object atomSetCollection)
Pull in all spans of helix, etc.
|
static short |
knownGroupID(java.lang.String group3) |
byte |
lookupSpecialAtomID(java.lang.String name) |
void |
setGroupLists(int ipt) |
void |
setHaveHsAlready(boolean b) |
private void |
setHydrogen(int iTo,
int iAtom,
java.lang.String name,
javajs.util.P3 pt) |
JmolBioResolver |
setLoader(ModelLoader modelLoader) |
private void |
setStructure(JmolAdapterStructureIterator iterStructure)
note that istart and iend will be adjusted.
|
Resolver |
setViewer(Viewer vwr) |
private Viewer vwr
private javajs.util.V3 vAB
private javajs.util.V3 vNorm
private javajs.util.P4 plane
private ModelLoader ml
private ModelSet ms
private BS bsAddedMask
private int lastSetH
private int maxSerial
private boolean haveHsAlready
private BS bsAddedHydrogens
private BS bsAtomsForHs
private java.util.Map<java.lang.String,java.lang.String> htBondMap
private java.util.Map<java.lang.String,java.lang.Boolean> htGroupBonds
private java.lang.String[] hNames
private int baseBondIndex
private BS bsAssigned
private static java.util.Map<java.lang.String,java.lang.String[][]> htPdbBondInfo
public static final java.lang.String[] pdbBondInfo
private static final int[] pdbHydrogenCount
private static final java.lang.String allCarbohydrates
private static int group3Count
static final char[] predefinedGroup1Names
public static short group3NameCount
private static final java.lang.String[] predefinedGroup3Names
private static final java.lang.String naNoH
private static final java.lang.String aaSp2
private static final java.lang.String aaPlus
private static final java.lang.String[] specialAtomNames
public static final int ATOMID_MAX
private static java.util.Map<java.lang.String,java.lang.Byte> htSpecialAtoms
private static final int[] argbsAmino
private static final int[] argbsChainAtom
private static final int[] argbsChainHetero
private static final int[] argbsShapely
public JmolBioResolver setLoader(ModelLoader modelLoader)
setLoader
in interface JmolBioResolver
public Resolver setViewer(Viewer vwr)
setViewer
in interface JmolBioResolver
public Model getBioModel(int modelIndex, int trajectoryBaseIndex, java.lang.String jmolData, java.util.Properties modelProperties, java.util.Map<java.lang.String,java.lang.Object> modelAuxiliaryInfo)
getBioModel
in interface JmolBioResolver
public Group distinguishAndPropagateGroup(Chain chain, java.lang.String group3, int seqcode, int firstAtomIndex, int maxAtomIndex, int modelIndex, int[] specialAtomIndexes, Atom[] atoms)
distinguishAndPropagateGroup
in interface JmolBioResolver
public void setHaveHsAlready(boolean b)
setHaveHsAlready
in interface JmolBioResolver
public void initializeHydrogenAddition()
initializeHydrogenAddition
in interface JmolBioResolver
public void addImplicitHydrogenAtoms(JmolAdapter adapter, int iGroup, int nH)
addImplicitHydrogenAtoms
in interface JmolBioResolver
private void getBondInfo(JmolAdapter adapter, java.lang.String group3, java.lang.Object model)
private java.lang.String[][] getLigandBondInfo(JmolAdapter adapter, java.lang.Object model, java.lang.String group3)
adapter
- model
- group3
- public void finalizeHydrogens()
finalizeHydrogens
in interface JmolBioResolver
private void addHydrogens()
private void deleteUnneededAtoms()
private void deleteAtoms(BS bsDeletedAtoms)
bsDeletedAtoms
- private void fixAnnotations(int i, java.lang.String name, int type)
private void finalizePdbCharges()
private void finalizePdbMultipleBonds()
private void setHydrogen(int iTo, int iAtom, java.lang.String name, javajs.util.P3 pt)
public java.lang.Object fixPropertyValue(BS bsAtoms, java.lang.Object data, boolean toHydrogens)
fixPropertyValue
in interface JmolBioResolver
static BioPolymer allocateBioPolymer(Group[] groups, int firstGroupIndex, boolean checkConnections)
public void iterateOverAllNewStructures(JmolAdapter adapter, java.lang.Object atomSetCollection)
iterateOverAllNewStructures
in interface JmolBioResolver
adapter
- atomSetCollection
- private void setStructure(JmolAdapterStructureIterator iterStructure)
iterStructure
- private void defineStructure(STR subType, java.lang.String structureID, int serialID, int strandCount, int startChainID, int startSequenceNumber, char startInsertionCode, int endChainID, int endSequenceNumber, char endInsertionCode, int[] atomRange, int[] modelRange, BS bsAssigned)
public void setGroupLists(int ipt)
setGroupLists
in interface JmolBioResolver
public boolean isKnownPDBGroup(java.lang.String g3)
isKnownPDBGroup
in interface JmolBioResolver
public byte lookupSpecialAtomID(java.lang.String name)
lookupSpecialAtomID
in interface JmolBioResolver
private java.lang.String[][] getPdbBondInfo(java.lang.String group3, boolean isLegacy)
public static short knownGroupID(java.lang.String group3)
private static final boolean checkCarbohydrate(java.lang.String group3)
group3
- a potential group3 namepublic boolean isHetero(java.lang.String group3)
isHetero
in interface JmolBioResolver
private static int getStandardPdbHydrogenCount(java.lang.String group3)
public boolean getAminoAcidValenceAndCharge(java.lang.String res, java.lang.String name, int[] ret)
getAminoAcidValenceAndCharge
in interface JmolBioResolver
res
- name
- ret
- [0] (target valence) may be reduced by one for sp2 for C or O only
[1] will be set to 1 if positive (lysine or terminal N) or -1 if negative (OXT)
[2] will be set to 2 if sp2
[3] is supplied covalent bond countstatic final java.lang.String getSpecialAtomName(int atomID)
public int[] getArgbs(int tok)
getArgbs
in interface JmolBioResolver
public short getGroupID(java.lang.String g3)
getGroupID
in interface JmolBioResolver
public static short addGroup3Name(java.lang.String group3)
group3
- public static short getGroupIdFor(java.lang.String group3)