/usr/include/vtk-6.3/vtkImageSlice.h is in libvtk6-dev 6.3.0+dfsg1-5.
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 | /*=========================================================================
Program: Visualization Toolkit
Module: vtkImageSlice.h
Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
All rights reserved.
See Copyright.txt or http://www.kitware.com/Copyright.htm 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 vtkImageSlice - represents an image in a 3D scene
// .SECTION Description
// vtkImageSlice is used to represent an image in a 3D scene. It displays
// the image either as a slice or as a projection from the camera's
// perspective. Adjusting the position and orientation of the slice
// is done by adjusting the focal point and direction of the camera,
// or alternatively the slice can be set manually in vtkImageMapper3D.
// The lookup table and window/leve are set in vtkImageProperty.
// Prop3D methods such as SetPosition() and RotateWXYZ() change the
// position and orientation of the data with respect to VTK world
// coordinates.
// .SECTION Thanks
// Thanks to David Gobbi at the Seaman Family MR Centre and Dept. of Clinical
// Neurosciences, Foothills Medical Centre, Calgary, for providing this class.
// .SECTION See also
// vtkImageMapper3D vtkImageProperty vtkProp3D
#ifndef vtkImageSlice_h
#define vtkImageSlice_h
#include "vtkRenderingCoreModule.h" // For export macro
#include "vtkProp3D.h"
class vtkRenderer;
class vtkPropCollection;
class vtkImageProperty;
class vtkImageMapper3D;
class VTKRENDERINGCORE_EXPORT vtkImageSlice : public vtkProp3D
{
public:
vtkTypeMacro(vtkImageSlice,vtkProp3D);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// Creates an Image with the following defaults: origin(0,0,0)
// position=(0,0,0) scale=1 visibility=1 pickable=1 dragable=1
// orientation=(0,0,0).
static vtkImageSlice *New();
// Description:
// Set/Get the mapper.
void SetMapper(vtkImageMapper3D *mapper);
vtkGetObjectMacro(Mapper, vtkImageMapper3D);
// Description:
// Set/Get the image display properties.
void SetProperty(vtkImageProperty *property);
virtual vtkImageProperty *GetProperty();
// Description:
// Update the rendering pipeline by updating the ImageMapper
void Update();
// Description:
// Get the bounds - either all six at once
// (xmin, xmax, ymin, ymax, zmin, zmax) or one at a time.
double *GetBounds();
void GetBounds(double bounds[6]) { this->vtkProp3D::GetBounds( bounds ); };
double GetMinXBound();
double GetMaxXBound();
double GetMinYBound();
double GetMaxYBound();
double GetMinZBound();
double GetMaxZBound();
// Description:
// Return the MTime also considering the property etc.
unsigned long int GetMTime();
// Description:
// Return the mtime of anything that would cause the rendered image to
// appear differently. Usually this involves checking the mtime of the
// prop plus anything else it depends on such as properties, mappers,
// etc.
unsigned long GetRedrawMTime();
// Description:
// Shallow copy of this vtkImageSlice. Overloads the virtual vtkProp method.
void ShallowCopy(vtkProp *prop);
// Description:
// For some exporters and other other operations we must be
// able to collect all the actors, volumes, and images. These
// methods are used in that process.
void GetImages(vtkPropCollection *);
// Description:
// Support the standard render methods.
virtual int RenderOverlay(vtkViewport *viewport);
virtual int RenderOpaqueGeometry(vtkViewport *viewport);
virtual int RenderTranslucentPolygonalGeometry(vtkViewport *viewport);
// Description:
// Does this prop have some translucent polygonal geometry?
virtual int HasTranslucentPolygonalGeometry();
// Description:
// This causes the image and its mapper to be rendered. Note that a side
// effect of this method is that the pipeline will be updated.
virtual void Render(vtkRenderer *);
// Description:
// Release any resources held by this prop.
void ReleaseGraphicsResources(vtkWindow *win);
// Description:
// For stacked image rendering, set the pass. The first pass
// renders just the backing polygon, the second pass renders
// the image, and the third pass renders the depth buffer.
// Set to -1 to render all of these in the same pass.
void SetStackedImagePass(int pass);
protected:
vtkImageSlice();
~vtkImageSlice();
vtkImageMapper3D *Mapper;
vtkImageProperty *Property;
private:
vtkImageSlice(const vtkImageSlice&); // Not implemented.
void operator=(const vtkImageSlice&); // Not implemented.
};
#endif
|