Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Diff of /trunk/test/vr-MIP.diderot
ViewVC logotype

Diff of /trunk/test/vr-MIP.diderot

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 142, Thu Jul 8 19:12:02 2010 UTC revision 247, Fri Aug 6 20:20:42 2010 UTC
# Line 4  Line 4 
4  //  //
5    
6  input string dataFile;          // name of dataset  input string dataFile;          // name of dataset
7  input real stepSz;              // size of steps  input real stepSz = 0.1;        // size of steps
8                                    // e.g. 0.1
9  input vec3 eye;                 // location of eye point  input vec3 eye;                 // location of eye point
10                                    // e.g. txs: (25,15,10)
11                                    //      vox1,x: (-8,2,2)
12                                    //      vox1,y: (2,-8,2)
13                                    //      vox1,z: (2,2,-8)
14  input vec3 orig;                // location of pixel (0,0)  input vec3 orig;                // location of pixel (0,0)
15                                    // e.g. txs: (8.83877,2.5911,7.65275)
16                                    //      vox1,x: (0,3.4036,3.4036)
17                                    //      vox1,y: (0.596402,0,3.4036)
18                                    //      vox1,z: (3.4036,3.4036,0)
19  input vec3 cVec;                // vector between pixels horizontally  input vec3 cVec;                // vector between pixels horizontally
20                                    // e.g. txs: (-0.0151831,0.0278357,0)
21                                    //      vox1,x: (0,-0.014036,0)
22                                    //      vox1,y: (0.014036,0,0)
23                                    //      vox1,z: (-0.014036,0,0)
24  input vec3 rVec;                // vector between pixels vertically  input vec3 rVec;                // vector between pixels vertically
25                                    // e.g. txs: (0.0074887,0.00408474,-0.0305383)
26                                    //      vox1,x: (0,0,-0.014036)
27                                    //      vox1,y: (0,0,-0.014036)
28                                    //      vox1,z: (0,-0.014036,0)
29    
30  image(3)[] img = load (dataFile);  image(3)[] img = load (dataFile);
31    
32  //field#1(3)[] F = convolve (bspln3, img);  //field#1(3)[] F = convolve (bspln3, img);
33  field#2(3)[] F = convolve (bspln3, img);  field#2(3)[] F = img ⊛ bspln3;
34    
35  actor RayCast (int row, int col)  actor RayCast (int row, int col)
36  {  {
37      vec3        pos = orig + real(row)*rVec + real(col)*cVec;      vec3        pos = orig + real(row)*rVec + real(col)*cVec;
38      vec3        dir = (pos - eye)/|pos - eye|;      vec3        dir = (pos - eye)/|pos - eye|;
39      real        t = 0.0;      real        t = 0.0;
40      real        maxval = -inf;      output real maxval = -inf;
     int         num = 0;  
41    
42      update      update
43      {      {
44          vec3 pt = pos + t*dir;          pos = pos + stepSz*dir;
45          real val = F@pt;          if (inside (pos,F)) {
46              real val = F@pos;
47          maxval = max(val, maxval);          maxval = max(val, maxval);
48          if (t > 1.0)          }
49            if (t > 20.0)
50              stabilize;              stabilize;
51          t = t + stepSz;          t = t + stepSz;
         num = num + 1;  
52      }      }
53    
54      /* render: output maxval */      /* render: output maxval */
55  }  }
56    
57  initially [ RayCast(r, c) | r in 0..1023, c in 0..1023 ];  initially [ RayCast(r, c) | r in 0..199, c in 0..199 ];

Legend:
Removed from v.142  
changed lines
  Added in v.247

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0