cz.cuni.jagrlib.piece
Class OrderSFC.Hilbert

java.lang.Object
  extended by java.lang.Thread
      extended by cz.cuni.jagrlib.piece.OrderSFC.Hilbert
All Implemented Interfaces:
java.lang.Runnable
Enclosing class:
OrderSFC

protected class OrderSFC.Hilbert
extends java.lang.Thread

Producer thread for the Peano-Hilbert order.


Nested Class Summary
 
Nested classes/interfaces inherited from class java.lang.Thread
java.lang.Thread.State, java.lang.Thread.UncaughtExceptionHandler
 
Field Summary
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
OrderSFC.Hilbert()
           
 
Method Summary
protected  boolean hilbert(int x, int y, int lg, int i1, int i2)
          Recursive SFC generation function.
 void run()
           
 
Methods inherited from class java.lang.Thread
activeCount, countStackFrames, currentThread, destroy, dumpStack, enumerate, getAllStackTraces, getContextClassLoader, getDefaultUncaughtExceptionHandler, getId, getName, getPriority, getStackTrace, getState, getThreadGroup, getUncaughtExceptionHandler, holdsLock, checkAccess, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setDefaultUncaughtExceptionHandler, setName, setPriority, setUncaughtExceptionHandler, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OrderSFC.Hilbert

public OrderSFC.Hilbert()
Method Detail

hilbert

protected boolean hilbert(int x,
                          int y,
                          int lg,
                          int i1,
                          int i2)
Recursive SFC generation function. Adopted from: Greg Breinholt, "Algorithm 781: generating Hilbert's space-filling curve by recursion" ACM Transactions on Mathematical Software (TOMS) archive, Volume 24, Issue 2 (June 1998), pp. 184 - 189.

Parameters:
x - Initial X-coordinate.
y - Initial Y-coordinate.
lg - Curve width (2m).
i1 - Starting point of the unit shape.
i2 - End point of the unit shape.

run

public void run()
Specified by:
run in interface java.lang.Runnable
Overrides:
run in class java.lang.Thread