Class EnvelopeCalculation

java.lang.Object
org.jmol.geodesic.EnvelopeCalculation
All Implemented Interfaces:
JmolEnvCalc

public final class EnvelopeCalculation extends Object implements JmolEnvCalc
  • Field Details

    • geodesicMap

      private javajs.util.BS geodesicMap
    • mapT

      private javajs.util.BS mapT
    • mads

      private short[] mads
    • atomData

      private AtomData atomData
    • vwr

      private AtomDataServer vwr
    • ac

      private int ac
    • EMPTY_SET

      private static javajs.util.BS EMPTY_SET
    • maxRadius

      private float maxRadius
    • modelZeroBased

      private boolean modelZeroBased
    • disregardNeighbors

      private boolean disregardNeighbors
    • bsMySelected

      private javajs.util.BS bsMySelected
    • dotsConvexMaps

      private javajs.util.BS[] dotsConvexMaps
    • dotsConvexMax

      private int dotsConvexMax
    • geodesicCount

      private int geodesicCount
    • bsSurface

      private javajs.util.BS bsSurface
    • radiusP

      private float radiusP
    • diameterP

      private float diameterP
    • bsTemp

      private javajs.util.BS bsTemp
    • bsIgnore

      private javajs.util.BS bsIgnore
    • onlySelectedDots

      private boolean onlySelectedDots
    • isSurface

      private boolean isSurface
    • multiModel

      private boolean multiModel
    • currentPoints

      private javajs.util.P3[] currentPoints
    • indexI

      private int indexI
    • centerI

      private javajs.util.P3 centerI
    • radiusI

      private float radiusI
    • radiiIP2

      private float radiiIP2
    • pointT

      private final javajs.util.P3 pointT
    • centerT

      private javajs.util.P3 centerT
    • vertexTest

      private final javajs.util.P3[] vertexTest
    • power4

      private static int[] power4
    • neighborCount

      private int neighborCount
    • neighborIndices

      private int[] neighborIndices
    • neighborCenters

      private javajs.util.P3[] neighborCenters
    • neighborPlusProbeRadii2

      private float[] neighborPlusProbeRadii2
    • neighborRadii2

      private float[] neighborRadii2
  • Constructor Details

    • EnvelopeCalculation

      public EnvelopeCalculation()
  • Method Details

    • set

      public EnvelopeCalculation set(AtomDataServer vwr, int ac, short[] mads)
      Specified by:
      set in interface JmolEnvCalc
      Parameters:
      vwr -
      ac -
      mads -
      Returns:
      this
    • getDotsConvexMaps

      public javajs.util.BS[] getDotsConvexMaps()
    • getDotsConvexMax

      public int getDotsConvexMax()
    • allocDotsConvexMaps

      public void allocDotsConvexMaps(int max)
    • getBsSurfaceClone

      public javajs.util.BS getBsSurfaceClone()
      Specified by:
      getBsSurfaceClone in interface JmolEnvCalc
    • setMads

      public void setMads(short[] mads)
    • setFromBits

      public void setFromBits(int index, javajs.util.BS bs)
    • newSet

      public void newSet()
    • reCalculate

      public void reCalculate(javajs.util.BS bs, javajs.util.M3 m)
      problem prior to 12.3.18 was that dots once on the deodesic were not being moved. this isn't perfect, but it's reasonably good. Mostly, you should recreate dots after rotateSelected. This isn't a problem until after a state is saved and reloaded, since only then with atomData.radiusData be null.
      Parameters:
      bs -
      m -
    • calculate

      public void calculate(RadiusData rd, float maxRadius, javajs.util.BS bsSelected, javajs.util.BS bsIgnore, boolean disregardNeighbors, boolean onlySelectedDots, boolean isSurface, boolean multiModel)
      Specified by:
      calculate in interface JmolEnvCalc
      Parameters:
      rd -
      maxRadius -
      bsSelected -
      bsIgnore -
      disregardNeighbors -
      onlySelectedDots -
      isSurface -
      multiModel -
    • getRadius

      public float getRadius(int atomIndex)
    • getPoints

      public javajs.util.P3[] getPoints()
      Specified by:
      getPoints in interface JmolEnvCalc
    • setDotsConvexMax

      private void setDotsConvexMax()
    • getAppropriateRadius

      public float getAppropriateRadius(int atomIndex)
    • setAtomI

      private void setAtomI(int indexI)
    • calcConvexMap

      private void calcConvexMap(boolean isSurface)
    • addIncompleteFaces

      private void addIncompleteFaces(javajs.util.BS points)
    • calcConvexBits

      private void calcConvexBits()
    • checkNewDotsArray

      private void checkNewDotsArray()
    • getNeighbors

      private AtomIndexIterator getNeighbors(AtomIndexIterator iter)
    • deleteAtoms

      public void deleteAtoms(int firstAtomDeleted, int nAtomsDeleted)
      Parameters:
      firstAtomDeleted -
      nAtomsDeleted -