1 Clazz.declarePackage ("javajs.img");
\r
2 Clazz.load (["javajs.img.ImageEncoder"], "javajs.img.PpmEncoder", null, function () {
\r
3 c$ = Clazz.declareType (javajs.img, "PpmEncoder", javajs.img.ImageEncoder);
\r
4 Clazz.overrideMethod (c$, "setParams",
\r
7 Clazz.overrideMethod (c$, "generate",
\r
9 this.putString ("P6\n");
\r
10 this.putString (this.width + " " + this.height + "\n");
\r
11 this.putString ("255\n");
\r
12 var ppmPixels = Clazz.newByteArray (this.width * 3, 0);
\r
13 for (var pt = 0, row = 0; row < this.height; ++row) {
\r
14 for (var col = 0, j = 0; col < this.width; ++col, pt++) {
\r
15 var p = this.pixels[pt];
\r
16 ppmPixels[j++] = ((p >> 16) & 0xff);
\r
17 ppmPixels[j++] = ((p >> 8) & 0xff);
\r
18 ppmPixels[j++] = (p & 0xff);
\r
20 this.out.write (ppmPixels, 0, ppmPixels.length);
\r