vtkGlobeSource Class Reference

#include <vtkGlobeSource.h>

Inheritance diagram for vtkGlobeSource:

Inheritance graph
[legend]
Collaboration diagram for vtkGlobeSource:

Collaboration graph
[legend]

List of all members.


Detailed Description

Sphere patch with Lat/Long scalar array.

vtkGlobeSource will generate any "rectangular" patch of the globe given its Longitude-Latitude extent. It adds two point scalar arrays Longitude and Latitude to the output. These arrays can be transformed to generate texture coordinates for any texture map. This source is imperfect near the poles as implmented. It should really reduce the longitude resolution as the triangles become slivers.

Definition at line 42 of file vtkGlobeSource.h.


Public Types

typedef vtkPolyDataAlgorithm Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
void PrintSelf (ostream &os, vtkIndent indent)
virtual void SetOrigin (double, double, double)
virtual void SetOrigin (double[3])
virtual void SetCurtainHeight (double)
virtual double GetCurtainHeight ()
virtual void SetStartLongitude (double)
virtual void SetEndLongitude (double)
virtual void SetStartLatitude (double)
virtual void SetEndLatitude (double)
virtual void SetLongitudeResolution (int)
virtual int GetLongitudeResolution ()
virtual void SetLatitudeResolution (int)
virtual int GetLatitudeResolution ()
virtual void SetRadius (double)
virtual double GetRadius ()
virtual void SetQuadrilateralTessellation (int)
virtual int GetQuadrilateralTessellation ()
virtual void QuadrilateralTessellationOn ()
virtual void QuadrilateralTessellationOff ()

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkGlobeSourceSafeDownCast (vtkObject *o)
static vtkGlobeSourceNew ()
static void ComputeGlobePoint (double theta, double phi, double radius, double *point, double *normal=0)
static void ComputeLatitudeLongitude (double *x, double &theta, double &phi)

Protected Member Functions

 vtkGlobeSource ()
 ~vtkGlobeSource ()
int RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
int RequestInformation (vtkInformation *, vtkInformationVector **, vtkInformationVector *)
void AddPoint (double theta, double phi, double radius, vtkPoints *newPoints, vtkFloatArray *newNormals, vtkFloatArray *newLongitudeArray, vtkFloatArray *newLatitudeArray, vtkDoubleArray *newLatLongArray)

Protected Attributes

double Origin [3]
double Radius
double CurtainHeight
int LongitudeResolution
int LatitudeResolution
double StartLongitude
double EndLongitude
double StartLatitude
double EndLatitude
int QuadrilateralTessellation

Member Typedef Documentation

Reimplemented from vtkPolyDataAlgorithm.

Definition at line 45 of file vtkGlobeSource.h.


Constructor & Destructor Documentation

vtkGlobeSource::vtkGlobeSource (  )  [protected]

vtkGlobeSource::~vtkGlobeSource (  )  [inline, protected]

Definition at line 118 of file vtkGlobeSource.h.


Member Function Documentation

virtual const char* vtkGlobeSource::GetClassName (  )  [virtual]

Reimplemented from vtkPolyDataAlgorithm.

static int vtkGlobeSource::IsTypeOf ( const char *  name  )  [static]

Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkPolyDataAlgorithm.

virtual int vtkGlobeSource::IsA ( const char *  name  )  [virtual]

Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h.

Reimplemented from vtkPolyDataAlgorithm.

static vtkGlobeSource* vtkGlobeSource::SafeDownCast ( vtkObject o  )  [static]

Reimplemented from vtkPolyDataAlgorithm.

void vtkGlobeSource::PrintSelf ( ostream &  os,
vtkIndent  indent 
) [virtual]

Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.

Reimplemented from vtkPolyDataAlgorithm.

virtual void vtkGlobeSource::SetOrigin ( double  ,
double  ,
double   
) [virtual]

virtual void vtkGlobeSource::SetOrigin ( double  [3]  )  [virtual]

virtual void vtkGlobeSource::SetStartLongitude ( double   )  [virtual]

Longitude Latitude clamps.

virtual void vtkGlobeSource::SetEndLongitude ( double   )  [virtual]

Longitude Latitude clamps.

virtual void vtkGlobeSource::SetStartLatitude ( double   )  [virtual]

Longitude Latitude clamps.

virtual void vtkGlobeSource::SetEndLatitude ( double   )  [virtual]

Longitude Latitude clamps.

virtual void vtkGlobeSource::SetLongitudeResolution ( int   )  [virtual]

Set the number of points in the longitude direction (ranging from StartLongitude to EndLongitude).

virtual int vtkGlobeSource::GetLongitudeResolution (  )  [virtual]

Set the number of points in the longitude direction (ranging from StartLongitude to EndLongitude).

virtual void vtkGlobeSource::SetLatitudeResolution ( int   )  [virtual]

