source: trunk/gui/vizservers/nanovis/Lic.h @ 396

Last change on this file since 396 was 396, checked in by qiaow, 18 years ago

In the process of adding Line Integral Convolution class

File size: 1.1 KB
Line 
1/*
2 * ----------------------------------------------------------------------
3 * Lic.h: line integral convolution class
4 *
5 * ======================================================================
6 *  AUTHOR:  Wei Qiao <qiaow@purdue.edu>
7 *           Purdue Rendering and Perceptualization Lab (PURPL)
8 *
9 *  Copyright (c) 2004-2006  Purdue Research Foundation
10 *
11 *  See the file "license.terms" for information on usage and
12 *  redistribution of this file, and for a DISCLAIMER OF ALL WARRANTIES.
13 * ======================================================================
14 */
15
16
17#ifndef _LIC_H_
18#define _LIC_H_
19
20#include "GL/glew.h"
21#include "Cg/cgGL.h"
22
23#include "define.h"
24#include "config.h"
25#include "global.h"
26
27#include "Vector3.h"
28#include "Volume.h"
29
30
31class Lic{
32
33private:
34  int display_width, display_height;
35  int size;     //the lic is a square of size, it can be stretched
36  float ratio_width_to_height;
37
38  NVISid color_tex, pattern_tex, mag_tex;
39  NVISid fbo, vel_fbo, slice_vector_tex;  //for projecting 3d vector to 2d vector on a plane
40
41  Volume* vector_field;
42
43public:
44  Vector3 normal;
45  Lic(int size);
46  ~Lic();
47
48  void convolve();
49  void display();
50 
51 
52
53};
54
55
Note: See TracBrowser for help on using the repository browser.