VTK
vtkGeoImageNode.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkGeoImageNode.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 -------------------------------------------------------------------------*/
31 #ifndef __vtkGeoImageNode_h
32 #define __vtkGeoImageNode_h
33 
34 #include "vtkGeoTreeNode.h"
35 #include "vtkSmartPointer.h" // for SP
36 #include "vtkImageData.h" // for SP
37 
38 class vtkPolyData;
39 class vtkTexture;
40 
42 {
43 public:
44  static vtkGeoImageNode *New();
46  void PrintSelf(ostream& os, vtkIndent indent);
47 
49 
51  vtkGeoImageNode* GetChild(int idx);
52  vtkGeoImageNode* GetParent();
54 
56 
57  vtkImageData* GetImage();
58  void SetImage(vtkImageData* image);
60 
62 
63  vtkTexture* GetTexture();
64  void SetTexture(vtkTexture* texture);
66 
68 
72  void CropImageForTile(vtkImageData* image,double* imageLonLatExt,
73  const char* prefix = 0);
75 
77  void LoadAnImage(const char* prefix);
78 
80 
81  virtual void ShallowCopy(vtkGeoTreeNode *src);
82  virtual void DeepCopy(vtkGeoTreeNode *src);
84 
85  // Returns whether this node has valid data associated
86  // with it, or if it is an "empty" node.
87  virtual bool HasData();
88 
92  virtual void DeleteData();
93 
94 protected:
96  ~vtkGeoImageNode();
97 
98  int PowerOfTwo(int val);
99 
100 //BTX
103 //ETX
104 
105 private:
106  vtkGeoImageNode(const vtkGeoImageNode&); // Not implemented.
107  void operator=(const vtkGeoImageNode&); // Not implemented.
108 };
109 
110 #endif
virtual void ShallowCopy(vtkGeoTreeNode *src)
void PrintSelf(ostream &os, vtkIndent indent)
virtual bool HasData()
A node in a multi-resolution image tree.
concrete dataset represents vertices, lines, polygons, and triangle strips
Definition: vtkPolyData.h:81
vtkSmartPointer< vtkImageData > Image
a simple class to control print indentation
Definition: vtkIndent.h:37
topologically and geometrically regular array of data
Definition: vtkImageData.h:43
#define VTK_GEOVIS_EXPORT
handles properties associated with a texture map
Definition: vtkTexture.h:68
static vtkGeoTreeNode * New()
vtkSmartPointer< vtkTexture > Texture
Stores data for a patch of the globe.
virtual void DeleteData()
virtual void DeepCopy(vtkGeoTreeNode *src)