VTK  9.3.20240418
vtkProjectedTetrahedraMapper.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-FileCopyrightText: Copyright 2003 Sandia Corporation
3 // SPDX-License-Identifier: LicenseRef-BSD-3-Clause-Sandia-USGov
4 
25 #ifndef vtkProjectedTetrahedraMapper_h
26 #define vtkProjectedTetrahedraMapper_h
27 
28 #include "vtkRenderingVolumeModule.h" // For export macro
30 
31 VTK_ABI_NAMESPACE_BEGIN
32 class vtkFloatArray;
33 class vtkPoints;
35 class vtkVisibilitySort;
36 class vtkVolumeProperty;
37 class vtkRenderWindow;
38 
39 class VTKRENDERINGVOLUME_EXPORT vtkProjectedTetrahedraMapper
41 {
42 public:
45  void PrintSelf(ostream& os, vtkIndent indent) override;
46 
47  virtual void SetVisibilitySort(vtkVisibilitySort* sort);
48  vtkGetObjectMacro(VisibilitySort, vtkVisibilitySort);
49 
50  static void MapScalarsToColors(
51  vtkDataArray* colors, vtkVolumeProperty* property, vtkDataArray* scalars);
52  static void TransformPoints(vtkPoints* inPoints, const float projection_mat[16],
53  const float modelview_mat[16], vtkFloatArray* outPoints);
54 
59  virtual bool IsSupported(vtkRenderWindow*) { return false; }
60 
61 protected:
64 
66 
71  void ReportReferences(vtkGarbageCollector* collector) override;
72 
73 private:
75  void operator=(const vtkProjectedTetrahedraMapper&) = delete;
76 };
77 
78 VTK_ABI_NAMESPACE_END
79 #endif
abstract superclass for arrays of numeric data
Definition: vtkDataArray.h:155
dynamic, self-adjusting array of float
Detect and break reference loops.
a simple class to control print indentation
Definition: vtkIndent.h:108
represent and manipulate 3D points
Definition: vtkPoints.h:139
Unstructured grid volume renderer.
static vtkProjectedTetrahedraMapper * New()
virtual void SetVisibilitySort(vtkVisibilitySort *sort)
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
~vtkProjectedTetrahedraMapper() override
void ReportReferences(vtkGarbageCollector *collector) override
The visibility sort will probably make a reference loop by holding a reference to the input.
static void TransformPoints(vtkPoints *inPoints, const float projection_mat[16], const float modelview_mat[16], vtkFloatArray *outPoints)
static void MapScalarsToColors(vtkDataArray *colors, vtkVolumeProperty *property, vtkDataArray *scalars)
virtual bool IsSupported(vtkRenderWindow *)
Return true if the rendering context provides the nececessary functionality to use this class.
create a window for renderers to draw into
dynamic, self-adjusting array of unsigned char
Abstract class for an unstructured grid volume mapper.
Abstract class that can sort cell data along a viewpoint.
represents the common properties for rendering a volume.