00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00040
#ifndef __vtkAppendPolyData_h
00041
#define __vtkAppendPolyData_h
00042
00043
#include "vtkPolyDataToPolyDataFilter.h"
00044
00045
class vtkCellArray;
00046
class vtkDataArray;
00047
class vtkPoints;
00048
class vtkPolyData;
00049
00050 class VTK_GRAPHICS_EXPORT vtkAppendPolyData :
public vtkPolyDataToPolyDataFilter
00051 {
00052
public:
00053
static vtkAppendPolyData *
New();
00054
00055 vtkTypeRevisionMacro(vtkAppendPolyData,
vtkPolyDataToPolyDataFilter);
00056
void PrintSelf(ostream& os,
vtkIndent indent);
00057
00059
00063 vtkSetMacro(UserManagedInputs,
int);
00064 vtkGetMacro(UserManagedInputs,
int);
00065 vtkBooleanMacro(UserManagedInputs,
int);
00067
00070
void AddInput(
vtkPolyData *);
00071
00074
void RemoveInput(
vtkPolyData *);
00075
00077
00078
vtkPolyData *
GetInput(
int idx);
00079 vtkPolyData *
GetInput() {
return this->
GetInput( 0 ); };
00081
00084
void SetNumberOfInputs(
int num);
00085
00086
00087
void SetInputByNumber(
int num,
vtkPolyData *input);
00088
00090
00097 vtkSetMacro(ParallelStreaming,
int);
00098 vtkGetMacro(ParallelStreaming,
int);
00099 vtkBooleanMacro(ParallelStreaming,
int);
00101
00102
protected:
00103 vtkAppendPolyData();
00104 ~vtkAppendPolyData();
00105
00106
00107 int ParallelStreaming;
00108
00109
00110
void Execute();
00111
00112
void ComputeInputUpdateExtents(
vtkDataObject *output);
00113
00114
00115
void AppendData(
vtkDataArray *dest,
vtkDataArray *src,
vtkIdType offset);
00116
void AppendDifferentPoints(
vtkDataArray *dest,
vtkDataArray *src,
00117
vtkIdType offset);
00118
vtkIdType *AppendCells(
vtkIdType *pDest,
vtkCellArray *src,
00119
vtkIdType offset);
00120
00121
private:
00122
00123
void AddInput(
vtkDataObject *)
00124 { vtkErrorMacro( <<
"AddInput() must be called with a vtkPolyData not a vtkDataObject."); };
00125
void RemoveInput(
vtkDataObject *input)
00126 { this->
vtkProcessObject::RemoveInput(input);
00127 this->
vtkProcessObject::SqueezeInputArray();};
00128
int UserManagedInputs;
00129
private:
00130 vtkAppendPolyData(
const vtkAppendPolyData&);
00131
void operator=(
const vtkAppendPolyData&);
00132 };
00133
00134
#endif
00135
00136