VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkPointLoad.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00032 #ifndef __vtkPointLoad_h 00033 #define __vtkPointLoad_h 00034 00035 #include "vtkImagingHybridModule.h" // For export macro 00036 #include "vtkImageAlgorithm.h" 00037 00038 class VTKIMAGINGHYBRID_EXPORT vtkPointLoad : public vtkImageAlgorithm 00039 { 00040 public: 00041 vtkTypeMacro(vtkPointLoad,vtkImageAlgorithm); 00042 void PrintSelf(ostream& os, vtkIndent indent); 00043 00046 static vtkPointLoad *New(); 00047 00049 00050 vtkSetMacro(LoadValue,double); 00051 vtkGetMacro(LoadValue,double); 00053 00056 void SetSampleDimensions(int i, int j, int k); 00057 00059 00061 void SetSampleDimensions(int dim[3]); 00062 vtkGetVectorMacro(SampleDimensions,int,3); 00064 00066 00068 vtkSetVector6Macro(ModelBounds,double); 00069 vtkGetVectorMacro(ModelBounds,double,6); 00071 00073 00074 vtkSetMacro(PoissonsRatio,double); 00075 vtkGetMacro(PoissonsRatio,double); 00077 00079 00081 void SetComputeEffectiveStress(int) {} 00082 int GetComputeEffectiveStress() {return 1;}; 00083 void ComputeEffectiveStressOn() {} 00084 void ComputeEffectiveStressOff() {} 00086 00087 protected: 00088 vtkPointLoad(); 00089 ~vtkPointLoad() {} 00090 00091 virtual int RequestInformation (vtkInformation *, 00092 vtkInformationVector **, 00093 vtkInformationVector *); 00094 virtual void ExecuteDataWithInformation(vtkDataObject *, vtkInformation *); 00095 00096 double LoadValue; 00097 double PoissonsRatio; 00098 int SampleDimensions[3]; 00099 double ModelBounds[6]; 00100 00101 private: 00102 vtkPointLoad(const vtkPointLoad&); // Not implemented. 00103 void operator=(const vtkPointLoad&); // Not implemented. 00104 }; 00105 00106 #endif 00107 00108