ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/radiance/ray/src/px/mx3.c
(Generate patch)

Comparing ray/src/px/mx3.c (file contents):
Revision 2.2 by greg, Sat Feb 22 02:07:27 2003 UTC vs.
Revision 2.3 by schorsch, Sun Mar 28 20:33:14 2004 UTC

# Line 2 | Line 2
2   static const char       RCSid[] = "$Id$";
3   #endif
4  
5 < double
6 < mx3d_adjoint(a, b)
7 < register double a[3][3], b[3][3];
5 > #include "mx3.h"
6 >
7 > extern double
8 > mx3d_adjoint(
9 >        register double a[3][3],
10 >        register double b[3][3]
11 > )
12   {
13      b[0][0] =  ((a[1][1])*( a[2][2]) - ( a[1][2])*( a[2][1]));
14      b[1][0] =  ((a[1][2])*( a[2][0]) - ( a[1][0])*( a[2][2]));
# Line 19 | Line 23 | register double a[3][3], b[3][3];
23   }
24  
25  
26 < mx3d_mul(a, b, c)
27 < register double a[3][3], b[3][3], c[3][3];
26 > extern void
27 > mx3d_mul(
28 >        register double a[3][3],
29 >        register double b[3][3],
30 >        register double c[3][3]
31 > )
32   {
33      c[0][0] = a[0][0]*b[0][0] + a[0][1]*b[1][0] + a[0][2]*b[2][0];
34      c[0][1] = a[0][0]*b[0][1] + a[0][1]*b[1][1] + a[0][2]*b[2][1];
# Line 34 | Line 42 | register double a[3][3], b[3][3], c[3][3];
42   }
43  
44  
45 < mx3d_transform(p, a, q)
46 < register double p[3], q[3];
47 < register double a[3][3];
45 > extern void
46 > mx3d_transform(
47 >        register double p[3],
48 >        register double a[3][3],
49 >        register double q[3]
50 > )
51   {
52      q[0] = p[0]*a[0][0] + p[1]*a[1][0] + p[2]*a[2][0];
53      q[1] = p[0]*a[0][1] + p[1]*a[1][1] + p[2]*a[2][1];
# Line 44 | Line 55 | register double a[3][3];
55   }
56  
57  
58 < double
59 < mx3d_transform_div(p, a, q)
60 < register double p[3], q[2];
61 < register double a[3][3];
58 > extern double
59 > mx3d_transform_div(
60 >        register double p[3],
61 >        register double a[3][3],
62 >        register double q[2]
63 > )
64   {
65      double q2;
66      q2 = p[0]*a[0][2] + p[1]*a[1][2] + p[2]*a[2][2];
# Line 59 | Line 72 | register double a[3][3];
72   }
73  
74  
75 < mx3d_translate_mat(tx, ty, m)
76 < double tx, ty;
77 < register double m[3][3];
75 > extern void
76 > mx3d_translate_mat(
77 >        double tx,
78 >        double ty,
79 >        register double m[3][3]
80 > )
81   {
82      m[0][0] = 1.; m[0][1] = 0.; m[0][2] = 0.;
83      m[1][0] = 0.; m[1][1] = 1.; m[1][2] = 0.;
# Line 69 | Line 85 | register double m[3][3];
85   }
86  
87  
88 < mx3d_translate(m, tx, ty)
89 < register double m[3][3];
90 < double tx, ty;
88 > extern void
89 > mx3d_translate(
90 >        register double m[3][3],
91 >        double tx,
92 >        double ty
93 > )
94   {
95      m[3][0] += tx*m[0][0]+ty*m[1][0];
96      m[3][1] += tx*m[0][1]+ty*m[1][1];
# Line 79 | Line 98 | double tx, ty;
98   }
99  
100  
101 < mx3d_scale_mat(sx, sy, m)
102 < double sx, sy;
103 < register double m[3][3];
101 > extern void
102 > mx3d_scale_mat(
103 >        double sx,
104 >        double sy,
105 >        register double m[3][3]
106 > )
107   {
108      m[0][0] = sx; m[0][1] = 0.; m[0][2] = 0.;
109      m[1][0] = 0.; m[1][1] = sy; m[1][2] = 0.;
# Line 89 | Line 111 | register double m[3][3];
111   }
112  
113  
114 < mx3d_scale(m, sx, sy)
115 < register double m[3][3];
116 < double sx, sy;
114 > extern void
115 > mx3d_scale(
116 >        register double m[3][3],
117 >        double sx,
118 >        double sy
119 > )
120   {
121      m[0][0] *= sx; m[0][1] *= sx; m[0][2] *= sx;
122      m[1][0] *= sy; m[1][1] *= sy; m[1][2] *= sy;

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines