VTK
vtkGeoAlignedImageSource.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkGeoAlignedImageSource.h
5
6 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7 All rights reserved.
8 See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9
10 This software is distributed WITHOUT ANY WARRANTY; without even
11 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12 PURPOSE. See the above copyright notice for more information.
13
14=========================================================================*/
15/*-------------------------------------------------------------------------
16 Copyright 2008 Sandia Corporation.
17 Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
18 the U.S. Government retains certain rights in this software.
19-------------------------------------------------------------------------*/
36#ifndef vtkGeoAlignedImageSource_h
37#define vtkGeoAlignedImageSource_h
38
39#include "vtkGeovisCoreModule.h" // For export macro
40#include "vtkGeoSource.h"
41
42class vtkGeoImageNode;
43class vtkImageData;
45
46class VTKGEOVISCORE_EXPORT vtkGeoAlignedImageSource : public vtkGeoSource
47{
48public:
51 void PrintSelf(ostream& os, vtkIndent indent);
52
56 virtual bool FetchRoot(vtkGeoTreeNode* node);
57
61 virtual bool FetchChild(vtkGeoTreeNode* parent, int index, vtkGeoTreeNode* child);
62
64
67 vtkGetObjectMacro(Image, vtkImageData);
68 virtual void SetImage(vtkImageData* image);
70
72
75 vtkSetVector2Macro(LatitudeRange, double);
76 vtkGetVector2Macro(LatitudeRange, double);
77 vtkSetVector2Macro(LongitudeRange, double);
78 vtkGetVector2Macro(LongitudeRange, double);
80
82
85 vtkSetClampMacro(Overlap, double, 0.0, VTK_DOUBLE_MAX);
86 vtkGetMacro(Overlap, double);
88
90
93 vtkSetMacro(PowerOfTwoSize, bool);
94 vtkGetMacro(PowerOfTwoSize, bool);
95 vtkBooleanMacro(PowerOfTwoSize, bool);
97
98protected:
101
103 int PowerOfTwo(int val);
104
107 double LatitudeRange[2];
108 double LongitudeRange[2];
109 double Overlap;
111
114
115private:
116 vtkGeoAlignedImageSource(const vtkGeoAlignedImageSource&) VTK_DELETE_FUNCTION;
117 void operator=(const vtkGeoAlignedImageSource&) VTK_DELETE_FUNCTION;
118};
119
120#endif
Splits hi-res image into tiles.
virtual bool FetchRoot(vtkGeoTreeNode *node)
Fetch the root image.
void CropImageForNode(vtkGeoImageNode *node, vtkImageData *image)
static vtkGeoAlignedImageSource * New()
vtkMultiBlockDataSet * LevelImages
vtkProgressObserver * ProgressObserver
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
virtual void SetImage(vtkImageData *image)
virtual bool FetchChild(vtkGeoTreeNode *parent, int index, vtkGeoTreeNode *child)
Fetch a child image.
A node in a multi-resolution image tree.
A multi-resolution geographic data source.
Definition: vtkGeoSource.h:58
Stores data for a patch of the globe.
topologically and geometrically regular array of data
Definition: vtkImageData.h:46
a simple class to control print indentation
Definition: vtkIndent.h:40
Composite dataset that organizes datasets into blocks.
Basic class to optionally replace vtkAlgorithm progress functionality.
@ image
Definition: vtkX3D.h:374
@ index
Definition: vtkX3D.h:246
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
#define VTK_DOUBLE_MAX
Definition: vtkType.h:163