temp_rts_glFilamentNetwork.h 1.18 KB
#ifndef RTS_GLFILAMENTNETWORK_H
#define RTS_GLFILAMENTNETWORK_H

#include "temp_rtsFilamentNetwork.h"
#include <windows.h>
#include <gl/gl.h>
#include <gl/glut.h>

class rts_glFilamentNetwork:public rtsFilamentNetwork
{
private:
	void p_ProcessPickHits(GLuint num_hits, GLuint* buffer, unsigned int start_filament, 
							bool append = false, int max = 1);
public:
	
	void RenderEdges();
	void RenderBranches();
	void RenderFilaments();
	void RenderOrientationColor(double x, double y, double z, double r, double g, double b);
	void RenderSelectedFilaments();
	void RenderRadiusColor(float min_r, float min_g, float min_b,
								   float max_r, float max_g, float max_b,
								   float min_radius, float max_radius);
	void RenderEdgeDistanceColor(float r, float g, float b, float cutoff);
	void RenderFilamentDistanceColor(float r, float g, float b, float cutoff);
	void RenderEdgeBoundingBoxes();
	void RenderFilamentBoundingBoxes();
	void RenderCellSpheres();
	void RenderSelectedCells();

	//pick filaments based on the current projection
	void PickFilaments(int x_center, int y_center, int width, int height, bool append = false, int max = 1);
	
};
		
				
#endif