org.jmol.modelset
Class ModelSet

java.lang.Object
  extended by org.jmol.modelset.AtomCollection
      extended by org.jmol.modelset.BondCollection
          extended by org.jmol.modelset.ModelCollection
              extended by org.jmol.modelset.ModelSet
Direct Known Subclasses:
ModelLoader

public abstract class ModelSet
extends ModelCollection


Nested Class Summary
 
Nested classes/interfaces inherited from class org.jmol.modelset.ModelCollection
ModelCollection.StateScript
 
Nested classes/interfaces inherited from class org.jmol.modelset.AtomCollection
AtomCollection.AtomSorter
 
Field Summary
protected  Atom[] closest
           
private  boolean echoShapeActive
           
protected  java.lang.String modelSetTypeName
           
private  SymmetryInterface pointGroup
           
private  boolean selectionHaloEnabled
           
 
Fields inherited from class org.jmol.modelset.ModelCollection
bsAll, bsSymmetry, elementsPresent, frameTitles, groupCount, groups, haveBioClasses, isPDB, isXYZ, jbr, modelCount, modelFileNumbers, modelNames, modelNumbers, modelNumbersForAtomLabel, models, modelSetAuxiliaryInfo, modelSetName, modelSetProperties, proteinStructureTainted, shapeManager, someModelsHaveAromaticBonds, someModelsHaveFractionalCoordinates, someModelsHaveSymmetry, stateScripts, trajectorySteps, unitCells
 
Fields inherited from class org.jmol.modelset.BondCollection
BOND_GROWTH_INCREMENT, bondCount, bonds, bsAromatic, bsHBondsRasmol, defaultCovalentMad, freeBonds, MAX_BONDS_LENGTH_TO_CACHE, MAX_NUM_TO_CACHE, moleculeCount, molecules, numCached
 
Fields inherited from class org.jmol.modelset.AtomCollection
atomCount, atomNames, atoms, atomSerials, atomTypes, bfactor100s, bspf, ellipsoids, g3d, haveStraightness, ionicRadii, maxBondingRadius, occupancies, partialCharges, preserveState, surfaceDistance100s, TAINT_ATOMNAME, TAINT_ATOMNO, TAINT_ATOMTYPE, TAINT_COORD, TAINT_ELEMENT, TAINT_FORMALCHARGE, TAINT_MAX, tainted, vibrationVectors, viewer
 
Constructor Summary
ModelSet()
           
 
Method Summary
 java.util.BitSet addHydrogens(java.util.List vConnections, javax.vecmath.Point3f[] pts)
          these are hydrogens that are being added due to a load 2D command and are therefore not to be flagged as NEW
protected  void assignAromaticBonds(boolean isUserCalculation)
           
 java.lang.String calculatePointGroup(java.util.BitSet bsAtoms)
           
private  java.lang.Object calculatePointGroupForFirstModel(java.util.BitSet bsAtoms, boolean doAll, boolean asDraw, boolean asInfo, java.lang.String type, int index, float scale)
           
 java.lang.String calculateStructures(java.util.BitSet bsAtoms, boolean asDSSP, boolean dsspIgnoreHydrogen, boolean setStructure)
           
 int calculateStruts(java.util.BitSet bs1, java.util.BitSet bs2)
          see comments in org.jmol.modelsetbio.AlphaPolymer.java Struts are calculated for atoms in bs1 connecting to atoms in bs2.
 void connect(float[][] connections)
           
 void deleteAllBonds()
           
 java.util.BitSet deleteModels(java.util.BitSet bsAtoms)
           
 void fillAtomData(AtomData atomData, int mode)
           
 int findNearestAtomIndex(int x, int y, java.util.BitSet bsNot)
           
 java.util.BitSet getAtomBits(int tokType, java.lang.Object specInfo)
          general lookup for integer type -- from Eval
 java.lang.String getAtomLabel(int i)
           
 java.util.BitSet getBitSetTrajectories()
           
 java.lang.String getDefinedState(java.lang.StringBuffer sfunc, boolean isAll)
           
 boolean getEchoStateActive()
           
 java.lang.Object getFileData(int modelIndex)
           
 javax.vecmath.Point3f[] getFrameOffsets(java.util.BitSet bsAtoms)
           
 int getModelNumberIndex(int modelNumber, boolean useModelNumber, boolean doSetTrajectory)
           
 java.lang.String getModelSetTypeName()
           
 java.lang.String getPointGroupAsString(java.util.BitSet bsAtoms, boolean asDraw, java.lang.String type, int index, float scale)
           
 java.util.Hashtable getPointGroupInfo(java.util.BitSet bsAtoms)
           
 boolean getSelectionHaloEnabled()
           
