37 #include "vtkCompositeDataGeometryFilter.h"
38 #include "vtkCompositeDataSet.h"
39 #include "vtkCompositePolyDataMapper.h"
40 #include "vtkPolyData.h"
41 #include "vtkPolyDataMapper.h"
42 #include "vtkProperty.h"
43 #include "vtkRenderer.h"
44 #include "vtkSmartPointer.h"
50 namespace functionObjects
52 namespace runTimePostPro
65 vtkMultiPieceDataSet* multiPiece,
72 return (multiPiece) &&
76 multiPiece, ioptr, fieldName
78 || addCloudField<scalar>
80 multiPiece, ioptr, fieldName
82 || addCloudField<vector>
84 multiPiece, ioptr, fieldName
86 || addCloudField<sphericalTensor>
88 multiPiece, ioptr, fieldName
90 || addCloudField<symmTensor>
92 multiPiece, ioptr, fieldName
94 || addCloudField<tensor>
96 multiPiece, ioptr, fieldName
113 cloudName_(
dict.get<
word>(
"cloud")),
114 colourFieldName_(
dict.get<
word>(
"colourField")),
131 const scalar position,
132 vtkRenderer* renderer
153 "runTimePostPro::cloud::" + cloudName_,
162 objPtr->writeObjects(obrTmp);
174 auto multiPiece = gatherCloud(obrTmp);
177 addCloudField(multiPiece, obrTmp, fieldName_);
178 addCloudField(multiPiece, obrTmp, colourFieldName_);
189 <<
" Render cloud " << cloudName_ <<
endl;
198 queryFieldSummary(fieldName_, multiPiece);
201 queryFieldSummary(colourFieldName_, multiPiece);
205 polyData->SetInputData(multiPiece);
210 actor_->SetMapper(mapper);
217 fieldName_, scaleFieldInfo,
218 colourFieldName_, colourFieldInfo,
220 polyData->GetOutput(),
225 renderer->AddActor(actor_);
235 const scalar position,
236 vtkRenderer* renderer
240 addGeometry(position, renderer);
246 const scalar position
251 const vector colour = pointColour_->value(position);
253 vtkProperty* prop = actor_->GetProperty();
255 prop->SetOpacity(opacity(position));
257 prop->SetColor(colour[0], colour[1], colour[2]);