Files
ThirdParty-6/ParaView-5.0.1/VTK/Geovis/Core/vtkGeoFileTerrainSource.h

73 lines
2.4 KiB
C++

/*=========================================================================
Program: Visualization Toolkit
Module: vtkGeoFileTerrainSource.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.
=========================================================================*/
/*-------------------------------------------------------------------------
Copyright 2008 Sandia Corporation.
Under the terms of Contract DE-AC04-94AL85000 with Sandia Corporation,
the U.S. Government retains certain rights in this software.
-------------------------------------------------------------------------*/
// .NAME vtkGeoFileTerrainSource - A source for tiled geometry on disk.
//
// .SECTION Description
// vtkGeoFileTerrainSource reads geometry tiles as .vtp files from a
// directory that follow a certain naming convention containing the level
// of the patch and the position within that level. Use vtkGeoTerrain's
// SaveDatabase method to create a database of files in this format.
#ifndef vtkGeoFileTerrainSource_h
#define vtkGeoFileTerrainSource_h
#include "vtkGeovisCoreModule.h" // For export macro
#include "vtkGeoSource.h"
#include "vtkSmartPointer.h" // For smart pointer ivars
class vtkGeoTerrainNode;
class vtkGeoTreeNode;
class VTKGEOVISCORE_EXPORT vtkGeoFileTerrainSource : public vtkGeoSource
{
public:
static vtkGeoFileTerrainSource *New();
vtkTypeMacro(vtkGeoFileTerrainSource,vtkGeoSource);
void PrintSelf(ostream& os, vtkIndent indent);
vtkGeoFileTerrainSource();
~vtkGeoFileTerrainSource();
// Description:
// Retrieve the root geometry representing the entire globe.
virtual bool FetchRoot(vtkGeoTreeNode* root);
// Description:
// Retrieve the child's geometry from disk.
virtual bool FetchChild(vtkGeoTreeNode* node, int index, vtkGeoTreeNode* child);
// Description:
// The path the tiled geometry database.
vtkSetStringMacro(Path);
vtkGetStringMacro(Path);
protected:
bool ReadModel(int level, int id, vtkGeoTerrainNode* node);
private:
vtkGeoFileTerrainSource(const vtkGeoFileTerrainSource&); // Not implemented
void operator=(const vtkGeoFileTerrainSource&); // Not implemented
char* Path;
};
#endif