arbeit
Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

SlicerWidget.h

Go to the documentation of this file.
00001 //------------------------------------------------------------------------
00002 //
00003 //   Joe Kniss
00004 //     6-20-03
00005 //                   ________    ____   ___ 
00006 //                  |        \  /    | /  /
00007 //                  +---+     \/     |/  /
00008 //                  +--+|  |\    /|     < 
00009 //                  |  ||  | \  / |  |\  \ 
00010 //                  |      |  \/  |  | \  \ 
00011 //                   \_____|      |__|  \__\
00012 //                       Copyright  2003 
00013 //                      Joe Michael Kniss
00014 //                   <<< jmk@cs.utah.edu >>>
00015 //               "All Your Base are Belong to Us"
00016 //-------------------------------------------------------------------------
00017 
00018 /// SlicerWidget.h
00019 ///  simianUI
00020 
00021 #ifndef __SIMIAN_SLICER_WIDGET_DOT_H
00022 #define __SIMIAN_SLICER_WIDGET_DOT_H
00023 
00024 #include <qwidget.h>
00025 #include <qslider.h>
00026 #include <qlcdnumber.h>
00027 #include <qcombobox.h>
00028 #include <qcanvas.h>
00029 #include "SliceView.h"
00030 #include <volume/Volume.h>
00031 #include <image/NrroImage.h>
00032 #include <image/CanvasImage.h>
00033 
00034 class SlicerWidget : public QWidget {
00035    Q_OBJECT
00036 public:
00037    SlicerWidget(QWidget *parent=0, char *name=0, WFlags f=0);
00038    virtual ~SlicerWidget();
00039    
00040    enum AXIS_ID {
00041       X_AXIS,
00042       Y_AXIS,
00043       Z_AXIS
00044    };
00045 
00046 public slots:
00047    void setVolume(VolumeSP vol);
00048    void setAxis(int axisId);
00049    void setSlice(int slicePos);
00050    void setFieldOn(int fieldNum);
00051    void setFieldOff(int fieldNum);
00052    void setPickPos(int xp, int yp);
00053    void setVolPos(int xp, int yp, int zp);
00054 
00055    //// filters
00056    void setFilter(int f);
00057 
00058 signals:
00059    void volPickPosChanged(int xp, int yp, int zp);
00060 
00061 protected:
00062    virtual void resizeEvent(QResizeEvent *re);
00063 
00064    virtual void conf();
00065 
00066    QCanvas         *_sliceCanvas;
00067    SliceView       *_sliceView;
00068    QSlider         *_slider;
00069    QLCDNumber      *_number;
00070    QComboBox       *_axisCombo;
00071    NrroCanvasImg   *_sliceImage;
00072 
00073    int         _curAxis;
00074    int         _curSlice;
00075 
00076    VolumeSP    _vol;
00077 
00078    NrroKernel  _filter;
00079 };
00080 
00081 #endif
00082 
00083 

Send questions, comments, and bug reports to:
jmk