private  java.util.BitSet getSpecModel(int modelNumber)
           
 java.lang.String getState(java.lang.StringBuffer sfunc, boolean isAll, boolean withProteinStructure)
           
 java.lang.String getTrajectoryInfo()
           
private  void includeAllRelatedFrames(java.util.BitSet bsModels)
           
 int[] makeConnections(float minDistance, float maxDistance, int order, int connectOperation, java.util.BitSet bsA, java.util.BitSet bsB, java.util.BitSet bsBonds, boolean isBonds, float energy)
           
private  java.util.BitSet modelsOf(java.util.BitSet bsAtoms, java.util.BitSet bsAllAtoms)
           
 void recalculatePositionDependentQuantities(java.util.BitSet bs)
           
protected  void releaseModelSet()
           
 void setAtomCoord(java.util.BitSet bs, int tokType, java.lang.Object xyzValues)
           
 void setAtomCoordRelative(javax.vecmath.Tuple3f offset, java.util.BitSet bs)
           
 void setAtomProperty(java.util.BitSet bs, int tok, int iValue, float fValue, java.lang.String sValue, float[] values, java.lang.String[] list)
           
 void setEchoStateActive(boolean TF)
           
 void setPdbConectBonding(int baseAtomIndex, int baseModelIndex, java.util.BitSet bsExclude)
           
 void setSelectionHaloEnabled(boolean selectionHaloEnabled)
           
 void setTrajectory(java.util.BitSet bsModels)
           
 void setTrajectory(int modelIndex)
           
 
Methods inherited from class org.jmol.modelset.ModelCollection
addAtom, addAtom, addBioPolymerToModel, addStateScript, appendLoadStates, assignAtom, autoBond, autoHbond, calcAtomsMinMax, calcBoundBoxDimensions, calcRasmolHydrogenBonds, calcRotationRadius, calcRotationRadius, calcSelectedGroupsCount, calcSelectedMoleculesCount, calcSelectedMonomersCount, calculateMolecularDipole, calculatePolymers, calculateStraightness, calculateStructuresAllExcept, clearDataFrameReference, clearRasmolHydrogenBonds, deleteAtoms, deleteBonds, deleteModel, getAllAtomInfo, getAllBondInfo, getAllChainInfo, getAllPolymerInfo, getAltLocCountInModel, getAltLocIndexInModel, getAltLocListInModel, getAtomCountInModel, getAtomGroupQuaternions, getAtomIdentityInfo, getAtomsConnected, getAtomSetCenter, getAtomsWithin, getAtomsWithin, getAuxiliaryInfo, getAverageAtomPoint, getBboxVertices, getBioPolymerCount, getBioPolymerCountInModel, getBondCountInModel, getBoundBoxCenter, getBoundBoxCommand, getBoundBoxCornerVector, getBoundBoxInfo, getBoundBoxModels, getBoxInfo, getCellInfos, getCenterAndPoints, getChainCount, getChainCountInModel, getChimeInfo, getConformation, getDefaultVdwType, getElementsPresentBitSet, getFileHeader, getFrameTitle, getGroupAtom, getGroupCount, getGroupCountInModel, getGroupsWithin, getHeteroList, getInlineData, getInsertionCodeIndexInModel, getInsertionCountInModel, getIterativeModels, getJmolDataFrameIndex, getJmolDataSourceFrame, getJmolFrameType, getModelAtomBitSetIncludingDeleted, getModelAtomBitSetIncludingDeleted, getModelAuxiliaryInfo, getModelAuxiliaryInfo, getModelAuxiliaryInfoBoolean, getModelAuxiliaryInfoInt, getModelBitSet, getModelCellRange, getModelCml, getModelCount, getModelDipole, getModelExtract, getModelFileInfo, getModelFileName, getModelFileNumber, getModelFileType, getModelInfo, getModelInfoAsString, getModelKitStateBitset, getModelName, getModelNumber, getModelNumberDotted, getModelNumberForAtomLabel, getModelOrientation, getModelProperties, getModelProperty, getModels, getModelSetAuxiliaryInfo, getModelSetAuxiliaryInfo, getModelSetAuxiliaryInfoBoolean, getModelSetName, getModelSetProperties, getModelSetProperty, getModelSymmetryCount, getModelTitle, getMoInfo, getMoleculeBitSet, getMoleculeBitSet, getMoleculeCountInModel, getMoleculeIndex, getMoleculeInfo, getMolecules, getNotionalUnitcell, getPdbAtomData, getPdbData, getPDBHeader, getPlaneIntersection, getPolymerLeadMidPoints, getPolymerPointsAndVectors, getProteinStructureState, getSelectedAtomIterator, getSequenceBits, getSpaceGroupInfo, getSymmetryInfo, getSymmetryInfoAsString, getSymmetryOperation, getTrajectoryCount, getTrajectoryIndex, getUnitCell, getUnitCellInfoText, growAtomArrays, hasCalculatedHBonds, haveModelKit, initializeBspf, initializeBspt, invertSelected, isAtomAssignable, isAtomPDB, isJmolDataFrame, isTrajectory, isTrajectory, isTrajectorySubFrame, mergeModelArrays, mergeModels, modelFileNumberFromFloat, modelHasVibrationVectors, recalculateLeadMidpointsAndWingVectors, rotateAtoms, saveModelOrientation, selectDisplayedTrajectories, setAtomNamesAndNumbers, setBoundBox, setConformation, setCrystallographicDefaults, setFrameTitle, setIteratorForAtom, setIteratorForPoint, setJmolDataFrame, setModelAuxiliaryInfo, setProteinType, setRotationRadius, setStructureIds
 
