glviewvol

diff src/renderer.h @ 4:04330eb80b36

lots of stuff
author John Tsiombikas <nuclear@member.fsf.org>
date Mon, 29 Dec 2014 05:41:36 +0200
parents 7bdf40403b9c
children 5417c25cb238
line diff
     1.1 --- a/src/renderer.h	Sun Dec 28 21:48:15 2014 +0200
     1.2 +++ b/src/renderer.h	Mon Dec 29 05:41:36 2014 +0200
     1.3 @@ -2,12 +2,19 @@
     1.4  #define RENDERER_H_
     1.5  
     1.6  #include "volume.h"
     1.7 +#include "curve.h"
     1.8 +
     1.9 +#define MAX_CLIP_PLANES		4
    1.10  
    1.11  class Renderer {
    1.12  protected:
    1.13  	int view_width, view_height;
    1.14  	Volume *vol;
    1.15  
    1.16 +	float clip_plane[MAX_CLIP_PLANES][4];	// nx,ny,nz,dist
    1.17 +
    1.18 +	Curve xfer[3];	// rgb transfer function
    1.19 +
    1.20  public:
    1.21  	Renderer();
    1.22  	virtual ~Renderer();
    1.23 @@ -18,6 +25,12 @@
    1.24  	virtual void set_volume(Volume *vol);
    1.25  	virtual Volume *get_volume() const;
    1.26  
    1.27 +	virtual Curve &transfer_curve(int color);
    1.28 +	virtual const Curve &transfer_curve(int color) const;
    1.29 +
    1.30 +	virtual void set_clipping_plane(int idx, float nx, float ny, float nz, float dist);
    1.31 +	virtual void disable_clipping_plane(int idx);
    1.32 +
    1.33  	virtual void reshape(int x, int y);
    1.34  
    1.35  	virtual void update(unsigned int msec);