/usr/include/paraview/vtkPVGridAxes3DActor.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 | /*=========================================================================
Program: ParaView
Module: vtkPVGridAxes3DActor.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 vtkPVGridAxes3DActor - ParaView extensions for vtkGridAxes3DActor.
// .SECTION Description
// vtkPVGridAxes3DActor adds support for ParaView-specific use-cases to
// vtkGridAxes3DActor.
// The special use-cases are:
// \li Showing original data bounds when data has been transformed by
// specifying a transform on the \c Display properties: To support this, we add
// API to set the DataScale and DataPosition (we cannot support rotations, I am
// afraid). User is expected to set these to match the Scale and Position set
// on the \c Display properties of the data. vtkPVGridAxes3DActor converts that
// to scale and position on the vtkProperty for the superclass and sets the
// GridBounds on the superclass transformed using an inverse of the specified
// transform on the bounds reported by vtkPVRenderView.
// vtkPVRenderView uses SetTransformedBounds to set the bounds.
//
// \li Supporting change of basis transformations: for that, one is expected to
// set UseModelTransform to true, and then specify the ModelBounds and
// ModelTransformMatrix. Note: ModelTransform and DataScale/DataPosition are
// mutually exclusive.
#ifndef vtkPVGridAxes3DActor_h
#define vtkPVGridAxes3DActor_h
#include "vtkPVVTKExtensionsDefaultModule.h" //needed for exports
#include "vtkGridAxes3DActor.h"
class vtkMatrix4x4;
class VTKPVVTKEXTENSIONSDEFAULT_EXPORT vtkPVGridAxes3DActor : public vtkGridAxes3DActor
{
public:
static vtkPVGridAxes3DActor* New();
vtkTypeMacro(vtkPVGridAxes3DActor, vtkGridAxes3DActor);
void PrintSelf(ostream& os, vtkIndent indent);
// Description:
// Shallow copy from another vtkPVGridAxes3DActor.
virtual void ShallowCopy(vtkProp *prop);
// Description:
// Specify transformation used by the data.
vtkSetVector3Macro(DataScale, double);
vtkGetVector3Macro(DataScale, double);
vtkSetVector3Macro(DataPosition, double);
vtkGetVector3Macro(DataPosition, double);
// Description:
vtkSetVector6Macro(TransformedBounds, double);
vtkGetVector6Macro(TransformedBounds, double);
vtkSetMacro(UseModelTransform, bool);
vtkGetMacro(UseModelTransform, bool);
vtkBooleanMacro(UseModelTransform, bool);
vtkSetVector6Macro(ModelBounds, double);
vtkGetVector6Macro(ModelBounds, double);
void SetModelTransformMatrix(double *matrix);
// Description:
// Overridden to ensure that the transform information is passed on the
// superclass.
virtual double *GetBounds();
//BTX
protected:
vtkPVGridAxes3DActor();
~vtkPVGridAxes3DActor();
virtual void Update(vtkViewport* viewport);
void UpdateGridBounds();
void UpdateGridBoundsUsingDataBounds();
void UpdateGridBoundsUsingModelTransform();
double DataScale[3];
double DataPosition[3];
double TransformedBounds[6];
bool UseModelTransform;
double ModelBounds[6];
vtkNew<vtkMatrix4x4> ModelTransformMatrix;
private:
vtkPVGridAxes3DActor(const vtkPVGridAxes3DActor&); // Not implemented
void operator=(const vtkPVGridAxes3DActor&); // Not implemented
vtkTimeStamp BoundsUpdateTime;
//ETX
};
#endif
|