30 #ifndef vtkWindBladeReader_h 31 #define vtkWindBladeReader_h 33 #include "vtkIOGeometryModule.h" 44 class vtkMultiBlockDataSetAglorithm;
46 class WindBladeReaderInternal;
55 vtkSetStringMacro(Filename);
56 vtkGetStringMacro(Filename);
58 vtkSetVector6Macro(WholeExtent,
int);
59 vtkGetVector6Macro(WholeExtent,
int);
61 vtkSetVector6Macro(SubExtent,
int);
62 vtkGetVector6Macro(SubExtent,
int);
77 int GetNumberOfPointArrays();
78 const char* GetPointArrayName(
int index);
81 int GetPointArrayStatus(
const char*
name);
82 void SetPointArrayStatus(
const char*
name,
int status);
84 void DisableAllPointArrays();
85 void EnableAllPointArrays();
190 virtual bool ReadGlobalData();
191 void ReadDataVariables(istream& inStr);
192 virtual bool FindVariableOffsets();
195 virtual void SetupBladeData();
196 virtual void LoadBladeData(
int timeStep);
199 void FillCoordinates();
200 void FillGroundCoordinates();
201 void CreateCoordinates();
202 virtual void CreateZTopography(
float* zdata);
203 float GDeform(
float sigma,
float sigmaMax,
int flag);
204 void Spline(
float* x,
float* y,
int n,
float yp1,
float ypn,
float* y2);
205 void Splint(
float* xa,
float* ya,
float* y2a,
int n,
float x,
float* y,
int);
208 virtual void LoadVariableData(
int var);
211 void DivideByDensity(
const char*
name);
214 virtual void CalculatePressure(
int pres,
int prespre,
int tempg,
int density);
215 virtual void CalculateVorticity(
int vort,
int uvw,
int density);
219 std::ostringstream &fileName,
224 void InitPressureData(
int pressure,
int prespre,
225 float *&pressureData,
float *&prespreData);
226 void SetUpPressureData(
float* pressureData,
float* prespreData,
227 const float* tempgData,
const float* densityData);
228 void SetUpVorticityData(
float* uData,
float* vData,
const float *densityData,
230 void InitVariableData(
int var,
int &numberOfComponents,
float *&varData,
231 int &planeSize,
int &rowSize);
232 bool SetUpGlobalData(
const std::string &fileName, std::stringstream& inStr);
233 void ProcessZCoords(
float *topoData,
float *zValues);
234 void ReadBladeHeader(
const std::string &fileName, std::stringstream &inStr,
236 void ReadBladeData(std::stringstream &inStr);
245 static void SelectionCallback(
251 static void EventCallback(
254 void* clientdata,
void* calldata);
269 WindBladeReaderInternal * Internal;
int FillOutputPortInformation(int port, vtkInformation *info) override
Fill the output port information objects for this algorithm.
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
int ProcessRequest(vtkInformation *, vtkInformationVector **, vtkInformationVector *) override
see vtkAlgorithm for details
Wrapper around std::string to keep symbols short.
float * ZTopographicValues
abstract base class for most VTK objects
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
static float DRY_AIR_CONSTANT
int NumberOfDerivedVariables
vtkStdString TopographyFile
static int NUM_PART_SIDES
dynamic, self-adjusting array of float
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
a vtkAbstractArray subclass for strings
static int BYTES_PER_DATA
vtkStdString RootDirectory
static const int LINE_SIZE
vtkFloatArray * HubHeight
long int * VariableOffset
static vtkStructuredGridAlgorithm * New()
int NumberOfFileVariables
dynamic, self-adjusting array of int
vtkFloatArray * BladeLength
supports function callbacks
vtkFloatArray * XPosition
vtkStdString * VariableName
a simple class to control print indentation
vtkStdString TurbineBladeName
vtkStdString DataBaseName
Store on/off settings for data arrays for a vtkSource.
Superclass for algorithms that produce only structured grid as output.
dataset represents arbitrary combinations of all possible cell types
vtkStringArray * DivideVariables
vtkStdString TurbineTowerName
vtkFloatArray * YPosition
vtkDataArraySelection * PointDataArraySelection
topologically regular array of data
vtkStdString DataDirectory
vtkStdString TurbineDirectory
vtkCallbackCommand * SelectionObserver
static const int NUM_BASE_SIDES
vtkFloatArray * AngularVeloc
class for reading WindBlade data files
represent and manipulate 3D points