Methods inherited from class org.jmol.modelset.BondCollection
addHBond, assignAromaticBonds, assignAromaticBonds, bondAtoms, bondMutually, checkValencesAndBond, deleteConnections, getBondAt, getBondAtom1, getBondAtom2, getBondColix1, getBondColix2, getBondCount, getBondIterator, getBondIterator, getBondModelIndex, getBondOrder, getBondOrder, getBondRadius, getBonds, getBondsForSelectedAtoms, getDefaultMadFromOrder, getRasmolHydrogenBonds, removeUnnecessaryBonds, resetAromatic, setBond, setBondOrder
 
Methods inherited from class org.jmol.modelset.AtomCollection
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, getAtomTypes, getAtomVdwRadius, getBfactor100Hi, getBfactor100Lo, getBFactors, getChainBits, getClickableSet, getElementName, getElementNumber, getElementSymbol, getEllipsoid, getHaveStraightness, getHelixData, getHybridizationAndAxes, getIonicRadii, getMaxVanderwaalsRadius, getPartialCharges, getQuaternion, getRadiusVdwJmol, getSeqcodeBits, getSurfaceDistance100, getSurfaceDistanceMax, getTaintedAtoms, getUserSettableType, getVibrationCoord, getVibrationVector, getVisibleSet, isAtomHidden, isCursorOnTopOf, mergeAtomArrays, modelSetHasVibrationVectors, setAtomCoord, setAtomCoordRelative, setAtomCoordRelative, setAtomData, setAtomName, setAtomNumber, setAtomType, setBFactor, setBsHidden, setElement, setEllipsoid, setFormalCharges, setHaveStraightness, setIonicRadius, setOccupancy, setPartialCharge, setPreserveState, setTaintedAtoms, setVibrationVector, taint, taint, unTaintAtoms
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

selectionHaloEnabled

private boolean selectionHaloEnabled

echoShapeActive

private boolean echoShapeActive

modelSetTypeName

protected java.lang.String modelSetTypeName

closest

protected final Atom[] closest

pointGroup

private SymmetryInterface pointGroup
Constructor Detail

ModelSet

public ModelSet()
Method Detail

releaseModelSet

protected void releaseModelSet()
Overrides:
releaseModelSet in class ModelCollection

setSelectionHaloEnabled

public void setSelectionHaloEnabled(boolean selectionHaloEnabled)

getSelectionHaloEnabled

public boolean getSelectionHaloEnabled()

getEchoStateActive

public boolean getEchoStateActive()

setEchoStateActive

public void setEchoStateActive(boolean TF)

getModelSetTypeName

public java.lang.String getModelSetTypeName()

getModelNumberIndex

public int getModelNumberIndex(int modelNumber,
                               boolean useModelNumber,
                               boolean doSetTrajectory)

getTrajectoryInfo

public java.lang.String getTrajectoryInfo()

getBitSetTrajectories

public java.util.BitSet getBitSetTrajectories()

setTrajectory

public void setTrajectory(java.util.BitSet bsModels)

setTrajectory

public void setTrajectory(int modelIndex)

getFrameOffsets

public javax.vecmath.Point3f[] getFrameOffsets(java.util.BitSet bsAtoms)

