lithosphere_qt_node Class Reference

Inheritance diagram for lithosphere_qt_node:

Inheritance graph
[legend]
Collaboration diagram for lithosphere_qt_node:

Collaboration graph
[legend]

List of all members.


Detailed Description

Quadtree nodes for the lithosphere quadtree.

Definition at line 78 of file large_lithosphere.cpp.


Public Member Functions

virtual void draw (gsgl::scenegraph::context *c)
bool is_a_leaf () const
 lithosphere_qt_node (lithosphere_quadtree *parent_quadtree, sph_qt_node *parent)
virtual ~lithosphere_qt_node ()

Protected Attributes

sph_qt_nodeadjacent_nodes [4]
 Pointers to the nodes at the quad's sides.
gsgl::platform::buffer_pool::object_record buffer_pool_rec
sph_qt_nodechildren [4]
bool dirty
unsigned long last_merge_frame
 The frame at which we last merged the node.
unsigned long last_radius_frame
 The frame for which we last calculated the radius of the node.
unsigned long last_split_frame
 The frame at which we last split the node.
int level
 The level of detail of this node.
int num_indices_in_quadrants [4]
 Counts how many indices are used by each subquadrant.
sph_qt_nodeparent_node
spherical_quadtreeparent_quadtree
gsgl::index_t pos_in_leaf_node_array
gsgl::index_t pos_in_merge_node_array
gsgl::real_t radius_in_screen_space
 The "thickness" of the node in screen space.
gsgl::real_t radius_in_world_space
 The "thickness" of the node in world space.
gsgl::data::simple_array
< gsgl::index_t
triangle_fan_indices
 Temporary for storing indices used by the quadrant.
gsgl::index_t vertex_indices [25]
 Stores the indices into the global buffers.

Private Attributes

gsgl::platform::texturecurrent_heightmap
 This is the heightmap that the node is using; it may be a parent's.
gsgl::platform::texturecurrent_texture
 This is the texture that the node is using; it may be a parent's.
gsgl::real_t heightmap_bounds [4]
gsgl::platform::textureown_heightmap
 If this node has generated its own heightmap, this is it.
gsgl::platform::textureown_texture
 If this node has generated its own texture, this is it.
gsgl::real_t texture_bounds [4]
 Stores minimum longitude and latitude, and maximum longitude and latitude, of the quad's texture.

Constructor & Destructor Documentation

lithosphere_qt_node ( lithosphere_quadtree parent_quadtree,
sph_qt_node parent 
)

~lithosphere_qt_node (  )  [virtual]

Definition at line 121 of file large_lithosphere.cpp.


Member Function Documentation

void draw ( gsgl::scenegraph::context c  )  [virtual]

bool is_a_leaf (  )  const [inherited]


Member Data Documentation

sph_qt_node* adjacent_nodes[4] [protected, inherited]

sph_qt_node* children[4] [protected, inherited]

This is the heightmap that the node is using; it may be a parent's.

Definition at line 89 of file large_lithosphere.cpp.

Referenced by lithosphere_quadtree::init().

This is the texture that the node is using; it may be a parent's.

Definition at line 82 of file large_lithosphere.cpp.

Referenced by lithosphere_qt_node::draw(), lithosphere_quadtree::init(), and lithosphere_qt_node::lithosphere_qt_node().

bool dirty [protected, inherited]

Definition at line 91 of file large_lithosphere.cpp.

Referenced by lithosphere_quadtree::init().

unsigned long last_merge_frame [protected, inherited]

The frame at which we last merged the node.

Definition at line 85 of file spherical_quadtree.hpp.

Referenced by spherical_quadtree::merge_node(), and spherical_quadtree::update().

unsigned long last_radius_frame [protected, inherited]

The frame for which we last calculated the radius of the node.

Definition at line 84 of file spherical_quadtree.hpp.

Referenced by spherical_quadtree::node_radius().

unsigned long last_split_frame [protected, inherited]

The frame at which we last split the node.

Definition at line 86 of file spherical_quadtree.hpp.

Referenced by spherical_quadtree::merge_node(), spherical_quadtree::split_node(), and spherical_quadtree::update().

int level [protected, inherited]

int num_indices_in_quadrants[4] [protected, inherited]

Counts how many indices are used by each subquadrant.

Definition at line 80 of file spherical_quadtree.hpp.

Referenced by sph_qt_node::draw(), sph_qt_node::sph_qt_node(), and sph_qt_node::update_fan_indices().

If this node has generated its own heightmap, this is it.

Definition at line 88 of file large_lithosphere.cpp.

If this node has generated its own texture, this is it.

Definition at line 81 of file large_lithosphere.cpp.

sph_qt_node* parent_node [protected, inherited]

spherical_quadtree* parent_quadtree [protected, inherited]

gsgl::index_t pos_in_leaf_node_array [protected, inherited]

gsgl::index_t pos_in_merge_node_array [protected, inherited]

gsgl::real_t radius_in_screen_space [protected, inherited]

The "thickness" of the node in screen space.

Definition at line 83 of file spherical_quadtree.hpp.

Referenced by spherical_quadtree::node_radius().

gsgl::real_t radius_in_world_space [protected, inherited]

The "thickness" of the node in world space.

Definition at line 82 of file spherical_quadtree.hpp.

Referenced by sph_qt_node::draw(), and spherical_quadtree::node_radius().

Stores minimum longitude and latitude, and maximum longitude and latitude, of the quad's texture.

Longitude is specified as the actual longitude / 2PI, and latitude as the 0.5 + the actual latitude / PI. Min longitude and latitude

Definition at line 86 of file large_lithosphere.cpp.

Referenced by lithosphere_qt_node::draw(), lithosphere_quadtree::init(), and lithosphere_qt_node::lithosphere_qt_node().

Temporary for storing indices used by the quadrant.

Definition at line 79 of file spherical_quadtree.hpp.

Referenced by sph_qt_node::update_fan_indices().

gsgl::index_t vertex_indices[25] [protected, inherited]


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

Generated on Sat Mar 1 13:50:08 2008 for Periapsis Project by  doxygen 1.5.5