org.jmol.modelset
public abstract class ModelCollection extends BondCollection
Modifier and Type | Class and Description |
---|---|
static class |
ModelCollection.StateScript |
AtomCollection.AtomSorter
BOND_GROWTH_INCREMENT, bondCount, bonds, bsAromatic, bsHBondsRasmol, defaultCovalentMad, freeBonds, haveHiddenBonds, MAX_BONDS_LENGTH_TO_CACHE, MAX_NUM_TO_CACHE, moleculeCount, molecules, numCached
atomCount, atomNames, atoms, atomSerials, atomTypes, bfactor100s, bspf, ellipsoids, g3d, haveStraightness, hydrophobicities, ionicRadii, maxBondingRadius, occupancies, partialCharges, preserveState, surfaceDistance100s, TAINT_ATOMNAME, TAINT_ATOMNO, TAINT_ATOMTYPE, TAINT_COORD, TAINT_ELEMENT, TAINT_FORMALCHARGE, TAINT_HYDROPHOBICITY, TAINT_MAX, tainted, vibrationVectors, viewer
Constructor and Description |
---|
ModelCollection() |
Modifier and Type | Method and Description |
---|---|
protected Atom |
addAtom(int modelIndex,
Group group,
short atomicAndIsotopeNumber,
String atomName,
int atomSerial,
int atomSite,
float x,
float y,
float z) |
Atom |
addAtom(int modelIndex,
Group group,
short atomicAndIsotopeNumber,
String atomName,
int atomSerial,
int atomSite,
float x,
float y,
float z,
float radius,
float vectorX,
float vectorY,
float vectorZ,
int formalCharge,
float partialCharge,
int occupancy,
float bfactor,
Object[] ellipsoid,
boolean isHetero,
char alternateLocationID,
byte specialAtomID,
BitSet atomSymmetry) |
protected void |
addBioPolymerToModel(Polymer polymer,
Model model) |
private boolean |
addMolFile(StringBuffer mol,
BitSet bsAtoms,
BitSet bsBonds,
boolean asV3000,
Quaternion q) |
ModelCollection.StateScript |
addStateScript(String script1,
BitSet bsBonds,
BitSet bsAtoms1,
BitSet bsAtoms2,
String script2,
boolean addFrameNumber,
boolean postDefinitions) |
(package private) void |
adjustAtomArrays(int[] map,
int i0,
int atomCount) |
void |
appendLoadStates(StringBuffer cmds) |
void |
assignAtom(int atomIndex,
String type,
boolean autoBond) |
private int |
autoBond_Pre_11_9_24(BitSet bsA,
BitSet bsB,
BitSet bsExclude,
BitSet bsBonds,
short mad) |
int |
autoBond(BitSet bsA,
BitSet bsB,
BitSet bsExclude,
BitSet bsBonds,
short mad,
boolean preJmol11_9_24) |
private int[] |
autoBond(BitSet bsA,
BitSet bsB,
BitSet bsBonds,
boolean isBonds,
boolean matchHbond,
boolean legacyAutoBond) |
int |
autoHbond(BitSet bsA,
BitSet bsB)
a generalized formation of HBONDS, carried out in relation to calculate
HBONDS {atomsFrom} {atomsTo}.
|
int |
calcAtomsMinMax(BitSet bs,
BoxInfo boxInfo) |
void |
calcBoundBoxDimensions(BitSet bs,
float scale) |
void |
calcRasmolHydrogenBonds(BitSet bsA,
BitSet bsB,
List<Bond> vHBonds,
boolean nucleicOnly,
int nMax,
boolean dsspIgnoreHydrogens)
These are not actual hydrogen bonds.
|
float |
calcRotationRadius(BitSet bs) |
float |
calcRotationRadius(int modelIndex,
Point3f center) |
void |
calcSelectedGroupsCount(BitSet bsSelected) |
void |
calcSelectedMoleculesCount(BitSet bsSelected) |
void |
calcSelectedMonomersCount(BitSet bsSelected) |
Vector3f |
calculateMolecularDipole(int modelIndex) |
protected void |
calculatePolymers(Group[] groups,
int groupCount,
int baseGroupIndex,
BitSet modelsExcluded) |
void |
calculateStraightness() |
protected String |
calculateStructuresAllExcept(BitSet alreadyDefined,
boolean asDSSP,
boolean doReport,
boolean dsspIgnoreHydrogen,
boolean setStructure,
boolean includeAlpha)
allows rebuilding of PDB structures;
also accessed by ModelManager from Eval
|
int |
calculateStruts(BitSet bs1,
BitSet bs2)
see comments in org.jmol.modelsetbio.AlphaPolymer.java
Struts are calculated for atoms in bs1 connecting to atoms in bs2.
|
private void |
calcUnitCellMinMax() |
private static Point3f |
checkMinAttachedAngle(Atom atom1,
float minAngle,
Vector3f v1,
Vector3f v2,
boolean haveHAtoms) |
protected void |
clearDataFrameReference(int modelIndex) |
void |
clearRasmolHydrogenBonds(int baseIndex,
BitSet bsAtoms) |
void |
deleteAtoms(BitSet bs) |
void |
deleteBonds(BitSet bsBonds,
boolean isFullModel) |
protected void |
deleteModel(int modelIndex,
int firstAtomIndex,
int nAtoms,
BitSet bsAtoms,
BitSet bsBonds) |
void |
fillAtomData(AtomData atomData,
int mode) |
(package private) void |
freezeModels() |
List<Map<String,Object>> |
getAllAtomInfo(BitSet bs) |
List<Map<String,Object>> |
getAllBondInfo(BitSet bs) |
Map<String,List<Map<String,Object>>> |
getAllChainInfo(BitSet bs) |
Map<String,List<Map<String,Object>>> |
getAllPolymerInfo(BitSet bs) |
int |
getAltLocCountInModel(int modelIndex) |
int |
getAltLocIndexInModel(int modelIndex,
char alternateLocationID) |
String |
getAltLocListInModel(int modelIndex) |
BitSet |
getAtomBits(int tokType,
Object specInfo)
general unqualified lookup of atom set type
|
protected BitSet |
getAtomBitsMaybeDeleted(int tokType,
Object specInfo)
general unqualified lookup of atom set type
|
int |
getAtomCountInModel(int modelIndex) |
Quaternion[] |
getAtomGroupQuaternions(BitSet bsAtoms,
int nMax,
char qtype) |
void |
getAtomIdentityInfo(int i,
Map<String,Object> info) |
private Map<String,Object> |
getAtomInfoLong(int i) |
private void |
getAtomRecordMOL(StringBuffer sb,
int i,
Atom a,
Quaternion q,
Point3f pTemp,
boolean asV3000) |
private static void |
getAtomResidueInfo(StringBuffer info,
Atom atom) |
BitSet |
getAtomsConnected(float min,
float max,
int intType,
BitSet bs) |
Point3f |
getAtomSetCenter(BitSet bs) |
BitSet |
getAtomsWithin(float distance,
BitSet 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
|
BitSet |
getAtomsWithin(float distance,
Point3f coord,
BitSet bsResult,
int modelIndex) |
Map<String,Object> |
getAuxiliaryInfo(BitSet bsModels) |
Point3f |
getAverageAtomPoint() |
private BitSet |
getBasePairBits(String specInfo) |
private String |
getBasePairInfo(BitSet bs) |
Point3fi[] |
getBboxVertices() |
int |
getBioPolymerCount() |
int |
getBioPolymerCountInModel(int modelIndex) |
int |
getBondCountInModel(int modelIndex)
for general use
|
private Map<String,Object> |
getBondInfo(int i) |
private void |
getBondRecordMOL(int n,
StringBuffer sb,
int i,
int[] atomMap,
boolean asV3000) |
Point3f |
getBoundBoxCenter(int modelIndex) |
String |
getBoundBoxCommand(boolean withOptions) |
Vector3f |
getBoundBoxCornerVector() |
Map<String,Object> |
getBoundBoxInfo() |
BitSet |
getBoundBoxModels() |
BoxInfo |
getBoxInfo(BitSet bs,
float scale) |
SymmetryInterface[] |
getCellInfos() |
Point3f[][] |
getCenterAndPoints(List<BitSet[]> vAtomSets,
boolean addCenters) |
int |
getChainCount(boolean addWater) |
int |
getChainCountInModel(int modelIndex,
boolean countWater) |
private List<Map<String,List<Map<String,Object>>>> |
getChainInfo(int modelIndex,
BitSet bs) |
String |
getChimeInfo(int tok,
BitSet bs) |
BitSet |
getConformation(int modelIndex,
int conformationIndex,
boolean doSet) |
private BitSet |
getCovalentBondsForAtoms(BitSet bsAtoms) |
EnumVdw |
getDefaultVdwType(int modelIndex) |
BitSet |
getElementsPresentBitSet(int modelIndex) |
String |
getFileHeader(int modelIndex) |
String |
getFrameTitle(int modelIndex) |
private String |
getFullPDBHeader(int modelIndex) |
int |
getGroupAtom(Atom atom,
int offset,
String name) |
int |
getGroupCount() |
int |
getGroupCountInModel(int modelIndex) |
(package private) Group[] |
getGroups()
In versions earlier than 12.1.51, groups[] was a
field of ModelCollection.
|
BitSet |
getGroupsWithin(int nResidues,
BitSet 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) |
BitSet |
getIterativeModels(boolean allowJmolData)
only some models can be iterated through.
|
protected JmolBioResolver |
getJbr() |
int |
getJmolDataFrameIndex(int modelIndex,
String type) |
int |
getJmolDataSourceFrame(int modelIndex) |
String |
getJmolFrameType(int modelIndex) |
Map<String,Object> |
getLigandInfo(BitSet bsAtoms) |
BitSet |
getModelAtomBitSetIncludingDeleted(BitSet bsModels)
note -- this method returns ALL atoms, including deleted.
|
BitSet |
getModelAtomBitSetIncludingDeleted(int modelIndex,
boolean asCopy)
Note that this method returns all atoms, included deleted ones.
|
String |
getModelAtomProperty(Atom atom,
String text) |
Map<String,Object> |
getModelAuxiliaryInfo(int modelIndex) |
Object |
getModelAuxiliaryInfo(int modelIndex,
String key) |
protected boolean |
getModelAuxiliaryInfoBoolean(int modelIndex,
String keyName) |
protected int |
getModelAuxiliaryInfoInt(int modelIndex,
String keyName) |
BitSet |
getModelBitSet(BitSet atomList,
boolean allTrajectories) |
int[] |
getModelCellRange(int modelIndex) |
String |
getModelCml(BitSet bs,
int atomsMax,
boolean addBonds) |
int |
getModelCount() |
Vector3f |
getModelDipole(int modelIndex) |
String |
getModelExtract(BitSet bs,
boolean doTransform,
boolean isModelKit,
String type) |
String |
getModelFileInfo(BitSet frames) |
String |
getModelFileName(int modelIndex) |
int |
getModelFileNumber(int modelIndex) |
String |
getModelFileType(int modelIndex) |
Map<String,Object> |
getModelInfo(BitSet bsModels) |
String |
getModelInfoAsString() |
BitSet |
getModelKitStateBitset(BitSet bs,
BitSet bsDeleted) |
String |
getModelName(int modelIndex) |
int |
getModelNumber(int modelIndex) |
String |
getModelNumberDotted(int modelIndex) |
String |
getModelNumberForAtomLabel(int modelIndex) |
StateManager.Orientation |
getModelOrientation(int modelIndex) |
Properties |
getModelProperties(int modelIndex) |
String |
getModelProperty(int modelIndex,
String property) |
Model[] |
getModels() |
Map<String,Object> |
getModelSetAuxiliaryInfo() |
Object |
getModelSetAuxiliaryInfo(String keyName) |
boolean |
getModelSetAuxiliaryInfoBoolean(String keyName) |
String |
getModelSetName() |
Properties |
getModelSetProperties() |
String |
getModelSetProperty(String propertyName) |
int |
getModelSymmetryCount(int modelIndex) |
String |
getModelTitle(int modelIndex) |
String |
getMoInfo(int modelIndex) |
BitSet |
getMoleculeBitSet(BitSet bs) |
BitSet |
getMoleculeBitSet(int atomIndex) |
int |
getMoleculeCountInModel(int modelIndex) |
int |
getMoleculeIndex(int atomIndex,
boolean inModel) |
List<Map<String,Object>> |
getMoleculeInfo(BitSet bsAtoms) |
JmolMolecule[] |
getMolecules() |
float[] |
getNotionalUnitcell()
deprecated due to multimodel issues,
but required by an interface -- do NOT remove.
|
String |
getPdbAtomData(BitSet bs,
OutputStringBuffer sb) |
String |
getPdbData(int modelIndex,
String type,
BitSet bsSelected,
Object[] parameters,
OutputStringBuffer sb) |
String |
getPDBHeader(int modelIndex) |
List<Object> |
getPlaneIntersection(int type,
Point4f plane,
float scale,
int flags,
int modelIndex) |
Point3f[] |
getPolymerLeadMidPoints(int iModel,
int iPolymer) |
void |
getPolymerPointsAndVectors(BitSet bs,
List<Point3f[]> vList) |
String |
getProteinStructureState(BitSet bsAtoms,
boolean taintedOnly,
boolean needPhiPsi,
int mode) |
AtomIndexIterator |
getSelectedAtomIterator(BitSet bsSelected,
boolean isGreaterOnly,
boolean modelZeroBased,
boolean hemisphereOnly,
boolean isMultiModel) |
BitSet |
getSequenceBits(String specInfo,
BitSet bs) |
Map<String,Object> |
getSpaceGroupInfo(int modelIndex,
String spaceGroup,
int symOp,
Point3f pt1,
Point3f pt2,
String drawID) |
Map<EnumStructure,float[]> |
getStructureList() |
Object |
getSymmetryInfo(BitSet bsAtoms,
String xyz,
int op,
Point3f pt,
Point3f pt2,
String id,
int type) |
String |
getSymmetryInfoAsString() |
private String |
getSymmetryInfoAsString(int modelIndex) |
String |
getSymmetryOperation(int modelIndex,
String spaceGroup,
int symOp,
Point3f pt1,
Point3f pt2,
String drawID,
boolean labelOnly) |
private void |
getSymTemp(boolean forceNew) |
protected int |
getTrajectoryCount() |
int |
getTrajectoryIndex(int modelIndex) |
SymmetryInterface |
getUnitCell(int modelIndex) |
String |
getUnitCellInfoText() |
protected void |
growAtomArrays(int newLength) |
boolean |
hasCalculatedHBonds(BitSet bs) |
boolean |
haveModelKit() |
protected void |
initializeBspf() |
protected void |
initializeBspt(int modelIndex) |
boolean |
isAtomAssignable(int i) |
boolean |
isAtomPDB(int i) |
private boolean |
isInLatticeCell(int i,
Point3f cell,
Point3f pt,
boolean isAbsolute) |
private boolean |
isJmolDataFrame(Atom atom) |
boolean |
isJmolDataFrame(int modelIndex) |
boolean |
isTrajectory(int modelIndex) |
boolean |
isTrajectory(int[] countPlusIndices) |
protected boolean |
isTrajectorySubFrame(int i) |
protected int[] |
makeConnections(float minDistance,
float maxDistance,
int order,
int connectOperation,
BitSet bsA,
BitSet bsB,
BitSet bsBonds,
boolean isBonds,
boolean addGroup,
float energy) |
protected void |
mergeModelArrays(ModelSet mergeModelSet)
initial transfer of model data from old to new model set.
|
protected void |
mergeModels(ModelSet mergeModelSet) |
static int |
modelFileNumberFromFloat(float fDotM) |
boolean |
modelHasVibrationVectors(int modelIndex) |
void |
recalculateLeadMidpointsAndWingVectors(int modelIndex) |
protected void |
releaseModelSet() |
void |
saveModelOrientation(int modelIndex,
StateManager.Orientation orientation) |
void |
selectDisplayedTrajectories(BitSet bs) |
void |
setAtomNamesAndNumbers(int iFirst,
int baseAtomIndex,
AtomCollection mergeSet) |
void |
setAtomProperty(BitSet bs,
int tok,
int iValue,
float fValue,
String sValue,
float[] values,
String[] list) |
void |
setBoundBox(Point3f pt1,
Point3f pt2,
boolean byCorner,
float scale) |
BitSet |
setConformation(BitSet bsAtoms) |
boolean |
setCrystallographicDefaults() |
void |
setDefaultStructure(BitSet bsModels) |
void |
setFrameTitle(BitSet bsFrames,
Object title) |
void |
setIteratorForAtom(AtomIndexIterator iterator,
int modelIndex,
int atomIndex,
float distance,
RadiusData rd) |
void |
setIteratorForPoint(AtomIndexIterator iterator,
int modelIndex,
Point3f pt,
float distance) |
void |
setJmolDataFrame(String type,
int modelIndex,
int modelDataIndex) |
void |
setModelAuxiliaryInfo(int modelIndex,
Object key,
Object value) |
void |
setProteinType(BitSet bs,
EnumStructure type) |
boolean |
setRotationRadius(int modelIndex,
float angstroms) |
(package private) void |
setStructureIds() |
void |
setStructureList(Map<EnumStructure,float[]> structureList) |
void |
setUnitCellOffset(int modelIndex,
Point3f pt,
int ijk) |
addHBond, assignAromaticBonds, assignAromaticBonds, bondAtoms, bondMutually, checkValencesAndBond, deleteAllBonds, deleteConnections, displayBonds, getBondAt, getBondAtom1, getBondAtom2, getBondColix1, getBondColix2, getBondCount, getBondIterator, getBondIterator, getBondModelIndex, getBondOrder, getBondOrder, getBondRadius, getBonds, getBondsForSelectedAtoms, getDefaultMadFromOrder, getRasmolHydrogenBonds, removeUnnecessaryBonds, resetAromatic, resetMolecules, setBond, setBondOrder
calculateHydrogens, calculateSurface, calculateVolume, clearBfactorRange, deleteModelAtoms, findAtomsInRectangle, findMaxRadii, findNearestAtomIndex, getAtomChain, getAtomColix, getAtomCount, getAtomicCharges, getAtomicPropertyState, getAtomicPropertyState, getAtomIndexFromAtomNumber, getAtomIndices, getAtomInfo, getAtomInfoXYZ, getAtomModelIndex, getAtomName, getAtomNumber, getAtomPoint3f, getAtomPointVector, getAtomRadius, getAtomSequenceCode, getAtomsWithin, getAtomsWithin, getAtomTypes, getAtomVdwRadius, getBfactor100Hi, getBfactor100Lo, getBFactors, getChainBits, getClickableSet, getElementName, getElementNumber, getElementSymbol, getEllipsoid, getHaveStraightness, getHelixData, getHybridizationAndAxes, getHydrophobicity, getImplicitHydrogenCount, getIonicRadii, getMaxVanderwaalsRadius, getPartialCharges, getQuaternion, getRadiusVdwJmol, getSeqcodeBits, getSurfaceDistance100, getSurfaceDistanceMax, getTaintedAtoms, getUserSettableType, getVibrationCoord, getVibrationVector, getVisibleSet, isAtomHidden, isCursorOnTopOf, mergeAtomArrays, modelSetHasVibrationVectors, setAtomCoord, setAtomCoord, setAtomCoordRelative, setAtomCoordRelative, setAtomData, setAtomName, setAtomNumber, setAtomType, setBFactor, setBsHidden, setElement, setEllipsoid, setFormalCharges, setHaveStraightness, setHydrophobicity, setIonicRadius, setOccupancy, setPartialCharge, setPreserveState, setTaintedAtoms, setVibrationVector, taint, taint, unTaintAtoms, validateBspf, validateBspf
protected BitSet bsSymmetry
protected String modelSetName
protected Model[] models
protected int modelCount
SymmetryInterface[] unitCells
protected int[] modelNumbers
protected int[] modelFileNumbers
protected String[] modelNumbersForAtomLabel
protected String[] modelNames
protected String[] frameTitles
protected BitSet[] elementsPresent
protected boolean isXYZ
protected boolean isPDB
protected Properties modelSetProperties
protected boolean someModelsHaveSymmetry
protected boolean someModelsHaveAromaticBonds
protected boolean someModelsHaveFractionalCoordinates
protected final Point3f ptTemp
private final Point3f averageAtomPoint
private boolean isBbcageDefault
private BitSet bboxModels
private BitSet bboxAtoms
private final BoxInfo boxInfo
protected List<ModelCollection.StateScript> stateScripts
private int thisStateModel
private static final String[] pdbRecords
private BitSet selectedMolecules
private int selectedMoleculeCount
private static final boolean showRebondTimes
protected BitSet bsAll
protected ShapeManager shapeManager
private static float hbondMin
boolean proteinStructureTainted
private SymmetryInterface symTemp
protected void mergeModelArrays(ModelSet mergeModelSet)
mergeModelSet
- protected void mergeModels(ModelSet mergeModelSet)
protected void releaseModelSet()
releaseModelSet
in class BondCollection
public String getModelSetName()
public Model[] getModels()
public int getModelCount()
public SymmetryInterface[] getCellInfos()
public SymmetryInterface getUnitCell(int modelIndex)
public List<Object> getPlaneIntersection(int type, Point4f plane, float scale, int flags, int modelIndex)
type
- plane
- scale
- modelIndex
- 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 getFrameTitle(int modelIndex)
public String getModelNumberForAtomLabel(int modelIndex)
protected JmolBioResolver getJbr()
protected void calculatePolymers(Group[] groups, int groupCount, int baseGroupIndex, BitSet modelsExcluded)
Group[] getGroups()
public float[] getNotionalUnitcell()
public boolean setCrystallographicDefaults()
public Point3f getAverageAtomPoint()
public Point3f getBoundBoxCenter(int modelIndex)
public Vector3f getBoundBoxCornerVector()
public Point3fi[] getBboxVertices()
public BitSet getBoundBoxModels()
public String getBoundBoxCommand(boolean withOptions)
public EnumVdw getDefaultVdwType(int modelIndex)
public boolean setRotationRadius(int modelIndex, float angstroms)
public float calcRotationRadius(int modelIndex, Point3f center)
public void calcBoundBoxDimensions(BitSet bs, float scale)
private void calcUnitCellMinMax()
public float calcRotationRadius(BitSet bs)
public Point3f[][] getCenterAndPoints(List<BitSet[]> vAtomSets, boolean addCenters)
vAtomSets
- addCenters
- public void setAtomProperty(BitSet bs, int tok, int iValue, float fValue, String sValue, float[] values, String[] list)
setAtomProperty
in class AtomCollection
public ModelCollection.StateScript addStateScript(String script1, BitSet bsBonds, BitSet bsAtoms1, BitSet bsAtoms2, String script2, boolean addFrameNumber, boolean postDefinitions)
protected String calculateStructuresAllExcept(BitSet alreadyDefined, boolean asDSSP, boolean doReport, boolean dsspIgnoreHydrogen, boolean setStructure, boolean includeAlpha)
alreadyDefined
- set to skip calculationasDSSP
- doReport
- dsspIgnoreHydrogen
- setStructure
- includeAlpha
- public void setDefaultStructure(BitSet bsModels)
public void setProteinType(BitSet bs, EnumStructure type)
void freezeModels()
public Map<EnumStructure,float[]> getStructureList()
public void setStructureList(Map<EnumStructure,float[]> structureList)
public BitSet getConformation(int modelIndex, int conformationIndex, boolean doSet)
public Properties getModelSetProperties()
public boolean getModelSetAuxiliaryInfoBoolean(String keyName)
protected int getTrajectoryCount()
public int getTrajectoryIndex(int modelIndex)
public boolean isTrajectory(int modelIndex)
public boolean isTrajectory(int[] countPlusIndices)
public BitSet getIterativeModels(boolean allowJmolData)
allowJmolData
- protected boolean isTrajectorySubFrame(int i)
public void selectDisplayedTrajectories(BitSet bs)
public void fillAtomData(AtomData atomData, int mode)
fillAtomData
in class AtomCollection
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 String getModelFileType(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 recalculateLeadMidpointsAndWingVectors(int modelIndex)
public Point3f[] getPolymerLeadMidPoints(int iModel, int iPolymer)
public int getChainCountInModel(int modelIndex, boolean countWater)
public int getGroupCount()
public int getGroupCountInModel(int modelIndex)
public void calcSelectedGroupsCount(BitSet bsSelected)
public void calcSelectedMonomersCount(BitSet bsSelected)
public void calcRasmolHydrogenBonds(BitSet bsA, BitSet bsB, List<Bond> vHBonds, boolean nucleicOnly, int nMax, boolean dsspIgnoreHydrogens)
bsA
- bsB
- vHBonds
- vector of bonds to fill; if null, creates the HBondsnucleicOnly
- nMax
- dsspIgnoreHydrogens
- public void calculateStraightness()
public Quaternion[] getAtomGroupQuaternions(BitSet bsAtoms, int nMax, char qtype)
public String getPdbAtomData(BitSet bs, OutputStringBuffer sb)
public String getPdbData(int modelIndex, String type, BitSet bsSelected, Object[] parameters, OutputStringBuffer sb)
public boolean isJmolDataFrame(int modelIndex)
private boolean isJmolDataFrame(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, StateManager.Orientation orientation)
public StateManager.Orientation getModelOrientation(int modelIndex)
private String getFullPDBHeader(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 getSymmetryOperation(int modelIndex, String spaceGroup, int symOp, Point3f pt1, Point3f pt2, String drawID, boolean labelOnly)
public int[] getModelCellRange(int modelIndex)
public boolean modelHasVibrationVectors(int modelIndex)
public BitSet getElementsPresentBitSet(int modelIndex)
private String getSymmetryInfoAsString(int modelIndex)
public int getMoleculeIndex(int atomIndex, boolean inModel)
public BitSet getMoleculeBitSet(int atomIndex)
public Vector3f getModelDipole(int modelIndex)
public Vector3f calculateMolecularDipole(int modelIndex)
public int getMoleculeCountInModel(int modelIndex)
public void calcSelectedMoleculesCount(BitSet bsSelected)
public JmolMolecule[] getMolecules()
public boolean hasCalculatedHBonds(BitSet bs)
public void clearRasmolHydrogenBonds(int baseIndex, BitSet bsAtoms)
protected void initializeBspf()
protected void initializeBspt(int modelIndex)
public void setIteratorForPoint(AtomIndexIterator iterator, int modelIndex, Point3f pt, float distance)
public void setIteratorForAtom(AtomIndexIterator iterator, int modelIndex, int atomIndex, float distance, RadiusData rd)
public AtomIndexIterator getSelectedAtomIterator(BitSet 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(BitSet bs1, BitSet bs2)
bs1
- bs2
- public int getAtomCountInModel(int modelIndex)
public BitSet getModelAtomBitSetIncludingDeleted(BitSet bsModels)
bsModels
- public BitSet getModelAtomBitSetIncludingDeleted(int modelIndex, boolean asCopy)
modelIndex
- asCopy
- MUST BE TRUE IF THE BITSET IS GOING TO BE MODIFIED!public BitSet getAtomBits(int tokType, Object specInfo)
tokType
- specInfo
- protected BitSet getAtomBitsMaybeDeleted(int tokType, Object specInfo)
AtomCollection
getAtomBitsMaybeDeleted
in class BondCollection
private boolean isInLatticeCell(int i, Point3f cell, Point3f pt, boolean isAbsolute)
public BitSet getAtomsWithin(float distance, BitSet bs, boolean withinAllModels, RadiusData rd)
distance
- bs
- withinAllModels
- rd
- public BitSet getAtomsWithin(float distance, Point3f coord, BitSet bsResult, int modelIndex)
private static void getAtomResidueInfo(StringBuffer info, Atom atom)
public void deleteBonds(BitSet bsBonds, boolean isFullModel)
deleteBonds
in class BondCollection
protected int[] makeConnections(float minDistance, float maxDistance, int order, int connectOperation, BitSet bsA, BitSet bsB, BitSet bsBonds, boolean isBonds, boolean addGroup, float energy)
public int autoBond(BitSet bsA, BitSet bsB, BitSet bsExclude, BitSet bsBonds, short mad, boolean preJmol11_9_24)
private int autoBond_Pre_11_9_24(BitSet bsA, BitSet bsB, BitSet bsExclude, BitSet bsBonds, short mad)
private int[] autoBond(BitSet bsA, BitSet bsB, BitSet bsBonds, boolean isBonds, boolean matchHbond, boolean legacyAutoBond)
public int autoHbond(BitSet bsA, BitSet bsB)
bsA
- "from" set (must contain H if that is desired)bsB
- "to" setprivate static Point3f checkMinAttachedAngle(Atom atom1, float minAngle, Vector3f v1, Vector3f v2, boolean haveHAtoms)
void setStructureIds()
public String getProteinStructureState(BitSet bsAtoms, boolean taintedOnly, boolean needPhiPsi, int mode)
public String getModelInfoAsString()
public String getSymmetryInfoAsString()
public String getModelExtract(BitSet bs, boolean doTransform, boolean isModelKit, String type)
private boolean addMolFile(StringBuffer mol, BitSet bsAtoms, BitSet bsBonds, boolean asV3000, Quaternion q)
private void getAtomRecordMOL(StringBuffer sb, int i, Atom a, Quaternion q, Point3f pTemp, boolean asV3000)
private void getBondRecordMOL(int n, StringBuffer sb, int i, int[] atomMap, boolean asV3000)
public String getChimeInfo(int tok, BitSet bs)
getChimeInfo
in class AtomCollection
private List<Map<String,List<Map<String,Object>>>> getChainInfo(int modelIndex, BitSet bs)
public String getUnitCellInfoText()
public Map<String,Object> getSpaceGroupInfo(int modelIndex, String spaceGroup, int symOp, Point3f pt1, Point3f pt2, String drawID)
public Object getSymmetryInfo(BitSet bsAtoms, String xyz, int op, Point3f pt, Point3f pt2, String id, int type)
private void getSymTemp(boolean forceNew)
protected void deleteModel(int modelIndex, int firstAtomIndex, int nAtoms, BitSet bsAtoms, BitSet bsBonds)
public String getMoInfo(int modelIndex)
public void assignAtom(int atomIndex, String type, boolean autoBond)
public void deleteAtoms(BitSet bs)
public void appendLoadStates(StringBuffer cmds)
void adjustAtomArrays(int[] map, int i0, int atomCount)
protected void growAtomArrays(int newLength)
protected Atom addAtom(int modelIndex, Group group, short atomicAndIsotopeNumber, String atomName, int atomSerial, int atomSite, float x, float y, float z)
public Atom addAtom(int modelIndex, Group group, short atomicAndIsotopeNumber, String atomName, int atomSerial, int atomSite, float x, float y, float z, float radius, float vectorX, float vectorY, float vectorZ, int formalCharge, float partialCharge, int occupancy, float bfactor, Object[] ellipsoid, boolean isHetero, char alternateLocationID, byte specialAtomID, BitSet 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)
public void setUnitCellOffset(int modelIndex, Point3f pt, int ijk)