AtomDataReader
Date: 2019-10-22

org.jmol.jvxl.readers

## Class AtomDataReader

- java.lang.Object
- - org.jmol.jvxl.readers.SurfaceReader
  - - org.jmol.jvxl.readers.VolumeDataReader
    - - org.jmol.jvxl.readers.AtomDataReader

- All Implemented Interfaces:
    VertexDataServer
  Direct Known Subclasses:
    AtomPropertyMapper, IsoFxyReader, IsoIntersectAtomReader, IsoIntersectReader, IsoMepReader, IsoMOReader, IsoPlaneReader, IsoSolventReader

      abstract class AtomDataReader
      extends VolumeDataReader

- - ### Field Summary

    Fields
    Modifier and Type | Field and Description
    --- | ---
    `protected int` | `ac`
    `protected AtomData` | `atomData`
    `protected int[]` | `atomIndex`
    `protected int[]` | `atomNo`
    `protected float[]` | `atomProp`
    `protected float[]` | `atomRadius`
    `protected javajs.util.P3[]` | `atomXyzTruncated`
    `protected javajs.util.BS` | `bsMyIgnored`
    `protected javajs.util.BS` | `bsMySelected`
    `protected javajs.util.BS` | `bsNearby`
    `protected javajs.util.BS` | `bsSurfaceVoxels`
    `protected ContactPair` | `contactPair`
    `protected boolean` | `doAddHydrogens`
    `protected boolean` | `doUseIterator`
    `protected java.lang.String` | `fileDotModel`
    `protected java.lang.String` | `fileName`
    `protected int` | `firstNearbyAtom`
    `protected boolean` | `haveOneProperty`
    `protected boolean` | `havePlane`
    `protected float` | `margin`
    `protected float` | `maxDistance`
    `protected float` | `maxRS` maximun (atom radius + solvent radius)
    `private float` | `minPtsPerAng`
    `protected int` | `modelIndex`
    `protected int` | `myAtomCount`
    `protected int[]` | `myIndex`
    `protected int` | `nearbyAtomCount`
    `protected javajs.util.BS` | `noFaceSpheres`
    `protected javajs.util.P3i` | `pt0`
    `protected javajs.util.P3i` | `pt1`
    `protected javajs.util.P3` | `ptV`
    `protected javajs.util.P3` | `ptY0`
    `protected javajs.util.P3` | `ptZ0`
    `protected float[]` | `rs` atom radius + solvent radius
    `protected float[]` | `rs2` square of (atom radius + solvent radius)
    `protected float` | `sr` solvent radius
    `protected float` | `theProperty`
    `protected javajs.util.BS` | `thisAtomSet`
    `protected float[]` | `thisPlane`
    `protected int` | `thisX`
    `protected javajs.util.BS` | `validSpheres`
    `protected float` | `vl0`
    `protected float` | `vl1`
    `protected float` | `vl2`
    `protected int[]` | `voxelSource`

    - ### Fields inherited from class org.jmol.jvxl.readers.VolumeDataReader

      `allowMapData, dataType, maxGrid, point, precalculateVoxelData, ptsPerAngstrom, useOriginStepsPoints`

    - ### Fields inherited from class org.jmol.jvxl.readers.SurfaceReader

      `allowSigma, ANGSTROMS_PER_BOHR, anisotropy, center, cJvxlEdgeNaN, colorFractionBase, colorFractionRange, contourVertexCount, dataMax, dataMean, dataMin, defaultCutoff, defaultMappedDataMax, defaultMappedDataMin, eccentricityMatrix, eccentricityMatrixInverse, eccentricityRatio, eccentricityScale, edgeFractionBase, edgeFractionRange, fractionData, hasColorData, haveSurfaceAtoms, isAnisotropic, isEccentric, isJvxl, isPeriodic, isProgressive, isQuiet, isXLowToHigh, jvxlColorDataRead, jvxlCutoff, jvxlData, jvxlDataIs2dContour, jvxlDataIsColorDensity, jvxlDataIsColorMapped, jvxlDataIsPrecisionColor, jvxlEdgeDataRead, jvxlFileHeaderBuffer, jvxlNSurfaceInts, jvxlVoxelBitSet, marchingCubes, marchingSquares, meshData, meshDataServer, minMax, nBytes, nDataPoints, nPointsX, nPointsY, nPointsZ, params, ptTemp, qpc, sg, vertexDataOnly, volumeData, volumetricOrigin, volumetricVectors, voxelCounts, voxelData, xyzMax, xyzMin, yzCount, yzPlanes`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `AtomDataReader()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `private void` | `addAtomProp(int i, float f)`
    `protected void` | `getAtomMinMax(javajs.util.BS bs, javajs.util.BS[] bsAtomMinMax)`
    `protected void` | `getAtoms(javajs.util.BS bsSelected, boolean doAddHydrogens, boolean getRadii, boolean getMolecules, boolean getAllModels, boolean addNearbyAtoms, boolean getAtomMinMax, float marginAtoms, javajs.util.M4 modelInvRotation)`
    `private float` | `getVoxel(int i, int j, int k, int ipt)`
    `private float` | `getWorkingRadius(int i, float marginAtoms)`
    `protected void` | `initADR(SurfaceGenerator sg)`
    `protected void` | `markPlaneVoxels(javajs.util.P3 p, float r)`
    `protected void` | `markSphereVoxels(float r0, float distance)`
    `protected void` | `resetPlane(float value)`
    `protected void` | `resetVoxelData(float value)`
    `protected void` | `setGridLimitsForAtom(javajs.util.P3 ptA, float rA, javajs.util.P3i pt0, javajs.util.P3i pt1)`
    `protected void` | `setHeader(java.lang.String calcType, java.lang.String line2)`
    `protected void` | `setRadii()`
    `protected void` | `setRanges(float ptsPerAngstrom, int maxGrid, float minPtsPerAng)`
    `protected void` | `setup(boolean isMapData)`
    `protected void` | `setup2()`
    `protected void` | `setVertexSource()`
    `protected void` | `setVolumeData()`
    `protected void` | `setVolumeDataADR()`
    `protected void` | `setVolumeForPlane()`
    `protected void` | `setVoxel(int i, int j, int k, int ipt, float value)`
    `protected void` | `unsetVoxelData()`
    `protected void` | `unsetVoxelData2()`

    - ### Methods inherited from class org.jmol.jvxl.readers.VolumeDataReader

      `closeReader, generateCube, init, initVDR, readSurfaceData, readSurfaceDataVDR, readVolumeData, readVolumeParameters, readVoxelDataIndividually, setVolumeDataParams, setVoxelRange, showGridInfo`

    - ### Methods inherited from class org.jmol.jvxl.readers.SurfaceReader

      `addTriangleCheck, addVC, addVertexCopy, applyColorScale, colorIsosurface, createIsosurface, discardTempData, discardTempDataSR, excludeMaximumSet, excludeMinimumSet, finalizeMapping, getColorPhaseIndex, getMinMaxMappedValues, getPlane, getPlaneSR, getSPF, getSurfaceAtomIndex, getSurfacePointAndFraction, getSurfacePointIndexAndFraction, getValue, getValue2, getValueAtPoint, gotoAndReadVoxelData, gotoData, initializeMapping, initializeVolumetricData, initPlanes, initSR, jvxlUpdateInfo, newVoxelDataCube, postProcessVertices, readAndSetVolumeParameters, readColorData, resetIsosurface, selectPocket, setBBox, setOutputChannel, setVectorAnisotropy, setVertexAnisotropy, setVolumeDataV, setVolumetricAnisotropy, setVolumetricOriginAnisotropy, slabIsosurface, updateSurfaceData, updateTriangles`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Field Detail

    - #### maxDistance

          protected float maxDistance

    - #### contactPair

          protected ContactPair contactPair

    - #### fileName

          protected java.lang.String fileName

    - #### fileDotModel

          protected java.lang.String fileDotModel

    - #### modelIndex

          protected int modelIndex

    - #### atomData

          protected AtomData atomData

    - #### atomXyzTruncated

          protected javajs.util.P3[] atomXyzTruncated

    - #### atomRadius

          protected float[] atomRadius

    - #### atomProp

          protected float[] atomProp

    - #### atomNo

          protected int[] atomNo

    - #### atomIndex

          protected int[] atomIndex

    - #### myIndex

          protected int[] myIndex

    - #### ac

          protected int ac

    - #### myAtomCount

          protected int myAtomCount

    - #### nearbyAtomCount

          protected int nearbyAtomCount

    - #### firstNearbyAtom

          protected int firstNearbyAtom

    - #### bsMySelected

          protected javajs.util.BS bsMySelected

    - #### bsMyIgnored

          protected javajs.util.BS bsMyIgnored

    - #### bsNearby

          protected javajs.util.BS bsNearby

    - #### doAddHydrogens

          protected boolean doAddHydrogens

    - #### havePlane

          protected boolean havePlane

    - #### doUseIterator

          protected boolean doUseIterator

    - #### theProperty

          protected float theProperty

    - #### haveOneProperty

          protected boolean haveOneProperty

    - #### minPtsPerAng

          private float minPtsPerAng

    - #### sr

          protected float sr

      solvent radius

    - #### rs

          protected float[] rs

      atom radius + solvent radius

    - #### rs2

          protected float[] rs2

      square of (atom radius + solvent radius)

    - #### maxRS

          protected float maxRS

      maximun (atom radius + solvent radius)

    - #### thisPlane

          protected float[] thisPlane

    - #### thisAtomSet

          protected javajs.util.BS thisAtomSet

    - #### thisX

          protected int thisX

    - #### margin

          protected float margin

    - #### vl0

          protected float vl0

    - #### vl1

          protected float vl1

    - #### vl2

          protected float vl2

    - #### bsSurfaceVoxels

          protected javajs.util.BS bsSurfaceVoxels

    - #### validSpheres

          protected javajs.util.BS validSpheres

    - #### noFaceSpheres

          protected javajs.util.BS noFaceSpheres

    - #### voxelSource

          protected int[] voxelSource

    - #### ptY0

          protected final javajs.util.P3 ptY0

    - #### ptZ0

          protected final javajs.util.P3 ptZ0

    - #### pt0

          protected final javajs.util.P3i pt0

    - #### pt1

          protected final javajs.util.P3i pt1

    - #### ptV

          protected final javajs.util.P3 ptV

  - ### Constructor Detail

    - #### AtomDataReader

          AtomDataReader()

  - ### Method Detail

    - #### initADR

          protected void initADR(SurfaceGenerator sg)

    - #### setup

          protected void setup(boolean isMapData)

      Overrides:
        `setup` in class `VolumeDataReader`
      Parameters:
        `isMapData` -

    - #### setup2

          protected void setup2()

    - #### markPlaneVoxels

          protected void markPlaneVoxels(javajs.util.P3 p,
                                         float r)

    - #### setVolumeForPlane

          protected void setVolumeForPlane()

    - #### getAtoms

          protected void getAtoms(javajs.util.BS bsSelected,
                                  boolean doAddHydrogens,
                                  boolean getRadii,
                                  boolean getMolecules,
                                  boolean getAllModels,
                                  boolean addNearbyAtoms,
                                  boolean getAtomMinMax,
                                  float marginAtoms,
                                  javajs.util.M4 modelInvRotation)

      Parameters:
        `bsSelected` -
        `doAddHydrogens` -
        `getRadii` -
        `getMolecules` -
        `getAllModels` -
        `addNearbyAtoms` -
        `getAtomMinMax` -
        `marginAtoms` -
        `modelInvRotation` -

    - #### setRadii

          protected void setRadii()

    - #### addAtomProp

          private void addAtomProp(int i,
                                   float f)

    - #### getWorkingRadius

          private float getWorkingRadius(int i,
                                         float marginAtoms)

    - #### setHeader

          protected void setHeader(java.lang.String calcType,
                                   java.lang.String line2)

    - #### setRanges

          protected void setRanges(float ptsPerAngstrom,
                                   int maxGrid,
                                   float minPtsPerAng)

    - #### setVolumeData

          protected void setVolumeData()

      Overrides:
        `setVolumeData` in class `VolumeDataReader`

    - #### setVolumeDataADR

          protected void setVolumeDataADR()

    - #### setVertexSource

          protected void setVertexSource()

    - #### resetPlane

          protected void resetPlane(float value)

    - #### resetVoxelData

          protected void resetVoxelData(float value)

    - #### getVoxel

          private float getVoxel(int i,
                                 int j,
                                 int k,
                                 int ipt)

    - #### unsetVoxelData

          protected void unsetVoxelData()

    - #### unsetVoxelData2

          protected void unsetVoxelData2()

    - #### setGridLimitsForAtom

          protected void setGridLimitsForAtom(javajs.util.P3 ptA,
                                              float rA,
                                              javajs.util.P3i pt0,
                                              javajs.util.P3i pt1)

    - #### getAtomMinMax

          protected void getAtomMinMax(javajs.util.BS bs,
                                       javajs.util.BS[] bsAtomMinMax)

    - #### markSphereVoxels

          protected void markSphereVoxels(float r0,
                                          float distance)

    - #### setVoxel

          protected void setVoxel(int i,
                                  int j,
                                  int k,
                                  int ipt,
                                  float value)