getAtomBits

public java.util.BitSet getAtomBits(int tokType,
                                    java.lang.Object specInfo)
general lookup for integer type -- from Eval

Overrides:
getAtomBits in class ModelCollection
Parameters:
tokType -
specInfo -
Returns:
bitset; null only if we mess up with name

getAtomLabel

public java.lang.String getAtomLabel(int i)

getSpecModel

private java.util.BitSet getSpecModel(int modelNumber)

findNearestAtomIndex

public int findNearestAtomIndex(int x,
                                int y,
                                java.util.BitSet bsNot)

fillAtomData

public void fillAtomData(AtomData atomData,
                         int mode)
Overrides:
fillAtomData in class AtomCollection

calculateStructures

public java.lang.String calculateStructures(java.util.BitSet bsAtoms,
                                            boolean asDSSP,
                                            boolean dsspIgnoreHydrogen,
                                            boolean setStructure)

calculatePointGroup

public java.lang.String calculatePointGroup(java.util.BitSet bsAtoms)

getPointGroupInfo

public java.util.Hashtable getPointGroupInfo(java.util.BitSet bsAtoms)

getPointGroupAsString

public java.lang.String getPointGroupAsString(java.util.BitSet bsAtoms,
                                              boolean asDraw,
                                              java.lang.String type,
                                              int index,
                                              float scale)

calculatePointGroupForFirstModel

private java.lang.Object calculatePointGroupForFirstModel(java.util.BitSet bsAtoms,
                                                          boolean doAll,
                                                          boolean asDraw,
                                                          boolean asInfo,
                                                          java.lang.String type,
                                                          int index,
                                                          float scale)

modelsOf

private java.util.BitSet modelsOf(java.util.BitSet bsAtoms,
                                  java.util.BitSet bsAllAtoms)

assignAromaticBonds

protected void assignAromaticBonds(boolean isUserCalculation)

makeConnections

public int[] makeConnections(float minDistance,
                             float maxDistance,
                             int order,
                             int connectOperation,
                             java.util.BitSet bsA,
                             java.util.BitSet bsB,
                             java.util.BitSet bsBonds,
                             boolean isBonds,
                             float energy)
Overrides:
makeConnections in class ModelCollection

setPdbConectBonding

public void setPdbConectBonding(int baseAtomIndex,
                                int baseModelIndex,
                                java.util.BitSet bsExclude)

deleteAllBonds

public void deleteAllBonds()
Overrides:
deleteAllBonds in class BondCollection

getDefinedState

public java.lang.String getDefinedState(java.lang.StringBuffer sfunc,
                                        boolean isAll)

getState

public java.lang.String getState(java.lang.StringBuffer sfunc,
                                 boolean isAll,
                                 boolean withProteinStructure)

includeAllRelatedFrames

private void includeAllRelatedFrames(java.util.BitSet bsModels)

deleteModels

public java.util.BitSet deleteModels(java.util.BitSet bsAtoms)

setAtomProperty

public void setAtomProperty(java.util.BitSet bs,
                            int tok,
                            int iValue,
                            float fValue,
                            java.lang.String sValue,
                            float[] values,
                            java.lang.String[] list)
Overrides:
setAtomProperty in class ModelCollection

getFileData

public java.lang.Object getFileData(int modelIndex)

calculateStruts

public int calculateStruts(java.util.BitSet bs1,
                           java.util.BitSet bs2)
see comments in org.jmol.modelsetbio.AlphaPolymer.java Struts are calculated for atoms in bs1 connecting to atoms in bs2. The two bitsets may overlap.

Overrides:
calculateStruts in class ModelCollection
Parameters:
bs1 -
bs2 -
Returns:
number of struts found

addHydrogens

public java.util.BitSet addHydrogens(java.util.List vConnections,
                                     javax.vecmath.Point3f[] pts)
these are hydrogens that are being added due to a load 2D command and are therefore not to be flagged as NEW

Parameters:
vConnections -
pts -
Returns:
BitSet of new atoms

setAtomCoordRelative

public void setAtomCoordRelative(javax.vecmath.Tuple3f offset,
                                 java.util.BitSet bs)

setAtomCoord

public void setAtomCoord(java.util.BitSet bs,
                         int tokType,
                         java.lang.Object xyzValues)
Overrides:
setAtomCoord in class AtomCollection

recalculatePositionDependentQuantities

public void recalculatePositionDependentQuantities(java.util.BitSet bs)

connect

public void connect(float[][] connections)