29 #include "triSurface.H"
35 #include "vtkCellArray.h"
36 #include "vtkCellData.h"
37 #include "vtkDoubleArray.h"
38 #include "vtkPointData.h"
39 #include "vtkPoints.h"
40 #include "vtkPolyData.h"
41 #include "vtkPolyDataMapper.h"
42 #include "vtkProperty.h"
43 #include "vtkRenderer.h"
44 #include "vtkSmartPointer.h"
45 #include "vtkTriangle.h"
60 const scalar position,
61 vtkRenderer* renderer,
65 if (representation_ == rtGlyph)
68 <<
"Glyph representation not available for " << typeName
78 vtkSmartPointer<vtkCellArray> triangles =
80 vtkSmartPointer<vtkDoubleArray> faceNormals =
83 faceNormals->SetNumberOfComponents(3);
87 const point& pt = surfPoints[i];
88 points->InsertNextPoint(pt.
x(), pt.
y(), pt.
z());
95 vtkSmartPointer<vtkTriangle>
triangle =
100 triangles->InsertNextCell(
triangle);
103 n[0] = surfFaceNormals[i].x();
104 n[1] = surfFaceNormals[i].y();
105 n[2] = surfFaceNormals[i].z();
107 faceNormals->InsertNextTuple(
n);
112 vtkSmartPointer<vtkPolyData> polyData =
114 polyData->SetPoints(
points);
115 polyData->SetPolys(triangles);
116 polyData->GetCellData()->SetNormals(faceNormals);
118 vtkSmartPointer<vtkPolyDataMapper> mapper =
120 mapper->ScalarVisibilityOff();
121 mapper->SetInputData(polyData);
123 addFeatureEdges(renderer, polyData);
125 surfaceActor_->SetMapper(mapper);
127 setRepresentation(surfaceActor_);
129 renderer->AddActor(surfaceActor_);
143 fileNames_(
dict.lookup(
"files"))
156 fileNames_(fileNames)
170 const scalar position,
171 vtkRenderer* renderer
182 addGeometryToScene(position, renderer, fName);
196 surfaceActor_->GetProperty()->SetOpacity(opacity(position));
198 vector sc = surfaceColour_->value(position);
199 surfaceActor_->GetProperty()->SetColor(sc[0], sc[1], sc[2]);
201 vector ec = edgeColour_->value(position);
202 surfaceActor_->GetProperty()->SetEdgeColor(ec[0], ec[1], ec[2]);