Class AtomCollection

    • Field Detail

      • sqrt3_2

        private static final float sqrt3_2
      • vRef

        private static final javajs.util.V3 vRef
      • g3d

        protected GData g3d
      • bioModelset

        public BioModelSet bioModelset
        If any model in the collection is a BioModel, then it is also indicated here as a "bioModelset", meaning
      • at

        public Atom[] at
      • ac

        public int ac
      • maxBondingRadius

        protected float maxBondingRadius
      • maxVanderwaalsRadius

        private float maxVanderwaalsRadius
      • hasBfactorRange

        private boolean hasBfactorRange
      • bfactor100Lo

        private int bfactor100Lo
      • bfactor100Hi

        private int bfactor100Hi
      • haveBSVisible

        private boolean haveBSVisible
      • haveBSClickable

        private boolean haveBSClickable
      • bsSurface

        private javajs.util.BS bsSurface
      • nSurfaceAtoms

        private int nSurfaceAtoms
      • surfaceDistanceMax

        private int surfaceDistanceMax
      • haveChirality

        protected boolean haveChirality
      • bspf

        protected Bspf bspf
        Binary Space Partitioning Forest
      • preserveState

        protected boolean preserveState
      • canSkipLoad

        public boolean canSkipLoad
      • haveStraightness

        public boolean haveStraightness
      • bsHidden

        private javajs.util.BS bsHidden
      • bsVisible

        public javajs.util.BS bsVisible
      • bsClickable

        public javajs.util.BS bsClickable
      • bsModulated

        public javajs.util.BS bsModulated
      • atomTensorList

        public Object[][] atomTensorList
      • surfaceDistance100s

        protected int[] surfaceDistance100s
      • tainted

        public javajs.util.BS[] tainted
      • userSettableValues

        public static String[] userSettableValues
      • atomNames

        String[] atomNames
      • atomTypes

        String[] atomTypes
      • atomSerials

        int[] atomSerials
      • atomResnos

        int[] atomResnos
      • atomSeqIDs

        int[] atomSeqIDs
      • dssrData

        float[] dssrData
      • occupancies

        public float[] occupancies
      • bfactor100s

        short[] bfactor100s
      • partialCharges

        float[] partialCharges
      • bondingRadii

        float[] bondingRadii
      • hydrophobicities

        float[] hydrophobicities
      • bsPartialCharges

        public javajs.util.BS bsPartialCharges
      • aaRet

        int[] aaRet
      • atomCapacity

        private int atomCapacity
    • Constructor Detail

      • AtomCollection

        public AtomCollection()
    • Method Detail

      • getAtom

        public Atom getAtom​(int iatom)
      • setupAC

        protected void setupAC()
      • releaseModelSetAC

        protected void releaseModelSetAC()
      • mergeAtomArrays

        protected void mergeAtomArrays​(AtomCollection mergeModelSet)
      • getAtomPointVector

        public javajs.util.Lst<javajs.util.P3> getAtomPointVector​(javajs.util.BS bs)
      • modelSetHasVibrationVectors

        public boolean modelSetHasVibrationVectors()
      • getAtomTypes

        public String[] getAtomTypes()
      • getPartialCharges

        public float[] getPartialCharges()
      • getBondingRadii

        public float[] getBondingRadii()
      • getBFactors

        public short[] getBFactors()
      • getHydrophobicity

        public float[] getHydrophobicity()
      • setBsHidden

        public void setBsHidden​(javajs.util.BS bs)
      • isAtomHidden

        public boolean isAtomHidden​(int iAtom)
      • getAtomInfo

        public String getAtomInfo​(int i,
                                  String format,
                                  javajs.util.P3 ptTemp)
      • getElementName

        public String getElementName​(int i)
      • getQuaternion

        public javajs.util.Quat getQuaternion​(int i,
                                              char qtype)
      • getFirstAtomIndexFromAtomNumber

        public int getFirstAtomIndexFromAtomNumber​(int atomNumber,
                                                   javajs.util.BS bsVisibleFrames)
      • setFormalCharges

        public void setFormalCharges​(javajs.util.BS bs,
                                     int formalCharge)
      • getAtomicCharges

        public float[] getAtomicCharges()
      • getRadiusVdwJmol

        protected float getRadiusVdwJmol​(Atom atom)
      • getMaxVanderwaalsRadius

        public float getMaxVanderwaalsRadius()
      • findMaxRadii

        protected void findMaxRadii()
      • clearBfactorRange

        public void clearBfactorRange()
      • calcBfactorRange

        private void calcBfactorRange​(javajs.util.BS bs)
      • setBf

        private void setBf​(int i)
      • getBfactor100Lo

        public int getBfactor100Lo()
      • getBfactor100Hi

        public int getBfactor100Hi()
      • getSurfaceDistanceMax

        public int getSurfaceDistanceMax()
      • calculateVolume

        public float calculateVolume​(javajs.util.BS bs,
                                     VDW vType)
      • getSurfaceDistance100

        int getSurfaceDistance100​(int atomIndex)
      • calcSurfaceDistances

        private void calcSurfaceDistances()
      • calculateSurface

        public javajs.util.P3[] calculateSurface​(javajs.util.BS bsSelected,
                                                 float envelopeRadius)
      • setAtomCoord2

        protected void setAtomCoord2​(javajs.util.BS bs,
                                     int tokType,
                                     Object xyzValues)
      • setAtomVibrationVector

        private void setAtomVibrationVector​(int atomIndex,
                                            javajs.util.T3 vib)
      • setAtomCoord

        public void setAtomCoord​(int atomIndex,
                                 float x,
                                 float y,
                                 float z)
      • fixTrajectory

        private void fixTrajectory​(Atom a)
      • setAtomCoordRelative

        public void setAtomCoordRelative​(int atomIndex,
                                         float x,
                                         float y,
                                         float z)
      • setAtomsCoordRelative

        protected void setAtomsCoordRelative​(javajs.util.BS bs,
                                             float x,
                                             float y,
                                             float z)
      • setAPa

        protected void setAPa​(javajs.util.BS bs,
                              int tok,
                              int iValue,
                              float fValue,
                              String sValue,
                              float[] values,
                              String[] list)
      • getVibCoord

        public float getVibCoord​(int atomIndex,
                                 char c)
        also handles modulation info
        Parameters:
        atomIndex -
        c -
        Returns:
        value or NaN
      • getVibration

        public Vibration getVibration​(int atomIndex,
                                      boolean forceNew)
      • setVibrationVector

        protected void setVibrationVector​(int atomIndex,
                                          javajs.util.T3 vib)
      • setVibrationVector2

        private void setVibrationVector2​(int atomIndex,
                                         int tok,
                                         float fValue)
      • setAtomName

        public void setAtomName​(int atomIndex,
                                String name,
                                boolean doTaint)
      • setAtomType

        private void setAtomType​(int atomIndex,
                                 String type)
      • setChainID

        private void setChainID​(int atomIndex,
                                String id)
      • setAtomNumber

        public void setAtomNumber​(int atomIndex,
                                  int atomno,
                                  boolean doTaint)
      • setElement

        public void setElement​(Atom atom,
                               int atomicNumber,
                               boolean doTaint)
      • resetPartialCharges

        private void resetPartialCharges()
      • setAtomResno

        private void setAtomResno​(int atomIndex,
                                  int resno)
      • setAtomSeqID

        private void setAtomSeqID​(int atomIndex,
                                  int seqID)
      • setOccupancy

        protected void setOccupancy​(int atomIndex,
                                    float occupancy,
                                    boolean doTaint)
      • setPartialCharge

        protected void setPartialCharge​(int atomIndex,
                                        float partialCharge,
                                        boolean doTaint)
      • setBondingRadius

        private void setBondingRadius​(int atomIndex,
                                      float radius)
      • setBFactor

        protected void setBFactor​(int atomIndex,
                                  float bfactor,
                                  boolean doTaint)
      • setHydrophobicity

        private void setHydrophobicity​(int atomIndex,
                                       float value)
      • setAtomData

        public void setAtomData​(int type,
                                String name,
                                String dataString,
                                boolean isDefault)
      • loadCoordinates

        private void loadCoordinates​(String data,
                                     boolean isVibrationVectors,
                                     boolean doTaint)
      • validateBspf

        public void validateBspf​(boolean isValid)
      • validateBspfForModel

        void validateBspfForModel​(int modelIndex,
                                  boolean isValid)
      • setPreserveState

        public void setPreserveState​(boolean TF)
      • getUserSettableType

        public static int getUserSettableType​(String dataType)
      • getTaintedAtoms

        public javajs.util.BS getTaintedAtoms​(int type)
      • taintAtoms

        public void taintAtoms​(javajs.util.BS bsAtoms,
                               int type)
      • taintAtom

        public void taintAtom​(int atomIndex,
                              int type)
      • taintModelCoord

        private void taintModelCoord​(int atomIndex)
      • untaint

        private void untaint​(int atomIndex,
                             int type)
      • setTaintedAtoms

        public void setTaintedAtoms​(javajs.util.BS bs,
                                    int type)
      • unTaintAtoms

        public void unTaintAtoms​(javajs.util.BS bs,
                                 int type)
      • findNearest2

        protected void findNearest2​(int x,
                                    int y,
                                    Atom[] closest,
                                    javajs.util.BS bsNot,
                                    int min)
      • isCursorOnTopOf

        boolean isCursorOnTopOf​(Atom contender,
                                int x,
                                int y,
                                int radius,
                                Atom champion)
        used by Frame and AminoMonomer and NucleicMonomer -- does NOT check for clickability
        Parameters:
        contender -
        x -
        y -
        radius -
        champion -
        Returns:
        true if user is pointing to this atom
      • fillADa

        protected void fillADa​(AtomData atomData,
                               int mode)
      • getWorkingRadius

        private float getWorkingRadius​(Atom atom,
                                       AtomData atomData)
      • calculateHydrogens

        public javajs.util.P3[][] calculateHydrogens​(javajs.util.BS bs,
                                                     int[] nTotal,
                                                     boolean doAll,
                                                     boolean justCarbon,
                                                     javajs.util.Lst<Atom> vConnect)
        get a list of potential H atom positions based on elemental valence and formal charge
        Parameters:
        bs -
        nTotal -
        doAll - -- whether we add to C that already have H or not.
        justCarbon -
        vConnect -
        Returns:
        array of arrays of points added to specific atoms
      • isAdjacentSp2

        private boolean isAdjacentSp2​(Atom atom)
      • getMissingHydrogenCount

        public int getMissingHydrogenCount​(Atom atom,
                                           boolean allowNegative)
      • fixFormalCharges

        public int fixFormalCharges​(javajs.util.BS bs)
      • getHybridizationAndAxes

        public String getHybridizationAndAxes​(int atomIndex,
                                              int atomicNumber,
                                              javajs.util.V3 z,
                                              javajs.util.V3 x,
                                              String lcaoTypeRaw,
                                              boolean hybridizationCompatible,
                                              boolean doAlignZ)
      • getHybridizationAndAxesD

        private String getHybridizationAndAxesD​(int atomIndex,
                                                javajs.util.V3 z,
                                                javajs.util.V3 x,
                                                String lcaoType)
        dsp3 (trigonal bipyramidal, see-saw, T-shaped) or d2sp3 (square planar, square pyramidal, octahedral)
        Parameters:
        atomIndex -
        z -
        x -
        lcaoType -
        Returns:
        valid hybridization or null
      • getAttached

        private Atom[] getAttached​(Atom atom,
                                   int nMax,
                                   boolean doSort)
      • findNotAttached

        private javajs.util.BS findNotAttached​(int nAttached,
                                               int[][] angles,
                                               int[] ptrs,
                                               int nPtrs)
      • getAtomBitsMDa

        public javajs.util.BS getAtomBitsMDa​(int tokType,
                                             Object specInfo,
                                             javajs.util.BS bs)
        general unqualified lookup of atom set type
        Parameters:
        tokType -
        specInfo -
        bs - - to be filled
        Returns:
        BitSet; or null if we mess up the type
      • getChainBits

        public javajs.util.BS getChainBits​(int chainID)
      • chainToUpper

        public int chainToUpper​(int chainID)
      • isAltLoc

        private boolean isAltLoc​(char altloc,
                                 String strPattern)
      • getSeqcodeBits

        public javajs.util.BS getSeqcodeBits​(int seqcode,
                                             boolean returnEmpty)
      • getIdentifierOrNull

        private javajs.util.BS getIdentifierOrNull​(String identifier)
        overhauled by RMH Nov 1, 2006.
        Parameters:
        identifier -
        Returns:
        null or bs
      • getSpecName

        private javajs.util.BS getSpecName​(String name)
      • getSpecNameOrNull

        public javajs.util.BS getSpecNameOrNull​(String name,
                                                boolean checkStar)
      • isAtomNameMatch

        private boolean isAtomNameMatch​(Atom atom,
                                        String strPattern,
                                        boolean checkStar,
                                        boolean allowInitialStar)
      • getAtomIndices

        public int[] getAtomIndices​(javajs.util.BS bs)
      • getAtomsNearPlane

        public javajs.util.BS getAtomsNearPlane​(float distance,
                                                javajs.util.P4 plane)
      • clearVisibleSets

        public void clearVisibleSets()
      • getAtomsInFrame

        public void getAtomsInFrame​(javajs.util.BS bsAtoms)
      • getVisibleSet

        public javajs.util.BS getVisibleSet​(boolean forceNew)
      • getClickableSet

        public javajs.util.BS getClickableSet​(boolean forceNew)
      • isModulated

        public boolean isModulated​(int i)
      • deleteModelAtoms

        protected void deleteModelAtoms​(int firstAtomIndex,
                                        int nAtoms,
                                        javajs.util.BS bsAtoms)
      • getAtomIdentityInfo

        public void getAtomIdentityInfo​(int i,
                                        Map<String,​Object> info,
                                        javajs.util.P3 ptTemp)
      • getAtomTensorList

        public Object[] getAtomTensorList​(int i)
      • deleteAtomTensors

        private void deleteAtomTensors​(javajs.util.BS bsAtoms)
      • setCapacity

        void setCapacity​(int nAtoms)
      • setAtomTensors

        public void setAtomTensors​(int atomIndex,
                                   javajs.util.Lst<Object> list)
      • addTensor

        public void addTensor​(Tensor t,
                              String type)
      • getTensorList

        private static Object[] getTensorList​(javajs.util.Lst<Object> list)
      • getAtomTensor

        public Tensor getAtomTensor​(int i,
                                    String type)
      • getAllAtomTensors

        public javajs.util.Lst<Object> getAllAtomTensors​(String type)
      • scaleVectorsToMax

        public void scaleVectorsToMax​(float max)
        Scales vibrations and associated vectors such that the maximum length is the given value
        Parameters:
        max -
      • getAtomsFromAtomNumberInFrame

        public javajs.util.BS getAtomsFromAtomNumberInFrame​(int atomNumber)
      • generateCrystalClass

        public javajs.util.Lst<javajs.util.P3> generateCrystalClass​(int atomIndex,
                                                                    javajs.util.P3 pt)