/usr/include/paraview/vtkImageVolumeRepresentation.h is in paraview-dev 5.0.1+dfsg1-4.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 | /*=========================================================================
Program: ParaView
Module: vtkImageVolumeRepresentation.h
Copyright (c) Kitware, Inc.
All rights reserved.
See Copyright.txt or http://www.paraview.org/HTML/Copyright.html 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.
=========================================================================*/
// .NAME vtkImageVolumeRepresentation - representation for showing image
// datasets as a volume.
// .SECTION Description
// vtkImageVolumeRepresentation is a representation for volume rendering
// vtkImageData. Unlike other data-representations used by ParaView, this
// representation does not support delivery to client (or render server) nodes.
// In those configurations, it merely delivers a outline for the image to the
// client and render-server and those nodes simply render the outline.
#ifndef vtkImageVolumeRepresentation_h
#define vtkImageVolumeRepresentation_h
#include "vtkPVClientServerCoreRenderingModule.h" //needed for exports
#include "vtkPVDataRepresentation.h"
#include "vtkNew.h" // needed for vtkNew.
class vtkColorTransferFunction;
class vtkExtentTranslator;
class vtkFixedPointVolumeRayCastMapper;
class vtkImageData;
class vtkOutlineSource;
class vtkPExtentTranslator;
class vtkPiecewiseFunction;
class vtkPolyDataMapper;
class vtkPVCacheKeeper;
class vtkPVLODVolume;
class vtkSmartVolumeMapper;
class vtkVolumeProperty;
class VTKPVCLIENTSERVERCORERENDERING_EXPORT vtkImageVolumeRepresentation : public vtkPVDataRepresentation
{
public:
static vtkImageVolumeRepresentation* New();
vtkTypeMacro(vtkImageVolumeRepresentation, vtkPVDataRepresentation);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// vtkAlgorithm::ProcessRequest() equivalent for rendering passes. This is
// typically called by the vtkView to request meta-data from the
// representations or ask them to perform certain tasks e.g.
// PrepareForRendering.
virtual int ProcessViewRequest(vtkInformationRequestKey* request_type,
vtkInformation* inInfo, vtkInformation* outInfo);
// Description:
// This needs to be called on all instances of vtkGeometryRepresentation when
// the input is modified. This is essential since the geometry filter does not
// have any real-input on the client side which messes with the Update
// requests.
virtual void MarkModified();
// Description:
// Get/Set the visibility for this representation. When the visibility of
// representation of false, all view passes are ignored.
virtual void SetVisibility(bool val);
//***************************************************************************
// Forwarded to Actor.
void SetOrientation(double, double, double);
void SetOrigin(double, double, double);
void SetPickable(int val);
void SetPosition(double, double, double);
void SetScale(double, double, double);
//***************************************************************************
// Forwarded to vtkVolumeProperty.
void SetInterpolationType(int val);
void SetColor(vtkColorTransferFunction* lut);
void SetScalarOpacity(vtkPiecewiseFunction* pwf);
void SetScalarOpacityUnitDistance(double val);
void SetAmbient(double);
void SetDiffuse(double);
void SetSpecular(double);
void SetSpecularPower(double);
void SetShade(bool);
void SetIndependantComponents(bool);
//***************************************************************************
// Forwarded to vtkSmartVolumeMapper.
void SetRequestedRenderMode(int);
// Description:
// Provides access to the actor used by this representation.
vtkPVLODVolume* GetActor() { return this->Actor; }
// Description:
// Helper method to pass input image extent information to the view to use in
// determining the cuts for ordered compositing.
VTK_LEGACY(
static void PassOrderedCompositingInformation(
vtkPVDataRepresentation* self, vtkInformation* inInfo));
//BTX
protected:
vtkImageVolumeRepresentation();
~vtkImageVolumeRepresentation();
// Description:
// Fill input port information.
virtual int FillInputPortInformation(int port, vtkInformation* info);
// Description:
virtual int RequestData(vtkInformation*,
vtkInformationVector**, vtkInformationVector*);
// Description:
// Adds the representation to the view. This is called from
// vtkView::AddRepresentation(). Subclasses should override this method.
// Returns true if the addition succeeds.
virtual bool AddToView(vtkView* view);
// Description:
// Removes the representation to the view. This is called from
// vtkView::RemoveRepresentation(). Subclasses should override this method.
// Returns true if the removal succeeds.
virtual bool RemoveFromView(vtkView* view);
// Description:
// Overridden to check with the vtkPVCacheKeeper to see if the key is cached.
virtual bool IsCached(double cache_key);
// Description:
// Passes on parameters to the active volume mapper
virtual void UpdateMapperParameters();
vtkImageData* Cache;
vtkPVCacheKeeper* CacheKeeper;
vtkSmartVolumeMapper* VolumeMapper;
vtkVolumeProperty* Property;
vtkPVLODVolume* Actor;
vtkOutlineSource* OutlineSource;
vtkPolyDataMapper* OutlineMapper;;
unsigned long DataSize;
double DataBounds[6];
// meta-data about the input image to pass on to render view for hints
// when redistributing data.
vtkNew<vtkPExtentTranslator> PExtentTranslator;
double Origin[3];
double Spacing[3];
int WholeExtent[6];
private:
vtkImageVolumeRepresentation(const vtkImageVolumeRepresentation&); // Not implemented
void operator=(const vtkImageVolumeRepresentation&); // Not implemented
//ETX
};
#endif
|