cz.cuni.jagrlib.testing
Class UniformGrid.RayIteratorOld

java.lang.Object
  extended by cz.cuni.jagrlib.DefaultProperty
      extended by cz.cuni.jagrlib.DefaultBrepIterator
          extended by cz.cuni.jagrlib.testing.UniformGrid.RayIteratorOld
All Implemented Interfaces:
BrepIterator, Property
Enclosing class:
UniformGrid

protected class UniformGrid.RayIteratorOld
extends DefaultBrepIterator

Custom iterator for ray-segment-pass (old version).


Field Summary
protected  double[] act0
          Temporary array to hold vertex coordinates.
protected  double[] act1
           
protected  int attrEdge
          Accelerator: attribute holding edge vertices.
protected  int attrVertex
          Accelerator: attribute holding vertex coordinates.
protected  double[] direction
          Ray direction.
protected  java.util.SortedSet<UniformGrid.GridHeapItem> heap
          Working heap.
protected  double[] origin
          Ray origin.
protected  java.util.BitSet used
          Set of already examined objects.
protected  int[] vert
          Temporary array for edge (face) vertex handles.
 
Fields inherited from interface cz.cuni.jagrlib.iface.BrepIterator
CONTEXT, PROJ_COORDS, SORT_ASCENDING, SORT_DESCENDING, SORT_ORDER
 
Fields inherited from interface cz.cuni.jagrlib.iface.Property
LOGGING, STATISTICS, TEXT_DESCRIPTION
 
Constructor Summary
protected UniformGrid.RayIteratorOld()
           
 
Method Summary
 void init(double[] orig, double[] dir)
           
protected  void initHeap()
          Initializes the heap (should be called at the beginning of each pass).
protected  void insertCell(int index)
          Inserts all objects from the given cell into the heap.
 int next()
          Returns the next object or NULL.
 void reset()
          Reset the iterator.
 
Methods inherited from class cz.cuni.jagrlib.DefaultBrepIterator
left, toArray
 
Methods inherited from class cz.cuni.jagrlib.DefaultProperty
booleanProperty, booleanProperty, colorDoubleProperty, colorProperty, commit, doubleProperty, doubleProperty, doubleProperty, enumProperty, floatProperty, floatProperty, floatProperty, get, intProperty, intProperty, intProperty, longProperty, longProperty, longProperty, set, set, stringProperty
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface cz.cuni.jagrlib.iface.Property
commit, get, set
 

Field Detail

origin

protected final double[] origin
Ray origin.


direction

protected final double[] direction
Ray direction.


heap

protected java.util.SortedSet<UniformGrid.GridHeapItem> heap
Working heap.


used

protected final java.util.BitSet used
Set of already examined objects.


act0

protected final double[] act0
Temporary array to hold vertex coordinates.


act1

protected final double[] act1

vert

protected final int[] vert
Temporary array for edge (face) vertex handles.


attrEdge

protected final int attrEdge
Accelerator: attribute holding edge vertices.


attrVertex

protected final int attrVertex
Accelerator: attribute holding vertex coordinates.

Constructor Detail

UniformGrid.RayIteratorOld

protected UniformGrid.RayIteratorOld()
Method Detail

init

public void init(double[] orig,
                 double[] dir)

insertCell

protected void insertCell(int index)
Inserts all objects from the given cell into the heap.


initHeap

protected void initHeap()
Initializes the heap (should be called at the beginning of each pass).


reset

public void reset()
Reset the iterator.

Specified by:
reset in interface BrepIterator
Specified by:
reset in class DefaultBrepIterator

next

public final int next()
Returns the next object or NULL.

Specified by:
next in interface BrepIterator
Specified by:
next in class DefaultBrepIterator
Returns:
Brep.NULL if there is no next object available.