00001 /* $Id: vtkTriangleDecorator.h,v 1.4 2005/11/02 03:55:44 pfb Exp $ */ 00002 00003 #ifndef _vtkTriangleDecorator_h 00004 #define _vtkTriangleDecorator_h 00005 00010 #include <vtkTriangle.h> 00011 00016 class VTK_EXPORT vtkTriangleDecorator : public vtkTriangle 00017 { 00018 //**************************************************************************** 00019 public: 00020 00026 static vtkTriangleDecorator *New(); 00027 00034 static vtkTriangleDecorator *New(vtkTriangle *triangle); 00035 00036 00040 vtkTypeMacro(vtkTriangleDecorator, vtkTriangle); 00041 00047 void PrintSelf(ostream& os, vtkIndent indent); 00048 00053 void Component(vtkTriangle *triangle); 00054 00061 bool doesLineIntersectCell(double p1[3], double p2[3]) const; 00062 00063 //**************************************************************************** 00064 protected: 00065 00069 vtkTriangleDecorator(); 00070 00075 vtkTriangleDecorator(vtkTriangle *triangle); 00076 00080 ~vtkTriangleDecorator(); 00081 00082 //**************************************************************************** 00083 private: 00084 00088 vtkTriangleDecorator(const vtkTriangleDecorator&); 00089 vtkTriangleDecorator& operator=(const vtkTriangleDecorator&); 00090 00095 void Normalize(double x[3]) const; 00096 00097 vtkCell *component; 00098 }; 00099 00100 /* 00101 * $Log: vtkTriangleDecorator.h,v $ 00102 * Revision 1.4 2005/11/02 03:55:44 pfb 00103 * Fixed doxygen tags. 00104 * 00105 * Revision 1.3 2005/05/11 11:40:11 pfb 00106 * Added module info. 00107 * 00108 * Revision 1.2 2001/12/08 01:41:13 pfb 00109 * Added new functionality. 00110 * 00111 * Revision 1.1 2001/12/07 13:01:24 pfb 00112 * Initial rev. 00113 * 00114 * 00115 */ 00116 00120 #endif