public abstract class ModelCollection extends BondCollection
AtomCollection.AtomSorter
BOND_GROWTH_INCREMENT, bondCount, bonds, bsAromatic, defaultCovalentMad, freeBonds, haveHiddenBonds, MAX_BONDS_LENGTH_TO_CACHE, MAX_NUM_TO_CACHE, moleculeCount, molecules, numCached
atomCount, atomNames, atoms, atomSerials, atomTensorList, atomTensors, atomTypes, bfactor100s, bsModulated, bspf, canSkipLoad, g3d, haveStraightness, hydrophobicities, ionicRadii, labeler, maxBondingRadius, occupancies, partialCharges, preserveState, surfaceDistance100s, TAINT_ATOMNAME, TAINT_ATOMNO, TAINT_ATOMTYPE, TAINT_COORD, TAINT_ELEMENT, TAINT_FORMALCHARGE, TAINT_HYDROPHOBICITY, TAINT_IONICRADIUS, TAINT_MAX, TAINT_OCCUPANCY, TAINT_PARTIALCHARGE, TAINT_TEMPERATURE, TAINT_VALENCE, TAINT_VANDERWAALS, TAINT_VIBRATION, tainted, userSettableValues, vibrations, viewer
Constructor and Description |
---|
ModelCollection() |
Modifier and Type | Method and Description |
---|---|
Atom |
addAtom(int modelIndex,
Group group,
int atomicAndIsotopeNumber,
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<Object> tensors,
boolean isHetero,
byte specialAtomID,
BS atomSymmetry) |
StateScript |
addStateScript(String script1,
BS bsBonds,
BS bsAtoms1,
BS bsAtoms2,
String script2,
boolean addFrameNumber,
boolean postDefinitions) |
(package private) void |
adjustAtomArrays(int[] map,
int i0,
int atomCount) |
boolean |
allowSpecAtom() |
void |
assignAtom(int atomIndex,
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 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) |
String |
getAltLocListInModel(int modelIndex) |
protected BS |
getAtomBitsMaybeDeleted(int tokType,
Object specInfo) |
int |
getAtomCountInModel(int modelIndex) |
Quaternion[] |
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
|
Map<String,Object> |
getAuxiliaryInfo(BS bsModels) |
javajs.util.P3 |
getAverageAtomPoint() |
private BS |
getBasePairBits(String specInfo) |
Point3fi[] |
getBboxVertices() |
int |
getBioPolymerCount() |
int |
getBioPolymerCountInModel(int modelIndex) |
int |
getBondCountInModel(int modelIndex)
for general use
|
javajs.util.P3 |
getBoundBoxCenter(int modelIndex) |
String |
getBoundBoxCommand(boolean withOptions) |
javajs.util.V3 |
getBoundBoxCornerVector() |
Map<String,Object> |
getBoundBoxInfo() |
BS |
getBoundBoxModels() |
String |
getBoundBoxOrientation(int type,
BS bsAtoms) |
BoxInfo |
getBoxInfo(BS bs,
float scale) |
javajs.util.P3[][] |
getCenterAndPoints(javajs.util.List<Object[]> vAtomSets,
boolean addCenters) |
int |
getChainCount(boolean addWater) |
int |
getChainCountInModel(int modelIndex,
boolean countWater) |
BS |
getConformation(int modelIndex,
int conformationIndex,
boolean doSet) |
EnumVdw |
getDefaultVdwType(int modelIndex) |
int[][] |
getDihedralMap(int[] alist) |
Point3fi |
getDynamicAtom(int i,
Point3fi pt) |
BS |
getElementsPresentBitSet(int modelIndex) |
String |
getFileHeader(int modelIndex) |
long |
getFrameDelayMs(int i) |
String |
getFrameTitle(int modelIndex) |
int |
getGroupAtom(Atom atom,
int offset,
String name) |
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) |
Map<String,String> |
getHeteroList(int modelIndex) |
String |
getInlineData(int modelIndex) |
int |
getInsertionCodeIndexInModel(int modelIndex,
char insertionCode) |
int |
getInsertionCountInModel(int modelIndex) |
private String |
getInsertionListInModel(int modelIndex) |
BS |
getIterativeModels(boolean allowJmolData)
only some models can be iterated through.
|
int |
getJmolDataFrameIndex(int modelIndex,
String type) |
int |
getJmolDataSourceFrame(int modelIndex) |
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.
|
String |
getModelAtomProperty(Atom atom,
String text) |
Map<String,Object> |
getModelAuxiliaryInfo(int modelIndex) |
protected boolean |
getModelAuxiliaryInfoBoolean(int modelIndex,
String keyName) |
protected int |
getModelAuxiliaryInfoInt(int modelIndex,
String keyName) |
Object |
getModelAuxiliaryInfoValue(int modelIndex,
String key) |
BS |
getModelBitSet(BS atomList,
boolean allTrajectories) |
int[] |
getModelCellRange(int modelIndex) |
String |
getModelCml(BS bs,
int atomsMax,
boolean addBonds) |
javajs.util.V3 |
getModelDipole(int modelIndex) |
String |
getModelFileName(int modelIndex) |
int |
getModelFileNumber(int modelIndex) |
String |
getModelFileType(int modelIndex) |
int |
getModelIndexFromId(String id) |
String |
getModelInfoAsString() |
BS |
getModelKitStateBitset(BS bs,
BS bsDeleted) |
String |
getModelName(int modelIndex) |
int |
getModelNumber(int modelIndex) |
String |
getModelNumberDotted(int modelIndex) |
String |
getModelNumberForAtomLabel(int modelIndex) |
Orientation |
getModelOrientation(int modelIndex) |
Properties |
getModelProperties(int modelIndex) |
String |
getModelProperty(int modelIndex,
String property) |
Map<String,Object> |
getModelSetAuxiliaryInfo() |
boolean |
getModelSetAuxiliaryInfoBoolean(String keyName) |
Object |
getModelSetAuxiliaryInfoValue(String keyName) |
Properties |
getModelSetProperties() |
String |
getModelSetProperty(String propertyName) |
int |
getModelSymmetryCount(int modelIndex) |
String |
getModelTitle(int modelIndex) |
javajs.util.List<Object> |
getModulationList(BS bs,
String type,
javajs.util.P3 t456) |
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.
|
String |
getPdbAtomData(BS bs,
javajs.util.OC out)
PDB or PQR only
|
String |
getPdbData(int modelIndex,
String type,
BS bsSelected,
Object[] parameters,
javajs.util.OC out) |
String |
getPDBHeader(int modelIndex) |
javajs.util.List<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) |
String |
getProteinStructureState(BS bsAtoms,
boolean taintedOnly,
boolean needPhiPsi,
int mode) |
AtomIndexIterator |
getSelectedAtomIterator(BS bsSelected,
boolean isGreaterOnly,
boolean modelZeroBased,
boolean hemisphereOnly,
boolean isMultiModel) |
BS |
getSequenceBits(String specInfo,
BS bs) |
Map<EnumStructure,float[]> |
getStructureList() |
String |
getSymmetryInfoAsString() |
private String |
getSymmetryInfoAsStringForModel(int modelIndex) |
String |
getSymmetryInfoString(int modelIndex,
String spaceGroup,
int symOp,
javajs.util.P3 pt1,
javajs.util.P3 pt2,
String drawID,
boolean labelOnly) |
SymmetryInterface |
getSymTemp(boolean forceNew) |
int |
getTrajectoryIndex(int modelIndex) |
SymmetryInterface |
getUnitCell(int modelIndex) |
SymmetryInterface |
getUnitCellForAtom(int index) |
String |
getUnitCellInfoText() |
protected void |
growAtomArrays(int newLength) |
boolean |
haveModelKit() |
protected void |
initializeBspf() |
protected void |
initializeBspt(int modelIndex) |
javajs.util.List<Object> |
intersectPlane(javajs.util.P4 plane,
javajs.util.List<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 minDistance,
float maxDistance,
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,
String sValue,
float[] values,
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,
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(String type,
int modelIndex,
int modelDataIndex) |
void |
setModelAuxiliaryInfo(int modelIndex,
Object key,
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,
EnumStructure type) |
boolean |
setRotationRadius(int modelIndex,
float angstroms) |
(package private) void |
setStructureIndexes() |
void |
setStructureList(Map<EnumStructure,float[]> structureList) |
void |
setUnitCellOffset(SymmetryInterface unitCell,
javajs.util.P3 pt,
int ijk) |
addHBond, assignAromaticBonds, assignAromaticBondsBs, bondAtoms, bondMutually, checkValencesAndBond, dBb, dBm, deleteAllBonds2, deleteConnections, displayBonds, getAtomBitsMDb, getBondAt, getBondAtom1, getBondAtom2, getBondColix1, getBondColix2, getBondIterator, getBondIteratorForType, getBondModelIndex, getBondOrder, getBondOrderFull, getBondRadius, getBondsForSelectedAtoms, getDefaultMadFromOrder, releaseModelSetBC, removeUnnecessaryBonds, resetAromatic, resetMolecules, setBond, setBondOrder, setBondParameters, setBondParametersBS
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, getChainBits, getClickableSet, getElementName, getElementNumber, getElementSymbol, getHaveStraightness, getHelixData, getHybridizationAndAxes, getHydrophobicity, getImplicitHydrogenCount, getIonicRadii, getLabeler, getMaxVanderwaalsRadius, getPartialCharges, getQuaternion, getRadiusVdwJmol, 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, setBsHidden, setElement, setFormalCharges, setHaveStraightness, setHydrophobicity, setIonicRadius, setOccupancy, setPartialCharge, setPreserveState, setTaintedAtoms, setVibrationVector, taintAtom, taintAtoms, unTaintAtoms, validateBspf, validateBspfForModel
protected BS bsSymmetry
public String modelSetName
public Model[] models
public int modelCount
public SymmetryInterface[] unitCells
public boolean haveUnitCells
protected int[] modelNumbers
protected int[] modelFileNumbers
protected String[] modelNumbersForAtomLabel
protected String[] modelNames
public String[] frameTitles
protected BS[] elementsPresent
protected boolean isXYZ
protected boolean isPDB
public Properties modelSetProperties
protected boolean someModelsHaveSymmetry
protected boolean someModelsHaveAromaticBonds
protected boolean someModelsHaveFractionalCoordinates
protected final javajs.util.P3 ptTemp
private final javajs.util.P3 averageAtomPoint
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 shapeManager
private final javajs.util.P3 ptTemp1
private final javajs.util.P3 ptTemp2
private static float hbondMin
public boolean proteinStructureTainted
private SymmetryInterface symTemp
private Quaternion[] 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<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 String getModelName(int modelIndex)
public String getModelTitle(int modelIndex)
public String getModelFileName(int modelIndex)
public String getModelFileType(int modelIndex)
public String getFrameTitle(int modelIndex)
public 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 getAverageAtomPoint()
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 String getBoundBoxCommand(boolean withOptions)
public EnumVdw 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<Object[]> vAtomSets, boolean addCenters)
vAtomSets
- addCenters
- public javajs.util.P3 getAtomSetCenter(BS bs)
protected void setAPm(BS bs, int tok, int iValue, float fValue, String sValue, float[] values, String[] list)
public StateScript addStateScript(String script1, BS bsBonds, BS bsAtoms1, BS bsAtoms2, String script2, boolean addFrameNumber, boolean postDefinitions)
protected 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)
public void setProteinType(BS bs, EnumStructure type)
void freezeModels()
public Map<EnumStructure,float[]> getStructureList()
public void setStructureList(Map<EnumStructure,float[]> structureList)
public BS getConformation(int modelIndex, int conformationIndex, boolean doSet)
public Properties getModelSetProperties()
public boolean getModelSetAuxiliaryInfoBoolean(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 String getModelNumberDotted(int modelIndex)
public int getModelNumber(int modelIndex)
public int getModelFileNumber(int modelIndex)
public Properties getModelProperties(int modelIndex)
protected boolean getModelAuxiliaryInfoBoolean(int modelIndex, String keyName)
protected int getModelAuxiliaryInfoInt(int modelIndex, String keyName)
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 Quaternion[] getAtomGroupQuaternions(BS bsAtoms, int nMax, char qtype)
public String getPdbAtomData(BS bs, javajs.util.OC out)
bs
- selected atomsout
- StringXBuilder or BufferedWriterpublic String getPdbData(int modelIndex, String type, BS bsSelected, Object[] parameters, javajs.util.OC out)
public boolean isJmolDataFrameForModel(int modelIndex)
private boolean isJmolDataFrameForAtom(Atom atom)
public void setJmolDataFrame(String type, int modelIndex, int modelDataIndex)
public int getJmolDataFrameIndex(int modelIndex, String type)
protected void clearDataFrameReference(int modelIndex)
public String getJmolFrameType(int modelIndex)
public int getJmolDataSourceFrame(int modelIndex)
public void saveModelOrientation(int modelIndex, Orientation orientation)
public Orientation getModelOrientation(int modelIndex)
public String getPDBHeader(int modelIndex)
public String getFileHeader(int modelIndex)
public int getAltLocIndexInModel(int modelIndex, char alternateLocationID)
public int getInsertionCodeIndexInModel(int modelIndex, char insertionCode)
public String getAltLocListInModel(int modelIndex)
private String getInsertionListInModel(int modelIndex)
public int getModelSymmetryCount(int modelIndex)
public String getSymmetryInfoString(int modelIndex, String spaceGroup, int symOp, javajs.util.P3 pt1, javajs.util.P3 pt2, String drawID, boolean labelOnly)
public int[] getModelCellRange(int modelIndex)
public int getLastVibrationVector(int modelIndex, int tok)
public javajs.util.List<Object> getModulationList(BS bs, String type, javajs.util.P3 t456)
public BS getElementsPresentBitSet(int modelIndex)
private 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!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)
public void deleteBonds(BS bsBonds, boolean isFullModel)
protected int[] makeConnections2(float minDistance, float maxDistance, 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 String getProteinStructureState(BS bsAtoms, boolean taintedOnly, boolean needPhiPsi, int mode)
public String getModelInfoAsString()
public String getSymmetryInfoAsString()
public String getUnitCellInfoText()
public SymmetryInterface getSymTemp(boolean forceNew)
public void createModels(int n)
protected void deleteModel(int modelIndex, int firstAtomIndex, int nAtoms, BS bsAtoms, BS bsBonds)
public String getMoInfo(int modelIndex)
public void assignAtom(int atomIndex, String type, boolean autoBond)
public void deleteAtoms(BS bs)
void adjustAtomArrays(int[] map, int i0, int atomCount)
protected void growAtomArrays(int newLength)
public Atom addAtom(int modelIndex, Group group, int atomicAndIsotopeNumber, 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<Object> tensors, boolean isHetero, byte specialAtomID, BS atomSymmetry)
public 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(String id)
id
- 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 javajs.util.List<Object> intersectPlane(javajs.util.P4 plane, javajs.util.List<Object> v, int i)
public SymmetryInterface getUnitCellForAtom(int index)