home *** CD-ROM | disk | FTP | other *** search
/ S283 Planetary Science &n…he Search for Life DVD 2 / DVD-ROM.iso / install / jre1_3 / lib / rt.jar / java / awt / geom / QuadIterator.class (.txt) < prev    next >
Encoding:
Java Class File  |  1979-12-31  |  1.2 KB  |  77 lines

  1. package java.awt.geom;
  2.  
  3. import java.util.NoSuchElementException;
  4.  
  5. class QuadIterator implements PathIterator {
  6.    QuadCurve2D quad;
  7.    AffineTransform affine;
  8.    int index;
  9.  
  10.    QuadIterator(QuadCurve2D var1, AffineTransform var2) {
  11.       this.quad = var1;
  12.       this.affine = var2;
  13.    }
  14.  
  15.    public int getWindingRule() {
  16.       return 1;
  17.    }
  18.  
  19.    public boolean isDone() {
  20.       return this.index > 1;
  21.    }
  22.  
  23.    public void next() {
  24.       ++this.index;
  25.    }
  26.  
  27.    public int currentSegment(float[] var1) {
  28.       if (this.isDone()) {
  29.          throw new NoSuchElementException("quad iterator iterator out of bounds");
  30.       } else {
  31.          byte var2;
  32.          if (this.index == 0) {
  33.             var1[0] = (float)this.quad.getX1();
  34.             var1[1] = (float)this.quad.getY1();
  35.             var2 = 0;
  36.          } else {
  37.             var1[0] = (float)this.quad.getCtrlX();
  38.             var1[1] = (float)this.quad.getCtrlY();
  39.             var1[2] = (float)this.quad.getX2();
  40.             var1[3] = (float)this.quad.getY2();
  41.             var2 = 2;
  42.          }
  43.  
  44.          if (this.affine != null) {
  45.             this.affine.transform(var1, 0, var1, 0, this.index == 0 ? 1 : 2);
  46.          }
  47.  
  48.          return var2;
  49.       }
  50.    }
  51.  
  52.    public int currentSegment(double[] var1) {
  53.       if (this.isDone()) {
  54.          throw new NoSuchElementException("quad iterator iterator out of bounds");
  55.       } else {
  56.          byte var2;
  57.          if (this.index == 0) {
  58.             var1[0] = this.quad.getX1();
  59.             var1[1] = this.quad.getY1();
  60.             var2 = 0;
  61.          } else {
  62.             var1[0] = this.quad.getCtrlX();
  63.             var1[1] = this.quad.getCtrlY();
  64.             var1[2] = this.quad.getX2();
  65.             var1[3] = this.quad.getY2();
  66.             var2 = 2;
  67.          }
  68.  
  69.          if (this.affine != null) {
  70.             this.affine.transform(var1, 0, var1, 0, this.index == 0 ? 1 : 2);
  71.          }
  72.  
  73.          return var2;
  74.       }
  75.    }
  76. }
  77.