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

SCM Repository

[diderot] View of /trunk/test/vr.diderot
ViewVC logotype

View of /trunk/test/vr.diderot

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2636 - (download) (annotate)
Tue May 27 16:18:36 2014 UTC (5 years, 1 month ago) by jhr
File size: 702 byte(s)
  Merging changes from vis12 branch (via staging).  The main change is the new
  syntax for inputs (especially image inputs).
// vr.diderot
//
// volume rendering example in Diderot
//

input string dataFile;		// name of dataset
input real stepSz;		// size of steps
input vec<3> light;
input int wid = 640;
input int ht = 480;

image[3] img = image (dataFile);

field#1[3] F = convolve (bspln3, img);
 
strand RayCast (int row, int col)
{
    vec<3>	dir = (real(row), real(col), 0.0);
    vec<3>	pos = (0.0, 0.0, 0.0);
    real	t = 0.0;
    real[4]	color = (0.0, 0.0, 0.0, 0.0);	

    update
    {
	vec<3> pt = pos + t*dir;
	t = t + stepSz;
	vec<3> g = (D F)@pt;
	color = over(color, phong(light, g, txf(F@pt)));
	if (color[3] >= 0.999)
	    stabilize;
    }

}

initially
  [ RayCast(r, c) | r in 0 .. ht-1, c in 0 .. wid-1 ];

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