Mercurial > hg > jslab
annotate src/samer/tools/ArrayVImageSource.java @ 8:5e3cbbf173aa tip
Reorganise some more
| author | samer |
|---|---|
| date | Fri, 05 Apr 2019 22:41:58 +0100 |
| parents | bf79fb79ee13 |
| children |
| rev | line source |
|---|---|
| samer@0 | 1 /* |
| samer@0 | 2 * Copyright (c) 2000, Samer Abdallah, King's College London. |
| samer@0 | 3 * All rights reserved. |
| samer@0 | 4 * |
| samer@0 | 5 * This software is provided AS iS and WITHOUT ANY WARRANTY; |
| samer@0 | 6 * without even the implied warranty of MERCHANTABILITY or |
| samer@0 | 7 * FITNESS FOR A PARTICULAR PURPOSE. |
| samer@0 | 8 */ |
| samer@0 | 9 |
| samer@0 | 10 package samer.tools; |
| samer@0 | 11 import java.awt.image.*; |
| samer@0 | 12 |
| samer@0 | 13 public class ArrayVImageSource extends ImageSourceBase |
| samer@0 | 14 { |
| samer@0 | 15 double array[]; |
| samer@0 | 16 byte buf[]; |
| samer@0 | 17 |
| samer@0 | 18 public ArrayVImageSource( double A[]) |
| samer@0 | 19 { |
| samer@0 | 20 array = A; |
| samer@0 | 21 width = 1; |
| samer@0 | 22 height = A.length; |
| samer@0 | 23 buf = new byte[A.length]; |
| samer@0 | 24 } |
| samer@0 | 25 |
| samer@0 | 26 protected int getHints() { |
| samer@0 | 27 return ImageConsumer.TOPDOWNLEFTRIGHT |
| samer@0 | 28 | ImageConsumer.COMPLETESCANLINES |
| samer@0 | 29 | ImageConsumer.SINGLEPASS; |
| samer@0 | 30 } |
| samer@0 | 31 |
| samer@0 | 32 protected void sendPixels(ImageConsumer ic) |
| samer@0 | 33 { |
| samer@0 | 34 int i, j; |
| samer@0 | 35 for (i=0,j=array.length-1; i<array.length; i++,j--) { |
| samer@0 | 36 buf[i] = (byte)map.clipInt(array[j]); |
| samer@0 | 37 } |
| samer@0 | 38 ic.setPixels(0, 0, width, height, model, buf, 0, 1); |
| samer@0 | 39 } |
| samer@0 | 40 } |
