I am trying to visualize wake field of a propeller.
the field data is written in Tecplot format and have 3 scalar; u, v, w.
After loading with vtkTecplotReader, I would like to visualize v, w field with glyph after making vector field through vtkArrayCalculator.
my code goes as follows:
vtkTecplotReader reader = new vtkTecplotReader();
reader.SetFileName("wake.dat");
reader.Update();
vtkMultiBlockDataSet multiBDS = new vtkMultiBlockDataSet();
multiBDS = reader.GetOutput();
// vector glyph
vtkArrayCalculator calculator = new vtkArrayCalculator();
for (uint i = 0; i < multiBDS.GetNumberOfBlocks(); i++)
{
vtkPointSet block;
if (multiBDS.GetBlock(i).IsA("vtkStructuredGrid") == 1)
{
block = multiBDS.GetBlock(i) as vtkStructuredGrid;
}
else
{
block = multiBDS.GetBlock(i) as vtkUnstructuredGrid;
}
calculator.AddInputData(block);
}
calculator.AddScalarArrayName("u", 0);
calculator.AddScalarArrayName("v", 0);
calculator.AddScalarArrayName("w", 0);
calculator.SetFunction("jHat*v + kHat*w");
calculator.SetResultArrayName("wake");
calculator.Update();
vtkGlyph2D glyph2D = new vtkGlyph2D();
glyph2D.SetSourceConnection(calculator.GetOutputPort());
glyph2D.Update();
vtkPolyDataMapper glyph2DMapper = new vtkPolyDataMapper();
glyph2DMapper.SetInputConnection(glyph2D.GetOutputPort());
glyph2DMapper.Update();
vtkActor glyph2DActor = new vtkActor();
glyph2DActor.SetMapper(glyph2DMapper);
glyph2DActor.GetProperty().SetColor(0, 0, 0);
But with this code, I got the following warning
vtkDemandDrivenPipeline:677 ERR| vtkCompositeDataPipeline (0000024358F719B0): Input port 0 of algorithm vtkGlyph2D (0000024358F22C10) has 0 connections but is not optional
Any comments and advice would be grateful.