1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
|
# Copyright(c) 1986 Association of Universities for Research in Astronomy Inc.
include <error.h>
include "imexam.h"
# IE_PRINT -- Print box of pixel values
procedure ie_print (ie, x, y)
pointer ie # IMEXAM structure
real x, y # Center of box
int i, j, x1, x2, y1, y2, nx
pointer im, data, ie_gimage(), ie_gdata()
begin
iferr (im = ie_gimage (ie, NO)) {
call erract (EA_WARN)
return
}
x1 = x - 5 + 0.5
x2 = x + 5 + 0.5
y1 = y - 5 + 0.5
y2 = y + 5 + 0.5
iferr (data = ie_gdata (im, x1, x2, y1, y2)) {
call erract (EA_WARN)
return
}
nx = x2 - x1 + 1
call printf ("%4w")
do i = x1, x2 {
call printf (" %4d ")
call pargi (i)
}
call printf ("\n")
do j = y2, y1, -1 {
call printf ("%4d")
call pargi (j)
do i = x1, x2 {
call printf (" %5g")
call pargr (Memr[data+(j-y1)*nx+(i-x1)])
}
call printf ("\n")
}
if (IE_LOGFD(ie) != NULL) {
call fprintf (IE_LOGFD(ie), "%4w")
do i = x1, x2 {
call fprintf (IE_LOGFD(ie), " %4d ")
call pargi (i)
}
call fprintf (IE_LOGFD(ie), "\n")
do j = y2, y1, -1 {
call fprintf (IE_LOGFD(ie), "%4d")
call pargi (j)
do i = x1, x2 {
call fprintf (IE_LOGFD(ie), " %5g")
call pargr (Memr[data+(j-y1)*nx+(i-x1)])
}
call fprintf (IE_LOGFD(ie), "\n")
}
}
end
|