Set the number of points in the latitude direction (ranging from StartLatitude to EndLatitude).

virtual int vtkGlobeSource::GetLatitudeResolution (  )  [virtual]

Set the number of points in the latitude direction (ranging from StartLatitude to EndLatitude).

virtual void vtkGlobeSource::SetRadius ( double   )  [virtual]

Set radius of sphere. Default is 6356750.0

virtual double vtkGlobeSource::GetRadius (  )  [virtual]

Set radius of sphere. Default is 6356750.0

virtual void vtkGlobeSource::SetCurtainHeight ( double   )  [virtual]

virtual double vtkGlobeSource::GetCurtainHeight (  )  [virtual]

virtual void vtkGlobeSource::SetQuadrilateralTessellation ( int   )  [virtual]

Cause the sphere to be tessellated with edges along the latitude and longitude lines. If off, triangles are generated at non-polar regions, which results in edges that are not parallel to latitude and longitude lines. If on, quadrilaterals are generated everywhere except at the poles. This can be useful for generating a wireframe sphere with natural latitude and longitude lines.

virtual int vtkGlobeSource::GetQuadrilateralTessellation (  )  [virtual]

Cause the sphere to be tessellated with edges along the latitude and longitude lines. If off, triangles are generated at non-polar regions, which results in edges that are not parallel to latitude and longitude lines. If on, quadrilaterals are generated everywhere except at the poles. This can be useful for generating a wireframe sphere with natural latitude and longitude lines.

virtual void vtkGlobeSource::QuadrilateralTessellationOn (  )  [virtual]

Cause the sphere to be tessellated with edges along the latitude and longitude lines. If off, triangles are generated at non-polar regions, which results in edges that are not parallel to latitude and longitude lines. If on, quadrilaterals are generated everywhere except at the poles. This can be useful for generating a wireframe sphere with natural latitude and longitude lines.

virtual void vtkGlobeSource::QuadrilateralTessellationOff (  )  [virtual]

Cause the sphere to be tessellated with edges along the latitude and longitude lines. If off, triangles are generated at non-polar regions, which results in edges that are not parallel to latitude and longitude lines. If on, quadrilaterals are generated everywhere except at the poles. This can be useful for generating a wireframe sphere with natural latitude and longitude lines.

static vtkGlobeSource* vtkGlobeSource::New (  )  [static]

Construct sphere with radius=0.5 and default resolution 8 in both latitude and longitude directions. longitude ranges from (-180,180) and latitude (-90,90) degrees.

Reimplemented from vtkPolyDataAlgorithm.

static void vtkGlobeSource::ComputeGlobePoint ( double  theta,
double  phi,
double  radius,
double *  point,
double *  normal = 0 
) [static]

Calculates the normal and point on a sphere with a specified radius at the spherical coordinates theta and phi.

static void vtkGlobeSource::ComputeLatitudeLongitude ( double *  x,
double &  theta,
double &  phi 
) [static]

Calculates the spherical coordinates theta and phi based on the point on a sphere.

int vtkGlobeSource::RequestData ( vtkInformation request,
vtkInformationVector **  inputVector,
vtkInformationVector outputVector 
) [protected, virtual]

This is called by the superclass. This is the method you should override.

Reimplemented from vtkPolyDataAlgorithm.

int vtkGlobeSource::RequestInformation ( vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector  
) [protected, virtual]

Reimplemented from vtkPolyDataAlgorithm.

void vtkGlobeSource::AddPoint ( double  theta,
double  phi,
double  radius,
vtkPoints newPoints,
vtkFloatArray newNormals,
vtkFloatArray newLongitudeArray,
vtkFloatArray newLatitudeArray,
vtkDoubleArray newLatLongArray 
) [protected]


Member Data Documentation

double vtkGlobeSource::Origin[3] [protected]

Definition at line 136 of file vtkGlobeSource.h.

double vtkGlobeSource::Radius [protected]

Definition at line 137 of file vtkGlobeSource.h.

double vtkGlobeSource::CurtainHeight [protected]

Definition at line 138 of file vtkGlobeSource.h.

Definition at line 139 of file vtkGlobeSource.h.

Definition at line 140 of file vtkGlobeSource.h.

double vtkGlobeSource::StartLongitude [protected]

Definition at line 141 of file vtkGlobeSource.h.

double vtkGlobeSource::EndLongitude [protected]

Definition at line 142 of file vtkGlobeSource.h.

double vtkGlobeSource::StartLatitude [protected]

Definition at line 143 of file vtkGlobeSource.h.

double vtkGlobeSource::EndLatitude [protected]

Definition at line 144 of file vtkGlobeSource.h.

Definition at line 145 of file vtkGlobeSource.h.


The documentation for this class was generated from the following file:

Generated on Wed Jun 3 19:05:50 2009 for VTK by  doxygen 1.5.6