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 "vtkGeovisCoreModule.h" // For export macro
35 #include "vtkGeoTreeNode.h"
36 #include "vtkSmartPointer.h" // for SP
37 #include "vtkImageData.h" // for SP
38 
39 class vtkPolyData;
40 class vtkTexture;
41 
43 {
44 public:
45  static vtkGeoImageNode *New();
47  void PrintSelf(ostream& os, vtkIndent indent);
48 
50 
52  vtkGeoImageNode* GetChild(int idx);
53  vtkGeoImageNode* GetParent();
55 
57 
58  vtkImageData* GetImage();
59  void SetImage(vtkImageData* image);
61 
63 
64  vtkTexture* GetTexture();
65  void SetTexture(vtkTexture* texture);
67 
69 
73  void CropImageForTile(vtkImageData* image,double* imageLonLatExt,
74  const char* prefix = 0);
76 
78  void LoadAnImage(const char* prefix);
79 
81 
82  virtual void ShallowCopy(vtkGeoTreeNode *src);
83  virtual void DeepCopy(vtkGeoTreeNode *src);
85 
86  // Returns whether this node has valid data associated
87  // with it, or if it is an "empty" node.
88  virtual bool HasData();
89 
93  virtual void DeleteData();
94 
95 protected:
97  ~vtkGeoImageNode();
98 
99  int PowerOfTwo(int val);
100 
101 //BTX
104 //ETX
105 
106 private:
107  vtkGeoImageNode(const vtkGeoImageNode&); // Not implemented.
108  void operator=(const vtkGeoImageNode&); // Not implemented.
109 };
110 
111 #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:83
vtkSmartPointer< vtkImageData > Image
a simple class to control print indentation
Definition: vtkIndent.h:38
topologically and geometrically regular array of data
Definition: vtkImageData.h:44
handles properties associated with a texture map
Definition: vtkTexture.h:69
static vtkGeoTreeNode * New()
vtkSmartPointer< vtkTexture > Texture
#define VTKGEOVISCORE_EXPORT
Stores data for a patch of the globe.
virtual void DeleteData()
virtual void DeepCopy(vtkGeoTreeNode *src)