Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Related Pages

# Filtering/vtkImplicitSelectionLoop.h

Go to the documentation of this file.

    00001 /*=========================================================================
    00002
    00003   Program:   Visualization Toolkit
    00004   Module:    $RCSfile: vtkImplicitSelectionLoop.h,v $
    00005   Language:  C++
    00006
    00007   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen
    00008   All rights reserved.
    00009   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
    00010
    00011      This software is distributed WITHOUT ANY WARRANTY; without even
    00012      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
    00013      PURPOSE.  See the above copyright notice for more information.
    00014
    00015 =========================================================================*/
    00065 #ifndef __vtkImplicitSelectionLoop_h
    00066 #define __vtkImplicitSelectionLoop_h
    00067
    00068 #include "vtkImplicitFunction.h"
    00069
    00070 class vtkPoints;
    00071 class vtkPolygon;
    00072
    00073 class VTK_FILTERING_EXPORT vtkImplicitSelectionLoop : public vtkImplicitFunction
    00074 {
    00075 public:
    00076   vtkTypeRevisionMacro(vtkImplicitSelectionLoop,vtkImplicitFunction);
    00077   void PrintSelf(ostream& os, vtkIndent indent);
    00078
    00080   static vtkImplicitSelectionLoop *New();
    00081
    00083
    00084   float EvaluateFunction(float x[3]);
    00085   float EvaluateFunction(float x, float y, float z)
    00086     {return this->vtkImplicitFunction::EvaluateFunction(x, y, z); } ;
    00088
    00090   void EvaluateGradient(float x[3], float n[3]);
    00091
    00093
    00095   virtual void SetLoop(vtkPoints*);
    00096   vtkGetObjectMacro(Loop,vtkPoints);
    00098
    00100
    00103   vtkSetMacro(AutomaticNormalGeneration,int);
    00104   vtkGetMacro(AutomaticNormalGeneration,int);
    00105   vtkBooleanMacro(AutomaticNormalGeneration,int);
    00107
    00109
    00111   vtkSetVector3Macro(Normal,float);
    00112   vtkGetVectorMacro(Normal,float,3);
    00114
    00116   unsigned long GetMTime();
    00117
    00118 protected:
    00119   vtkImplicitSelectionLoop();
    00120   ~vtkImplicitSelectionLoop();
    00121
    00122   vtkPoints *Loop;
    00123   float Normal[3];
    00124   int AutomaticNormalGeneration;
    00125
    00126 private:
    00127   void Initialize();
    00128   vtkPolygon *Polygon;
    00129
    00130   float Origin[3];
    00131   float Bounds[6];
    00132   float DeltaX;
    00133   float DeltaY;
    00134   float DeltaZ;
    00135
    00136   vtkTimeStamp InitializationTime;
    00137
    00138 private:
    00139   vtkImplicitSelectionLoop(const vtkImplicitSelectionLoop&);  // Not implemented.
    00140   void operator=(const vtkImplicitSelectionLoop&);  // Not implemented.
    00141 };
    00142
    00143 #endif
    00144
    00145