Adding custom dataset name to LCS filter output

This commit is contained in:
Abhishek Yenpure 2019-08-13 09:19:32 -07:00
parent ec8a29e07d
commit 4aa51fcabb
3 changed files with 9 additions and 3 deletions

@ -43,9 +43,10 @@ int main(int argc, char** argv)
std::cout << "Read input dataset" << std::endl;
vtkm::filter::LagrangianStructures lcsFilter;
lcsFilter.SetStepSize(0.025);
lcsFilter.SetStepSize(0.025f);
lcsFilter.SetNumberOfSteps(500);
lcsFilter.SetAdvectionTime(0.025 * 500);
lcsFilter.SetAdvectionTime(0.025f * 500);
lcsFilter.SetOutputFieldName("gradient");
lcsFilter.SetActiveField(variableName);
vtkm::cont::DataSet output = lcsFilter.Execute(input);

@ -49,6 +49,9 @@ public:
void SetUseFlowMapOutput(bool useFlowMapOutput) { this->UseFlowMapOutput = useFlowMapOutput; }
bool GetUseFlowMapOutput() { return this->UseFlowMapOutput; }
void SetOutputFieldName(std::string outputFieldName) { this->OutputFieldName = outputFieldName; }
std::string GetOutputFieldName() { return this->OutputFieldName; }
inline void SetFlowMapOutput(vtkm::cont::ArrayHandle<Vector>& flowMap)
{
this->FlowMapOutput = flowMap;
@ -77,6 +80,7 @@ private:
bool UseAuxiliaryGrid = false;
vtkm::Id3 AuxiliaryDims;
bool UseFlowMapOutput = false;
std::string OutputFieldName;
vtkm::cont::ArrayHandle<Vector> FlowMapOutput;
};

@ -26,6 +26,7 @@ namespace filter
inline VTKM_CONT LagrangianStructures::LagrangianStructures()
: vtkm::filter::FilterDataSetWithField<LagrangianStructures>()
{
OutputFieldName = std::string("FTLE");
}
//-----------------------------------------------------------------------------
@ -127,7 +128,7 @@ inline VTKM_CONT vtkm::cont::DataSet LagrangianStructures::DoExecute(
vtkm::cont::DataSetFieldAdd fieldAdder;
output.AddCoordinateSystem(lcsInput.GetCoordinateSystem());
output.AddCellSet(lcsInput.GetCellSet());
fieldAdder.AddPointField(output, "FTLE", outputField);
fieldAdder.AddPointField(output, this->GetOutputFieldName(), outputField);
return output;
}