31 #include <vapor/common.h>
42 class VizFeatureParams;
43 class VizFeatureRenderer;
46 class TranslateStretchManip;
82 VizFeatureParams* getActiveVizFeatureParams();
90 Trackball* GetTrackball();
107 void resizeGL(
int w,
int h );
114 void resetTrackball();
127 bool projectPointToWin(
double userCoords[3],
double winCoords[2]);
136 int pointIsOnBox(
double corners[8][3],
double pickPt[2]);
145 bool pixelToVector(
double winCoords[2],
const vector<double> cameraPos,
double dirVec[3]);
180 void removeAllRenderers();
183 void removeDisabledRenderers();
188 TranslateStretchManip*
getManip(
const std::string& paramTag){
190 return _manipHolder[mode];
194 double getPixelSize();
216 double* getModelViewMatrix();
221 _imageCaptureEnabled = onOff;
222 if (onOff) _captureImageFile = filename;
223 else _captureImageFile =
"";
234 int captureImage(
string filename);
241 void paintSetup(
int timeStep);
252 bool pointIsOnQuad(
double cor1[3],
double cor2[3],
double cor3[3],
double cor4[3],
double pickPt[2]);
270 bool windowIsActive(){
return (_winNum == _activeWindowNum);}
275 static bool activeWinSharesRegion() {
return _regionShareFlag;}
279 const double* getProjectionMatrix() {
return _projectionMatrix;}
283 const int* getViewport() {
return _viewport;}
296 static OGLVendorType GetVendor();
301 void setUpViewport(
int width,
int height);
312 void saveGLMatrix(
int timestep, ViewpointParams*);
317 bool getPixelData(
unsigned char* data);
320 class RenderListElt {
327 #ifndef DOXYGEN_SKIP_THIS
328 vector<TranslateStretchManip*> _manipHolder;
330 static Trackball* _globalTrackball;
331 Trackball* _localTrackball;
333 bool _imageCaptureEnabled;
334 string _captureImageFile;
337 int _previousTimeStep;
338 int _previousFrameNum;
339 VizFeatureRenderer* _vizFeatures;
341 vector<Renderer*> _renderer;
342 vector<int>_renderOrder;
345 std::map<RenderParams*,Renderer*> _rendererMapping;
347 float _farDist, _nearDist;
350 double _projectionMatrix[16];
352 static int _activeWindowNum;
356 static bool _regionShareFlag;
358 #endif //DOXYGEN_SKIP_THIS
363 #endif // Visualizer_H
TranslateStretchManip * getManip(const std::string ¶mTag)
A Params subclass for managing parameters used by Renderers.
int insertSortedRenderer(RenderParams *p, Renderer *ren)
Renderer * getRenderer(int i)
A class for describing a 3D axis-aligned region in user space.
static void setRegionShareFlag(bool regionIsShared)
static void setActiveWinNum(int winnum)
VizFeatureRenderer * getVizFeatureRenderer()
A class for describing the viewpoint and lights in a 3D VAPOR scene.
bool(* renderCBFcn)(int winnum, bool newCoords)
A class for performing OpenGL rendering in VAPOR GUI Window.
void setImageCaptureEnabled(bool onOff, string filename)
static int getModeFromParams(string tag)
A class that specifies parameters used in animation.
void SetTrackballCoordsChanged(bool val)
A class that performs rendering in a Visualizer.