Panda3D
Classes | Public Types | Public Member Functions | List of all members
SceneGraphAnalyzer Class Reference

A handy class that can scrub over a scene graph and collect interesting statistics on it. More...

#include "sceneGraphAnalyzer.h"

Public Types

enum  LodMode { LM_lowest, LM_highest, LM_all, LM_none }
 

Public Member Functions

void add_node (PandaNode *node)
 Adds a new node to the set of data for analysis. More...
 
void clear ()
 Resets all of the data in the analyzer in preparation for a new run. More...
 
LodMode get_lod_mode (LodMode lod_mode) const
 Returns the mode in which LODNodes are analyzed. More...
 
int get_num_colors () const
 
int get_num_geom_nodes () const
 
int get_num_geom_vertex_datas () const
 
int get_num_geom_vertex_formats () const
 
int get_num_geoms () const
 
int get_num_individual_tris () const
 
int get_num_instances () const
 
int get_num_lines () const
 
int get_num_lod_nodes () const
 
int get_num_long_normals () const
 
int get_num_nodes () const
 
int get_num_nodes_with_attribs () const
 
int get_num_normals () const
 
int get_num_patches () const
 
int get_num_points () const
 
int get_num_short_normals () const
 
int get_num_texcoords () const
 
int get_num_transforms () const
 
int get_num_triangles_in_fans () const
 
int get_num_triangles_in_strips () const
 
int get_num_trifans () const
 
int get_num_tris () const
 
int get_num_tristrips () const
 
int get_num_vertices () const
 
int get_num_vertices_in_patches () const
 
size_t get_texture_bytes () const
 
PN_stdfloat get_total_normal_length () const
 
size_t get_vertex_data_size () const
 
void set_lod_mode (LodMode lod_mode)
 Specifies the mode in which LODNodes are analyzed. More...
 
void write (std::ostream &out, int indent_level=0) const
 Describes all the data collected. More...
 

Detailed Description

A handy class that can scrub over a scene graph and collect interesting statistics on it.

Definition at line 37 of file sceneGraphAnalyzer.h.

Member Function Documentation

◆ add_node()

void SceneGraphAnalyzer::add_node ( PandaNode node)

Adds a new node to the set of data for analysis.

Normally, this would only be called once, and passed the top of the scene graph, but it's possible to repeatedly pass in subgraphs to get an analysis of all the graphs together.

Definition at line 106 of file sceneGraphAnalyzer.cxx.

◆ clear()

void SceneGraphAnalyzer::clear ( )

Resets all of the data in the analyzer in preparation for a new run.

Definition at line 55 of file sceneGraphAnalyzer.cxx.

◆ get_lod_mode()

SceneGraphAnalyzer::LodMode SceneGraphAnalyzer::get_lod_mode ( LodMode  lod_mode) const
inline

Returns the mode in which LODNodes are analyzed.

Definition at line 26 of file sceneGraphAnalyzer.I.

◆ set_lod_mode()

void SceneGraphAnalyzer::set_lod_mode ( LodMode  lod_mode)
inline

Specifies the mode in which LODNodes are analyzed.

Definition at line 18 of file sceneGraphAnalyzer.I.

◆ write()

void SceneGraphAnalyzer::write ( std::ostream &  out,
int  indent_level = 0 
) const

Describes all the data collected.

Definition at line 114 of file sceneGraphAnalyzer.cxx.

References indent().


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