Copyright (C) 1992, Digital Equipment Corporation
All rights reserved.
See the file COPYRIGHT for a full description.
Last modified on Fri Sep 25 15:37:10 PDT 1992 by msm
<*PRAGMA LL*>
MODULE Gray;
IMPORT Pixmap, Point, Rect, ScrnPixmap;
TYPE
A3 = ARRAY [0..2] OF [0..9];
CONST
Intense3 = ARRAY [0..2] OF A3 {A3 {7, 9, 5},
A3 {2, 1, 4},
A3 {6, 3, 8}};
PROCEDURE New3x3(intensity:[0..9]):Pixmap.T =
VAR bounds := Rect.FromSize(3, 3);
raw := ScrnPixmap.NewRaw(1, bounds);
BEGIN
FOR h := 0 TO 2 DO
FOR v := 0 TO 2 DO
IF intensity >= Intense3[h, v] THEN
raw.set(Point.FromCoords(h,v), 1);
ELSE
raw.set(Point.FromCoords(h,v), 0);
END;
END;
END;
RETURN Pixmap.FromBitmap(raw);
END New3x3;
TYPE
A4 = ARRAY [0..3] OF [0..16];
CONST
Intense4 = ARRAY [0..3] OF A4 {A4 { 1, 9, 3, 11},
A4 {13, 5, 15, 7},
A4 { 4, 12, 2, 10},
A4 {16, 8, 14, 6}};
PROCEDURE New4x4(intensity:[0..16]):Pixmap.T =
VAR bounds := Rect.FromSize(4, 4);
raw := ScrnPixmap.NewRaw(1, bounds);
BEGIN
FOR h := 0 TO 3 DO
FOR v := 0 TO 3 DO
IF intensity >= Intense4[h,v] THEN
raw.set(Point.FromCoords(h,v), 1);
ELSE
raw.set(Point.FromCoords(h,v), 0);
END;
END;
END;
RETURN Pixmap.FromBitmap(raw);
END New4x4;
BEGIN
END Gray.