MCPcopy Create free account
hub / github.com/Kitware/VTK / InitializeArray

Method InitializeArray

Filters/General/vtkTemporalStatistics.cxx:423–476  ·  view source on GitHub ↗

------------------------------------------------------------------------------

Source from the content-addressed store, hash-verified

421
422//------------------------------------------------------------------------------
423void vtkTemporalStatistics::InitializeArray(vtkDataArray* array, vtkFieldData* outFd)
424{
425 if (this->ComputeAverage || this->ComputeStandardDeviation)
426 {
427 vtkSmartPointer<vtkDataArray> newArray;
428 newArray.TakeReference(
429 vtkArrayDownCast<vtkDataArray>(vtkAbstractArray::CreateArray(array->GetDataType())));
430 newArray->DeepCopy(array);
431 newArray->SetName(vtkTemporalStatisticsMangleName(array->GetName(), AVERAGE_SUFFIX).c_str());
432 if (outFd->HasArray(newArray->GetName()))
433 {
434 vtkWarningMacro(<< "Input has two arrays named " << array->GetName()
435 << ". Output statistics will probably be wrong.");
436 return;
437 }
438 outFd->AddArray(newArray);
439 }
440
441 if (this->ComputeMinimum)
442 {
443 vtkSmartPointer<vtkDataArray> newArray;
444 newArray.TakeReference(
445 vtkArrayDownCast<vtkDataArray>(vtkAbstractArray::CreateArray(array->GetDataType())));
446 newArray->DeepCopy(array);
447 newArray->SetName(vtkTemporalStatisticsMangleName(array->GetName(), MINIMUM_SUFFIX).c_str());
448 outFd->AddArray(newArray);
449 }
450
451 if (this->ComputeMaximum)
452 {
453 vtkSmartPointer<vtkDataArray> newArray;
454 newArray.TakeReference(
455 vtkArrayDownCast<vtkDataArray>(vtkAbstractArray::CreateArray(array->GetDataType())));
456 newArray->DeepCopy(array);
457 newArray->SetName(vtkTemporalStatisticsMangleName(array->GetName(), MAXIMUM_SUFFIX).c_str());
458 outFd->AddArray(newArray);
459 }
460
461 if (this->ComputeStandardDeviation)
462 {
463 vtkSmartPointer<vtkDataArray> newArray;
464 newArray.TakeReference(
465 vtkArrayDownCast<vtkDataArray>(vtkAbstractArray::CreateArray(array->GetDataType())));
466 newArray->SetName(
467 vtkTemporalStatisticsMangleName(array->GetName(), STANDARD_DEVIATION_SUFFIX).c_str());
468
469 newArray->SetNumberOfComponents(array->GetNumberOfComponents());
470 newArray->CopyComponentNames(array);
471
472 newArray->SetNumberOfTuples(array->GetNumberOfTuples());
473 newArray->Fill(0.);
474 outFd->AddArray(newArray);
475 }
476}
477
478//------------------------------------------------------------------------------
479void vtkTemporalStatistics::AccumulateStatistics(

Callers 5

InitializeArraysMethod · 0.95
CopyAllocateMethod · 0.45
TransformDataArrayMethod · 0.45

Calls 15

CopyComponentNamesMethod · 0.80
CreateArrayFunction · 0.50
TakeReferenceMethod · 0.45
GetDataTypeMethod · 0.45
DeepCopyMethod · 0.45
SetNameMethod · 0.45
c_strMethod · 0.45
GetNameMethod · 0.45
HasArrayMethod · 0.45
AddArrayMethod · 0.45
SetNumberOfComponentsMethod · 0.45

Tested by 2