public abstract class ModelCollection extends BondCollection
AtomCollection.AtomSorter
Modifier and Type | Field and Description |
---|---|
Model[] |
am |
private BS |
bboxAtoms |
private BS |
bboxModels |
private BoxInfo |
boxInfo |
protected BS |
bsAll |
protected BS |
bsSymmetry |
protected BS[] |
elementsPresent |
java.lang.String[] |
frameTitles |
boolean |
haveUnitCells |
private static float |
hbondMin |
java.util.Hashtable<java.lang.String,BS> |
htPeaks |
private boolean |
isBbcageDefault |
protected boolean |
isPDB |
protected boolean |
isXYZ |
int |
mc
model count
|
protected int[] |
modelFileNumbers |
protected java.lang.String[] |
modelNames |
protected int[] |
modelNumbers |
protected java.lang.String[] |
modelNumbersForAtomLabel |
protected java.util.Map<java.lang.String,java.lang.Object> |
modelSetAuxiliaryInfo |
java.lang.String |
modelSetName |
java.util.Properties |
modelSetProperties |
boolean |
proteinStructureTainted |
protected javajs.util.P3 |
ptTemp |
private javajs.util.P3 |
ptTemp1 |
private javajs.util.P3 |
ptTemp2 |
private BS |
selectedMolecules |
(package private) boolean |
showRebondTimes |
ShapeManager |
sm |
protected boolean |
someModelsHaveAromaticBonds |
protected boolean |
someModelsHaveFractionalCoordinates |
protected boolean |
someModelsHaveSymmetry |
javajs.util.List<StateScript> |
stateScripts |
private SymmetryInterface |
symTemp |
private int |
thisStateModel |
javajs.util.List<javajs.util.P3[]> |
trajectorySteps |
private Triangulator |
triangulator |
SymmetryInterface[] |
unitCells |
protected javajs.util.List<javajs.util.V3[]> |
vibrationSteps |
private javajs.util.Quat[] |
vOrientations |
bo, BOND_GROWTH_INCREMENT, bondCount, bsAromatic, defaultCovalentMad, freeBonds, haveHiddenBonds, MAX_BONDS_LENGTH_TO_CACHE, MAX_NUM_TO_CACHE, moleculeCount, molecules, numCached
ac, at, atomNames, atomSerials, atomTensorList, atomTensors, atomTypes, averageAtomPoint, bfactor100s, bondingRadii, bsClickable, bsModulated, bspf, bsVisible, canSkipLoad, g3d, haveBSClickable, haveBSVisible, haveStraightness, hydrophobicities, labeler, maxBondingRadius, occupancies, partialCharges, preserveState, surfaceDistance100s, TAINT_ATOMNAME, TAINT_ATOMNO, TAINT_ATOMTYPE, TAINT_BONDINGRADIUS, TAINT_COORD, TAINT_ELEMENT, TAINT_FORMALCHARGE, TAINT_HYDROPHOBICITY, TAINT_MAX, TAINT_OCCUPANCY, TAINT_PARTIALCHARGE, TAINT_TEMPERATURE, TAINT_VALENCE, TAINT_VANDERWAALS, TAINT_VIBRATION, tainted, userSettableValues, vibrations, vwr
Constructor and Description |
---|
ModelCollection() |
Modifier and Type | Method and Description |
---|---|
Atom |
addAtom(int modelIndex,
Group group,
int atomicAndIsotopeNumber,
java.lang.String atomName,
int atomSerial,
int atomSite,
javajs.util.P3 xyz,
float radius,
javajs.util.V3 vib,
int formalCharge,
float partialCharge,
int occupancy,
float bfactor,
javajs.util.List<java.lang.Object> tensors,
boolean isHetero,
byte specialAtomID,
BS atomSymmetry) |
StateScript |
addStateScript(java.lang.String script1,
BS bsBonds,
BS bsAtoms1,
BS bsAtoms2,
java.lang.String script2,
boolean addFrameNumber,
boolean postDefinitions) |
(package private) void |
adjustAtomArrays(int[] map,
int i0,
int ac) |
boolean |
allowSpecAtom() |
void |
assignAtom(int atomIndex,
java.lang.String type,
boolean autoBond) |
private int |
autoBond_Pre_11_9_24(BS bsA,
BS bsB,
BS bsExclude,
BS bsBonds,
short mad) |
private int[] |
autoBond(BS bsA,
BS bsB,
BS bsBonds,
boolean isBonds,
boolean matchHbond,
boolean legacyAutoBond) |
int |
autoBondBs4(BS bsA,
BS bsB,
BS bsExclude,
BS bsBonds,
short mad,
boolean preJmol11_9_24) |
int |
autoHbond(BS bsA,
BS bsB,
boolean onlyIfHaveCalculated)
a generalized formation of HBONDS, carried out in relation to calculate
HBONDS {atomsFrom} {atomsTo}.
|
int |
calcAtomsMinMax(BS bs,
BoxInfo boxInfo) |
void |
calcBoundBoxDimensions(BS bs,
float scale) |
void |
calcRasmolHydrogenBonds(BS bsA,
BS bsB,
javajs.util.List<Bond> vHBonds,
boolean nucleicOnly,
int nMax,
boolean dsspIgnoreHydrogens,
BS bsHBonds)
These are not actual hydrogen bonds.
|
float |
calcRotationRadius(int modelIndex,
javajs.util.P3 center) |
float |
calcRotationRadiusBs(BS bs) |
void |
calcSelectedGroupsCount(BS bsSelected) |
void |
calcSelectedMoleculesCount(BS bsSelected) |
void |
calcSelectedMonomersCount(BS bsSelected) |
javajs.util.V3 |
calculateMolecularDipole(int modelIndex) |
protected void |
calculatePolymers(Group[] groups,
int groupCount,
int baseGroupIndex,
BS modelsExcluded) |
void |
calculateStraightness() |
protected java.lang.String |
calculateStructuresAllExcept(BS alreadyDefined,
boolean asDSSP,
boolean doReport,
boolean dsspIgnoreHydrogen,
boolean setStructure,
boolean includeAlpha)
allows rebuilding of PDB structures; also accessed by ModelManager from
Eval
|
int |
calculateStruts(BS bs1,
BS bs2)
see comments in org.jmol.modelsetbio.AlphaPolymer.java
Struts are calculated for atoms in bs1 connecting to atoms in bs2.
|
protected int |
calculateStrutsMC(BS bs1,
BS bs2) |
private void |
calcUnitCellMinMax() |
private static javajs.util.P3 |
checkMinAttachedAngle(Atom atom1,
float minAngle,
javajs.util.V3 v1,
javajs.util.V3 v2,
boolean haveHAtoms) |
protected void |
clearDataFrameReference(int modelIndex) |
void |
connect(float[][] connections) |
void |
createModels(int n) |
void |
deleteAtoms(BS bs) |
void |
deleteBonds(BS bsBonds,
boolean isFullModel) |
protected void |
deleteModel(int modelIndex,
int firstAtomIndex,
int nAtoms,
BS bsAtoms,
BS bsBonds) |
void |
fillAtomData(AtomData atomData,
int mode) |
(package private) void |
freezeModels() |
int |
getAltLocCountInModel(int modelIndex) |
int |
getAltLocIndexInModel(int modelIndex,
char alternateLocationID) |
java.lang.String |
getAltLocListInModel(int modelIndex) |
protected BS |
getAtomBitsMaybeDeleted(int tokType,
java.lang.Object specInfo) |
int |
getAtomCountInModel(int modelIndex) |
javajs.util.Quat[] |
getAtomGroupQuaternions(BS bsAtoms,
int nMax,
char qtype) |
BS |
getAtomsConnected(float min,
float max,
int intType,
BS bs) |
javajs.util.P3 |
getAtomSetCenter(BS bs) |
BS |
getAtomsWithin(float distance,
javajs.util.P3 coord,
BS bsResult,
int modelIndex) |
BS |
getAtomsWithinRD(float distance,
BS bs,
boolean withinAllModels,
RadiusData rd)
Get atoms within a specific distance of any atom in a specific set of atoms
either within all models or within just the model(s) of those atoms
|
java.util.Map<java.lang.String,java.lang.Object> |
getAuxiliaryInfo(BS bsModels) |
javajs.util.P3 |
getAverageAtomPoint() |
private BS |
getBasePairBits(java.lang.String specInfo) |
Point3fi[] |
getBboxVertices() |
int |
getBioPolymerCount() |
int |
getBioPolymerCountInModel(int modelIndex) |
int |
getBondCountInModel(int modelIndex)
for general use
|
javajs.util.P3 |
getBoundBoxCenter(int modelIndex) |
java.lang.String |
getBoundBoxCommand(boolean withOptions) |
javajs.util.V3 |
getBoundBoxCornerVector() |
BS |
getBoundBoxModels() |
java.lang.String |
getBoundBoxOrientation(int type,
BS bsAtoms) |
BoxInfo |
getBoxInfo(BS bs,
float scale) |
javajs.util.P3[][] |
getCenterAndPoints(javajs.util.List<java.lang.Object[]> vAtomSets,
boolean addCenters) |
int |
getChainCount(boolean addWater) |
int |
getChainCountInModel(int modelIndex,
boolean countWater) |
BS |
getConformation(int modelIndex,
int conformationIndex,
boolean doSet) |
VDW |
getDefaultVdwType(int modelIndex) |
int[][] |
getDihedralMap(int[] alist) |
Point3fi |
getDynamicAtom(int i,
Point3fi pt) |
BS |
getElementsPresentBitSet(int modelIndex) |
java.lang.String |
getFileHeader(int modelIndex) |
long |
getFrameDelayMs(int i) |
java.lang.String |
getFrameTitle(int modelIndex) |
int |
getGroupCount() |
int |
getGroupCountInModel(int modelIndex) |
Group[] |
getGroups()
In versions earlier than 12.1.51, groups[] was a field of ModelCollection.
|
BS |
getGroupsWithin(int nResidues,
BS bs) |
java.util.Map<java.lang.String,java.lang.String> |
getHeteroList(int modelIndex) |
java.lang.String |
getInlineData(int modelIndex) |
int |
getInsertionCodeIndexInModel(int modelIndex,
char insertionCode) |
int |
getInsertionCountInModel(int modelIndex) |
private java.lang.String |
getInsertionListInModel(int modelIndex) |
BS |
getIterativeModels(boolean allowJmolData)
only some models can be iterated through.
|
int |
getJmolDataFrameIndex(int modelIndex,
java.lang.String type) |
int |
getJmolDataSourceFrame(int modelIndex) |
java.lang.String |
getJmolFrameType(int modelIndex) |
int |
getLastVibrationVector(int modelIndex,
int tok) |
BS |
getModelAtomBitSetIncludingDeleted(int modelIndex,
boolean asCopy)
Note that this method returns all atoms, included deleted ones.
|
BS |
getModelAtomBitSetIncludingDeletedBs(BS bsModels)
note -- this method returns ALL atoms, including deleted.
|
java.lang.String |
getModelAtomProperty(Atom atom,
java.lang.String text) |
java.util.Map<java.lang.String,java.lang.Object> |
getModelAuxiliaryInfo(int modelIndex) |
protected boolean |
getModelAuxiliaryInfoBoolean(int modelIndex,
java.lang.String keyName) |
protected int |
getModelAuxiliaryInfoInt(int modelIndex,
java.lang.String keyName) |
java.lang.Object |
getModelAuxiliaryInfoValue(int modelIndex,
java.lang.String key) |
BS |
getModelBitSet(BS atomList,
boolean allTrajectories) |
int[] |
getModelCellRange(int modelIndex) |
java.lang.String |
getModelCml(BS bs,
int atomsMax,
boolean addBonds) |
javajs.util.V3 |
getModelDipole(int modelIndex) |
java.lang.String |
getModelFileName(int modelIndex) |
int |
getModelFileNumber(int modelIndex) |
java.lang.String |
getModelFileType(int modelIndex) |
int |
getModelIndexFromId(java.lang.String id) |
java.lang.String |
getModelInfoAsString() |
BS |
getModelKitStateBitset(BS bs,
BS bsDeleted) |
java.lang.String |
getModelName(int modelIndex) |
int |
getModelNumber(int modelIndex) |
java.lang.String |
getModelNumberDotted(int modelIndex) |
java.lang.String |
getModelNumberForAtomLabel(int modelIndex) |
Orientation |
getModelOrientation(int modelIndex) |
java.util.Properties |
getModelProperties(int modelIndex) |
java.lang.String |
getModelProperty(int modelIndex,
java.lang.String property) |
java.util.Map<java.lang.String,java.lang.Object> |
getModelSetAuxiliaryInfo() |
boolean |
getModelSetAuxiliaryInfoBoolean(java.lang.String keyName) |
java.lang.Object |
getModelSetAuxiliaryInfoValue(java.lang.String keyName) |
java.util.Properties |
getModelSetProperties() |
java.lang.String |
getModelSetProperty(java.lang.String propertyName) |
int |
getModelSymmetryCount(int modelIndex) |
java.lang.String |
getModelTitle(int modelIndex) |
javajs.util.List<java.lang.Object> |
getModulationList(BS bs,
java.lang.String type,
javajs.util.P3 t456) |
java.lang.String |
getMoInfo(int modelIndex) |
BS |
getMoleculeBitSet(BS bs) |
BS |
getMoleculeBitSetForAtom(int atomIndex) |
int |
getMoleculeCountInModel(int modelIndex) |
int |
getMoleculeIndex(int atomIndex,
boolean inModel) |
JmolMolecule[] |
getMolecules() |
private BS |
getNotInCentroid(BS bs,
int[] minmax) |
float[] |
getNotionalUnitcell()
deprecated due to multimodel issues, but required by an interface -- do NOT
remove.
|
java.lang.String |
getPdbAtomData(BS bs,
javajs.util.OC out)
PDB or PQR only
|
java.lang.String |
getPdbData(int modelIndex,
java.lang.String type,
BS bsSelected,
java.lang.Object[] parameters,
javajs.util.OC out) |
java.lang.String |
getPDBHeader(int modelIndex) |
javajs.util.List<java.lang.Object> |
getPlaneIntersection(int type,
javajs.util.P4 plane,
float scale,
int flags,
SymmetryInterface uc) |
javajs.util.P3[] |
getPolymerLeadMidPoints(int iModel,
int iPolymer) |
void |
getPolymerPointsAndVectors(BS bs,
javajs.util.List<javajs.util.P3[]> vList,
boolean isTraceAlpha,
float sheetSmoothing) |
java.lang.String |
getProteinStructureState(BS bsAtoms,
boolean taintedOnly,
boolean needPhiPsi,
int mode) |
AtomIndexIterator |
getSelectedAtomIterator(BS bsSelected,
boolean isGreaterOnly,
boolean modelZeroBased,
boolean hemisphereOnly,
boolean isMultiModel) |
BS |
getSequenceBits(java.lang.String specInfo,
BS bs) |
java.util.Map<STR,float[]> |
getStructureList() |
java.lang.String |
getSymmetryInfoAsString() |
private java.lang.String |
getSymmetryInfoAsStringForModel(int modelIndex) |
java.lang.String |
getSymmetryInfoString(int modelIndex,
java.lang.String spaceGroup,
int symOp,
javajs.util.P3 pt1,
javajs.util.P3 pt2,
java.lang.String drawID,
boolean labelOnly) |
SymmetryInterface |
getSymTemp(boolean forceNew) |
int |
getTrajectoryIndex(int modelIndex) |
SymmetryInterface |
getUnitCell(int modelIndex) |
SymmetryInterface |
getUnitCellForAtom(int index) |
protected void |
growAtomArrays(int newLength) |
boolean |
haveModelKit() |
protected void |
initializeBspf() |
protected void |
initializeBspt(int modelIndex) |
javajs.util.List<java.lang.Object> |
intersectPlane(javajs.util.P4 plane,
javajs.util.List<java.lang.Object> v,
int i) |
boolean |
isAtomAssignable(int i) |
boolean |
isAtomPDB(int i) |
private boolean |
isInLatticeCell(int i,
javajs.util.P3 cell,
javajs.util.P3 ptTemp,
boolean isAbsolute) |
private boolean |
isJmolDataFrameForAtom(Atom atom) |
boolean |
isJmolDataFrameForModel(int modelIndex) |
boolean |
isTrajectory(int modelIndex) |
boolean |
isTrajectoryMeasurement(int[] countPlusIndices) |
boolean |
isTrajectorySubFrame(int i) |
protected int[] |
makeConnections2(float minD,
float maxD,
int order,
int connectOperation,
BS bsA,
BS bsB,
BS bsBonds,
boolean isBonds,
boolean addGroup,
float energy) |
protected void |
mergeModelArrays(ModelSet mergeModelSet)
initial transfer of model data from old to new model set.
|
protected int |
mergeTrajectories(boolean isTrajectory) |
static int |
modelFileNumberFromFloat(float fDotM) |
void |
recalculateLeadMidpointsAndWingVectors(int modelIndex) |
protected void |
releaseModelSet() |
void |
saveModelOrientation(int modelIndex,
Orientation orientation) |
BS |
selectDisplayedTrajectories(BS bs) |
protected void |
setAPm(BS bs,
int tok,
int iValue,
float fValue,
java.lang.String sValue,
float[] values,
java.lang.String[] list) |
void |
setAtomNamesAndNumbers(int iFirst,
int baseAtomIndex,
AtomCollection mergeSet) |
void |
setBoundBox(javajs.util.P3 pt1,
javajs.util.P3 pt2,
boolean byCorner,
float scale) |
void |
setCentroid(BS bs,
int[] minmax)
deletes molecules based on: CENTROID -- molecular centroid is not in unit
cell CENTROID PACKED -- all molecule atoms are not in unit cell
|
BS |
setConformation(BS bsAtoms) |
boolean |
setCrystallographicDefaults() |
void |
setDefaultStructure(BS bsModels) |
void |
setFrameDelayMs(long millis,
BS bsModels) |
void |
setFrameTitle(BS bsFrames,
java.lang.Object title) |
void |
setIteratorForAtom(AtomIndexIterator iterator,
int modelIndex,
int atomIndex,
float distance,
RadiusData rd) |
void |
setIteratorForPoint(AtomIndexIterator iterator,
int modelIndex,
javajs.util.P3 pt,
float distance) |
void |
setJmolDataFrame(java.lang.String type,
int modelIndex,
int modelDataIndex) |
void |
setModelAuxiliaryInfo(int modelIndex,
java.lang.Object key,
java.lang.Object value) |
void |
setModelCage(int modelIndex,
SymmetryInterface simpleCage) |
void |
setModulation(BS bs,
boolean isOn,
javajs.util.P3 qtOffset,
boolean isQ)
Sets the modulation for all atoms in bs.
|
void |
setProteinType(BS bs,
STR type) |
boolean |
setRotationRadius(int modelIndex,
float angstroms) |
(package private) void |
setStructureIndexes() |
void |
setStructureList(java.util.Map<STR,float[]> structureList) |
void |
setUnitCellOffset(SymmetryInterface unitCell,
javajs.util.P3 pt,
int ijk) |
addHBond, assignAromaticBonds, assignAromaticBondsBs, bondAtoms, bondMutually, checkValencesAndBond, dBb, dBm, deleteAllBonds2, deleteConnections, displayBonds, fixD, getAtomBitsMDb, getBondAt, getBondAtom1, getBondAtom2, getBondColix1, getBondColix2, getBondIterator, getBondIteratorForType, getBondModelIndex, getBondOrder, getBondOrderFull, getBondRadius, getBondsForSelectedAtoms, getDefaultMadFromOrder, isInRange, releaseModelSetBC, removeUnnecessaryBonds, resetAromatic, resetMolecules, setBond, setBondOrder
addTensor, calculateHydrogens, calculateSurface, calculateVolume, chainToUpper, clearBfactorRange, deleteModelAtoms, fillADa, findAtomsInRectangle, findMaxRadii, findNearest2, fixFormalCharges, getAllAtomTensors, getAtomBitsMDa, getAtomChain, getAtomColix, getAtomCount, getAtomicCharges, getAtomIdentityInfo, getAtomIndexFromAtomNumber, getAtomIndices, getAtomInfo, getAtomInfoXYZ, getAtomName, getAtomNumber, getAtomPoint3f, getAtomPointVector, getAtomRadius, getAtomsWithin, getAtomsWithinBs, getAtomTensor, getAtomTensorList, getAtomTypes, getAtomVdwRadius, getBfactor100Hi, getBfactor100Lo, getBFactors, getBondingRadii, getChainBits, getClickableSet, getElementName, getElementNumber, getElementSymbol, getHaveStraightness, getHelixData, getHybridizationAndAxes, getHydrophobicity, getImplicitHydrogenCount, getLabeler, getMaxVanderwaalsRadius, getPartialCharges, getQuaternion, getRadiusVdwJmol, getRenderable, getSeqcodeBits, getSurfaceDistance100, getSurfaceDistanceMax, getTaintedAtoms, getUserSettableType, getVibration, getVibrationCoord, getVisibleSet, isAtomHidden, isCursorOnTopOf, isModulated, mergeAtomArrays, modelSetHasVibrationVectors, releaseModelSetAC, setAPa, setAtomCoord, setAtomCoord2, setAtomCoordRelative, setAtomData, setAtomName, setAtomNumber, setAtomsCoordRelative, setAtomTensors, setAtomType, setBFactor, setBondingRadius, setBsHidden, setElement, setFormalCharges, setHaveStraightness, setHydrophobicity, setOccupancy, setPartialCharge, setPreserveState, setTaintedAtoms, setVibrationVector, taintAtom, taintAtoms, unTaintAtoms, validateBspf, validateBspfForModel
protected BS bsSymmetry
public java.lang.String modelSetName
public Model[] am
public int mc
public SymmetryInterface[] unitCells
public boolean haveUnitCells
protected int[] modelNumbers
protected int[] modelFileNumbers
protected java.lang.String[] modelNumbersForAtomLabel
protected java.lang.String[] modelNames
public java.lang.String[] frameTitles
protected BS[] elementsPresent
protected boolean isXYZ
protected boolean isPDB
public java.util.Properties modelSetProperties
protected java.util.Map<java.lang.String,java.lang.Object> modelSetAuxiliaryInfo
protected boolean someModelsHaveSymmetry
protected boolean someModelsHaveAromaticBonds
protected boolean someModelsHaveFractionalCoordinates
protected final javajs.util.P3 ptTemp
private boolean isBbcageDefault
private BS bboxModels
private BS bboxAtoms
private final BoxInfo boxInfo
public javajs.util.List<StateScript> stateScripts
private int thisStateModel
public javajs.util.List<javajs.util.P3[]> trajectorySteps
protected javajs.util.List<javajs.util.V3[]> vibrationSteps
private BS selectedMolecules
boolean showRebondTimes
protected BS bsAll
public ShapeManager sm
private final javajs.util.P3 ptTemp1
private final javajs.util.P3 ptTemp2
private static float hbondMin
public boolean proteinStructureTainted
private SymmetryInterface symTemp
public java.util.Hashtable<java.lang.String,BS> htPeaks
private javajs.util.Quat[] vOrientations
private Triangulator triangulator
protected void mergeModelArrays(ModelSet mergeModelSet)
mergeModelSet
- protected void releaseModelSet()
releaseModelSet
in class BondCollection
public SymmetryInterface getUnitCell(int modelIndex)
public void setModelCage(int modelIndex, SymmetryInterface simpleCage)
public javajs.util.List<java.lang.Object> getPlaneIntersection(int type, javajs.util.P4 plane, float scale, int flags, SymmetryInterface uc)
type
- plane
- scale
- uc
- flags
- 1 -- edges only 2 -- triangles only 3 -- bothpublic java.lang.String getModelName(int modelIndex)
public java.lang.String getModelTitle(int modelIndex)
public java.lang.String getModelFileName(int modelIndex)
public java.lang.String getModelFileType(int modelIndex)
public void setFrameTitle(BS bsFrames, java.lang.Object title)
public java.lang.String getFrameTitle(int modelIndex)
public java.lang.String getModelNumberForAtomLabel(int modelIndex)
protected void calculatePolymers(Group[] groups, int groupCount, int baseGroupIndex, BS modelsExcluded)
public Group[] getGroups()
public float[] getNotionalUnitcell()
public boolean setCrystallographicDefaults()
public javajs.util.P3 getBoundBoxCenter(int modelIndex)
public javajs.util.V3 getBoundBoxCornerVector()
public Point3fi[] getBboxVertices()
public BS getBoundBoxModels()
public void setBoundBox(javajs.util.P3 pt1, javajs.util.P3 pt2, boolean byCorner, float scale)
public java.lang.String getBoundBoxCommand(boolean withOptions)
public VDW getDefaultVdwType(int modelIndex)
public boolean setRotationRadius(int modelIndex, float angstroms)
public float calcRotationRadius(int modelIndex, javajs.util.P3 center)
public void calcBoundBoxDimensions(BS bs, float scale)
private void calcUnitCellMinMax()
public float calcRotationRadiusBs(BS bs)
public javajs.util.P3[][] getCenterAndPoints(javajs.util.List<java.lang.Object[]> vAtomSets, boolean addCenters)
vAtomSets
- addCenters
- public javajs.util.P3 getAtomSetCenter(BS bs)
public javajs.util.P3 getAverageAtomPoint()
protected void setAPm(BS bs, int tok, int iValue, float fValue, java.lang.String sValue, float[] values, java.lang.String[] list)
public StateScript addStateScript(java.lang.String script1, BS bsBonds, BS bsAtoms1, BS bsAtoms2, java.lang.String script2, boolean addFrameNumber, boolean postDefinitions)
protected java.lang.String calculateStructuresAllExcept(BS alreadyDefined, boolean asDSSP, boolean doReport, boolean dsspIgnoreHydrogen, boolean setStructure, boolean includeAlpha)
alreadyDefined
- set to skip calculationasDSSP
- doReport
- dsspIgnoreHydrogen
- setStructure
- includeAlpha
- public void setDefaultStructure(BS bsModels)
void freezeModels()
public java.util.Map<STR,float[]> getStructureList()
public void setStructureList(java.util.Map<STR,float[]> structureList)
public BS getConformation(int modelIndex, int conformationIndex, boolean doSet)
public java.util.Map<java.lang.String,java.lang.String> getHeteroList(int modelIndex)
public java.util.Properties getModelSetProperties()
public java.util.Map<java.lang.String,java.lang.Object> getModelSetAuxiliaryInfo()
public java.lang.String getModelSetProperty(java.lang.String propertyName)
public java.lang.Object getModelSetAuxiliaryInfoValue(java.lang.String keyName)
public boolean getModelSetAuxiliaryInfoBoolean(java.lang.String keyName)
protected int mergeTrajectories(boolean isTrajectory)
public int getTrajectoryIndex(int modelIndex)
public boolean isTrajectory(int modelIndex)
public boolean isTrajectoryMeasurement(int[] countPlusIndices)
public BS getIterativeModels(boolean allowJmolData)
allowJmolData
- public boolean isTrajectorySubFrame(int i)
public void fillAtomData(AtomData atomData, int mode)
public java.lang.String getModelNumberDotted(int modelIndex)
public int getModelNumber(int modelIndex)
public int getModelFileNumber(int modelIndex)
public java.util.Properties getModelProperties(int modelIndex)
public java.lang.String getModelProperty(int modelIndex, java.lang.String property)
public java.util.Map<java.lang.String,java.lang.Object> getModelAuxiliaryInfo(int modelIndex)
public void setModelAuxiliaryInfo(int modelIndex, java.lang.Object key, java.lang.Object value)
public java.lang.Object getModelAuxiliaryInfoValue(int modelIndex, java.lang.String key)
protected boolean getModelAuxiliaryInfoBoolean(int modelIndex, java.lang.String keyName)
protected int getModelAuxiliaryInfoInt(int modelIndex, java.lang.String keyName)
public java.lang.String getModelAtomProperty(Atom atom, java.lang.String text)
public int getInsertionCountInModel(int modelIndex)
public static int modelFileNumberFromFloat(float fDotM)
public int getAltLocCountInModel(int modelIndex)
public int getChainCount(boolean addWater)
public int getBioPolymerCount()
public int getBioPolymerCountInModel(int modelIndex)
public void getPolymerPointsAndVectors(BS bs, javajs.util.List<javajs.util.P3[]> vList, boolean isTraceAlpha, float sheetSmoothing)
public void recalculateLeadMidpointsAndWingVectors(int modelIndex)
public javajs.util.P3[] getPolymerLeadMidPoints(int iModel, int iPolymer)
public int getChainCountInModel(int modelIndex, boolean countWater)
public int getGroupCount()
public int getGroupCountInModel(int modelIndex)
public void calcSelectedGroupsCount(BS bsSelected)
public void calcSelectedMonomersCount(BS bsSelected)
public void calcRasmolHydrogenBonds(BS bsA, BS bsB, javajs.util.List<Bond> vHBonds, boolean nucleicOnly, int nMax, boolean dsspIgnoreHydrogens, BS bsHBonds)
bsA
- bsB
- vHBonds
- vector of bonds to fill; if null, creates the HBondsnucleicOnly
- nMax
- dsspIgnoreHydrogens
- bsHBonds
- public void calculateStraightness()
public javajs.util.Quat[] getAtomGroupQuaternions(BS bsAtoms, int nMax, char qtype)
public java.lang.String getPdbAtomData(BS bs, javajs.util.OC out)
bs
- selected atomsout
- StringXBuilder or BufferedWriterpublic java.lang.String getPdbData(int modelIndex, java.lang.String type, BS bsSelected, java.lang.Object[] parameters, javajs.util.OC out)
public boolean isJmolDataFrameForModel(int modelIndex)
private boolean isJmolDataFrameForAtom(Atom atom)
public void setJmolDataFrame(java.lang.String type, int modelIndex, int modelDataIndex)
public int getJmolDataFrameIndex(int modelIndex, java.lang.String type)
protected void clearDataFrameReference(int modelIndex)
public java.lang.String getJmolFrameType(int modelIndex)
public int getJmolDataSourceFrame(int modelIndex)
public void saveModelOrientation(int modelIndex, Orientation orientation)
public Orientation getModelOrientation(int modelIndex)
public java.lang.String getPDBHeader(int modelIndex)
public java.lang.String getFileHeader(int modelIndex)
public int getAltLocIndexInModel(int modelIndex, char alternateLocationID)
public int getInsertionCodeIndexInModel(int modelIndex, char insertionCode)
public java.lang.String getAltLocListInModel(int modelIndex)
private java.lang.String getInsertionListInModel(int modelIndex)
public int getModelSymmetryCount(int modelIndex)
public java.lang.String getSymmetryInfoString(int modelIndex, java.lang.String spaceGroup, int symOp, javajs.util.P3 pt1, javajs.util.P3 pt2, java.lang.String drawID, boolean labelOnly)
public int[] getModelCellRange(int modelIndex)
public int getLastVibrationVector(int modelIndex, int tok)
public javajs.util.List<java.lang.Object> getModulationList(BS bs, java.lang.String type, javajs.util.P3 t456)
public BS getElementsPresentBitSet(int modelIndex)
private java.lang.String getSymmetryInfoAsStringForModel(int modelIndex)
public int getMoleculeIndex(int atomIndex, boolean inModel)
public BS getMoleculeBitSetForAtom(int atomIndex)
public javajs.util.V3 getModelDipole(int modelIndex)
public javajs.util.V3 calculateMolecularDipole(int modelIndex)
public int getMoleculeCountInModel(int modelIndex)
public void calcSelectedMoleculesCount(BS bsSelected)
public void setCentroid(BS bs, int[] minmax)
bs
- minmax
- fractional [xmin, ymin, zmin, xmax, ymax, zmax, 1=packed]public JmolMolecule[] getMolecules()
protected void initializeBspf()
protected void initializeBspt(int modelIndex)
public void setIteratorForPoint(AtomIndexIterator iterator, int modelIndex, javajs.util.P3 pt, float distance)
public void setIteratorForAtom(AtomIndexIterator iterator, int modelIndex, int atomIndex, float distance, RadiusData rd)
public AtomIndexIterator getSelectedAtomIterator(BS bsSelected, boolean isGreaterOnly, boolean modelZeroBased, boolean hemisphereOnly, boolean isMultiModel)
bsSelected
- isGreaterOnly
- modelZeroBased
- hemisphereOnly
- isMultiModel
- public int getBondCountInModel(int modelIndex)
BondCollection
getBondCountInModel
in class BondCollection
modelIndex
- the model of interest or -1 for allpublic int calculateStruts(BS bs1, BS bs2)
bs1
- bs2
- public int getAtomCountInModel(int modelIndex)
public BS getModelAtomBitSetIncludingDeletedBs(BS bsModels)
bsModels
- public BS getModelAtomBitSetIncludingDeleted(int modelIndex, boolean asCopy)
modelIndex
- asCopy
- MUST BE TRUE IF THE BITSET IS GOING TO BE MODIFIED!protected BS getAtomBitsMaybeDeleted(int tokType, java.lang.Object specInfo)
private boolean isInLatticeCell(int i, javajs.util.P3 cell, javajs.util.P3 ptTemp, boolean isAbsolute)
public BS getAtomsWithinRD(float distance, BS bs, boolean withinAllModels, RadiusData rd)
distance
- bs
- withinAllModels
- rd
- public BS getAtomsWithin(float distance, javajs.util.P3 coord, BS bsResult, int modelIndex)
private BS getBasePairBits(java.lang.String specInfo)
public void deleteBonds(BS bsBonds, boolean isFullModel)
protected int[] makeConnections2(float minD, float maxD, int order, int connectOperation, BS bsA, BS bsB, BS bsBonds, boolean isBonds, boolean addGroup, float energy)
public int autoBondBs4(BS bsA, BS bsB, BS bsExclude, BS bsBonds, short mad, boolean preJmol11_9_24)
private int autoBond_Pre_11_9_24(BS bsA, BS bsB, BS bsExclude, BS bsBonds, short mad)
private int[] autoBond(BS bsA, BS bsB, BS bsBonds, boolean isBonds, boolean matchHbond, boolean legacyAutoBond)
public int autoHbond(BS bsA, BS bsB, boolean onlyIfHaveCalculated)
bsA
- "from" set (must contain H if that is desired)bsB
- "to" setonlyIfHaveCalculated
- private static javajs.util.P3 checkMinAttachedAngle(Atom atom1, float minAngle, javajs.util.V3 v1, javajs.util.V3 v2, boolean haveHAtoms)
void setStructureIndexes()
public java.lang.String getProteinStructureState(BS bsAtoms, boolean taintedOnly, boolean needPhiPsi, int mode)
public java.lang.String getModelInfoAsString()
public java.lang.String getSymmetryInfoAsString()
public SymmetryInterface getSymTemp(boolean forceNew)
public void createModels(int n)
protected void deleteModel(int modelIndex, int firstAtomIndex, int nAtoms, BS bsAtoms, BS bsBonds)
public java.lang.String getMoInfo(int modelIndex)
public void assignAtom(int atomIndex, java.lang.String type, boolean autoBond)
public void deleteAtoms(BS bs)
public java.lang.String getModelCml(BS bs, int atomsMax, boolean addBonds)
void adjustAtomArrays(int[] map, int i0, int ac)
protected void growAtomArrays(int newLength)
public Atom addAtom(int modelIndex, Group group, int atomicAndIsotopeNumber, java.lang.String atomName, int atomSerial, int atomSite, javajs.util.P3 xyz, float radius, javajs.util.V3 vib, int formalCharge, float partialCharge, int occupancy, float bfactor, javajs.util.List<java.lang.Object> tensors, boolean isHetero, byte specialAtomID, BS atomSymmetry)
public java.lang.String getInlineData(int modelIndex)
public boolean isAtomPDB(int i)
public boolean isAtomAssignable(int i)
public boolean haveModelKit()
public void setAtomNamesAndNumbers(int iFirst, int baseAtomIndex, AtomCollection mergeSet)
iFirst
- 0 from ModelLoader.freeze; -1 from Viewer.assignAtombaseAtomIndex
- mergeSet
- public void setUnitCellOffset(SymmetryInterface unitCell, javajs.util.P3 pt, int ijk)
public void connect(float[][] connections)
public boolean allowSpecAtom()
public void setFrameDelayMs(long millis, BS bsModels)
public long getFrameDelayMs(int i)
public int getModelIndexFromId(java.lang.String id)
public java.util.Map<java.lang.String,java.lang.Object> getAuxiliaryInfo(BS bsModels)
public int[][] getDihedralMap(int[] alist)
public void setModulation(BS bs, boolean isOn, javajs.util.P3 qtOffset, boolean isQ)
bs
- isOn
- qtOffset
- multiples of q or just t.isQ
- true if multiples of q.public java.lang.String getBoundBoxOrientation(int type, BS bsAtoms)
public javajs.util.List<java.lang.Object> intersectPlane(javajs.util.P4 plane, javajs.util.List<java.lang.Object> v, int i)
public SymmetryInterface getUnitCellForAtom(int index)