Package org.jmol.bspt

Class CubeIterator

java.lang.Object
org.jmol.bspt.CubeIterator

public class CubeIterator extends Object
Iterator used for finding all points within a box or a hemi-box

Obtain a CubeIterator by calling Bspt.allocateCubeIterator().

call initialize(...) or initializeHemizphere(...)

re-initialize in order to reuse the same CubeIterator

Author:
Miguel, miguel@jmol.org
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private Bspt
     
    private float
     
    private float
     
    private float
     
    private float
     
    private float
     
    private float
     
    private Leaf
     
    private int
     
    private float
     
    private int
     
    private Element[]
     
    private boolean
     
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    private void
    does the work
    float
    After calling nextElement(), allows one to find out the value of the distance squared.
    boolean
    normal iterator predicate
    void
    initialize(javajs.util.T3 center, float radius, boolean hemisphereOnly)
    initialize to return all points within the sphere defined by center and radius
    private boolean
    isWithinRadius(javajs.util.T3 t)
    checks one Point3f for box-based distance
    javajs.util.T3
    normal iterator method
    void
    nulls internal references
    (package private) void
    set(Bspt bspt)
     

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • bspt

      private Bspt bspt
    • stack

      private Element[] stack
    • sp

      private int sp
    • leafIndex

      private int leafIndex
    • leaf

      private Leaf leaf
    • radius

      private float radius
    • cx

      private float cx
    • cy

      private float cy
    • cz

      private float cz
    • dx

      private float dx
    • dy

      private float dy
    • dz

      private float dz
    • tHemisphere

      private boolean tHemisphere
  • Constructor Details

    • CubeIterator

      CubeIterator(Bspt bspt)
  • Method Details

    • set

      void set(Bspt bspt)
    • initialize

      public void initialize(javajs.util.T3 center, float radius, boolean hemisphereOnly)
      initialize to return all points within the sphere defined by center and radius
      Parameters:
      center -
      radius -
      hemisphereOnly -
    • release

      public void release()
      nulls internal references
    • hasMoreElements

      public boolean hasMoreElements()
      normal iterator predicate
      Returns:
      boolean
    • nextElement

      public javajs.util.T3 nextElement()
      normal iterator method
      Returns:
      Tuple
    • foundDistance2

      public float foundDistance2()
      After calling nextElement(), allows one to find out the value of the distance squared. To get the distance just take the sqrt.
      Returns:
      float
    • findLeftLeaf

      private void findLeftLeaf()
      does the work
    • isWithinRadius

      private boolean isWithinRadius(javajs.util.T3 t)
      checks one Point3f for box-based distance
      Parameters:
      t -
      Returns:
      boolean