You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
93 lines
2.1 KiB
93 lines
2.1 KiB
/*=========================================================================
|
|
|
|
Program: Visualization Toolkit
|
|
Module: $RCSfile: otherFieldData.cxx,v $
|
|
|
|
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
|
|
All rights reserved.
|
|
See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
|
|
|
|
This software is distributed WITHOUT ANY WARRANTY; without even
|
|
the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
|
|
PURPOSE. See the above copyright notice for more information.
|
|
|
|
=========================================================================*/
|
|
|
|
#include "vtkDebugLeaks.h"
|
|
#include "vtkFieldData.h"
|
|
#include "vtkFloatArray.h"
|
|
#include "vtkIdList.h"
|
|
|
|
int otherFieldData(int,char *[])
|
|
{
|
|
int i;
|
|
vtkFieldData* fd = vtkFieldData::New();
|
|
|
|
vtkFloatArray* fa;
|
|
|
|
char name[128];
|
|
for(i=0; i<5; i++)
|
|
{
|
|
sprintf(name, "Array%d", i);
|
|
fa = vtkFloatArray::New();
|
|
fa->SetName(name);
|
|
// the tuples must be set before being read to avoid a UMR
|
|
// this must have been a UMR in the past that was suppressed
|
|
fa->Allocate(20);
|
|
fa->SetTuple1(0,0.0);
|
|
fa->SetTuple1(2,0.0);
|
|
fd->AddArray(fa);
|
|
fa->Delete();
|
|
}
|
|
|
|
// Coverage
|
|
vtkFieldData::Iterator it(fd);
|
|
vtkFieldData::Iterator it2(it);
|
|
|
|
it = it;
|
|
it2 = it;
|
|
|
|
fd->Allocate(20);
|
|
fd->CopyFieldOff("Array0");
|
|
fd->CopyFieldOff("Array1");
|
|
|
|
vtkFieldData* fd2 = fd->NewInstance();
|
|
fd2->CopyStructure(fd);
|
|
fd2->ShallowCopy(fd);
|
|
fd2->DeepCopy(fd);
|
|
|
|
vtkIdList* ptIds = vtkIdList::New();
|
|
ptIds->InsertNextId(0);
|
|
ptIds->InsertNextId(2);
|
|
|
|
fd->GetField(ptIds, fd2);
|
|
ptIds->Delete();
|
|
|
|
int arrayComp;
|
|
int a = fd->GetArrayContainingComponent(1, arrayComp);
|
|
if (a != 1)
|
|
{
|
|
return 1;
|
|
}
|
|
|
|
double tuple[10];
|
|
// initialize tuple before using it to set something
|
|
for (i = 0; i < 10; i++)
|
|
{
|
|
tuple[i] = i;
|
|
}
|
|
fd->GetTuple(2);
|
|
fd->SetTuple(2, tuple);
|
|
fd->InsertTuple(2, tuple);
|
|
fd->InsertNextTuple(tuple);
|
|
fd->SetComponent(0,0, 1.0);
|
|
fd->InsertComponent(0,0, 1.0);
|
|
|
|
fd2->Reset();
|
|
|
|
fd->Delete();
|
|
fd2->Delete();
|
|
|
|
return 0;
|
|
|
|
}
|
|
|