src/PIPELINE/VISU_ImplicitFunctionWidget.hxx

Go to the documentation of this file.
00001 //  SALOME VTKViewer : build VTK viewer into Salome desktop
00002 //
00003 //  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
00004 //  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
00005 // 
00006 //  This library is free software; you can redistribute it and/or 
00007 //  modify it under the terms of the GNU Lesser General Public 
00008 //  License as published by the Free Software Foundation; either 
00009 //  version 2.1 of the License. 
00010 // 
00011 //  This library is distributed in the hope that it will be useful, 
00012 //  but WITHOUT ANY WARRANTY; without even the implied warranty of 
00013 //  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
00014 //  Lesser General Public License for more details. 
00015 // 
00016 //  You should have received a copy of the GNU Lesser General Public 
00017 //  License along with this library; if not, write to the Free Software 
00018 //  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA 
00019 // 
00020 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
00021 //
00022 //
00023 //
00024 //  File   : VISU_PlanesWidget.h
00025 //  Author : Peter KURNEV
00026 //  Module : SALOME
00027 //  $Header: /home/server/cvs/VISU/VISU_SRC/src/PIPELINE/VISU_ImplicitFunctionWidget.hxx,v 1.4 2006/06/01 11:36:04 jfa Exp $
00028 
00029 #ifndef __VISU_ImplicitFunctionWidget_h
00030 #define __VISU_ImplicitFunctionWidget_h
00031 
00032 #include <vtkFollower.h>
00033 
00034 #include "VTKViewer.h"
00035 
00036 class VISU_UnScaledActor: public vtkFollower
00037 {
00038   
00039 public:
00040   
00041   vtkTypeMacro(VISU_UnScaledActor,vtkFollower);
00042   static VISU_UnScaledActor *New();
00043   
00044   void SetCenter(vtkFloatingPointType *);
00045   virtual void SetSize(int theSize);
00046   virtual void Render(vtkRenderer *theRenderer);
00047   virtual vtkFloatingPointType *GetBounds();
00048 
00049 protected:
00050   VISU_UnScaledActor();
00051   ~VISU_UnScaledActor(){}
00052 
00053   vtkFloatingPointType myCenter[3];
00054   int mySize;
00055 };
00056 
00057 #include <vtk3DWidget.h>
00058 
00059 class vtkImplicitFunction;
00060 
00061 class VISU_ImplicitFunctionWidget : public vtk3DWidget
00062 {
00063 public:
00064   vtkTypeRevisionMacro(VISU_ImplicitFunctionWidget,vtk3DWidget);
00065 
00066   virtual vtkImplicitFunction* ImplicitFunction()=0;
00067   
00068 protected:
00069   VISU_ImplicitFunctionWidget();
00070   ~VISU_ImplicitFunctionWidget();
00071 
00072 private:
00073   VISU_ImplicitFunctionWidget(const VISU_ImplicitFunctionWidget&);  //Not implemented
00074   void operator=(const VISU_ImplicitFunctionWidget&);  //Not implemented
00075 };
00076 
00077 #endif