POVRayExporter Class Reference

#include <POVRayExporter.h>

Inheritance diagram for POVRayExporter:

Exporter Explorer List of all members.

Public Member Functions

 POVRayExporter (FILE *f, bool c)
virtual void explore (SceneGraphObject &obj)
bool result (void) const
void setOutput (FILE *f, bool c)

Protected Member Functions

void _write_mesh (Mesh &, int)
void _write_sphere (const Sphere &, int)
void _write_texture (MatVisitor &, unsigned)
void _write_light_source (Emittance &)
virtual bool _process_leaf (SceneGraphObject &)
virtual void _accept_new_transformation (const Matrix4 &)
void _indent (unsigned depth, const char *ind=" ")
virtual bool _explore (SceneGraphObject &)
virtual bool _iterate (SceneGraphObject &)

Protected Attributes

unsigned _oid
FILE * _file
bool _close
bool _result
std::stack< Matrix4 * > _trStack

Detailed Description

Definition at line 17 of file POVRayExporter.h.


Constructor & Destructor Documentation

POVRayExporter FILE *  f,
bool  c
[inline]
 

Definition at line 31 of file POVRayExporter.h.


Member Function Documentation

virtual void _accept_new_transformation const Matrix4  )  [inline, protected, virtual]
 

Implements Explorer.

Definition at line 28 of file POVRayExporter.h.

bool _explore SceneGraphObject  )  [protected, virtual, inherited]
 

Reimplemented in NodesByNameExpl, ObjsAheadExplorer, RayIntExplorer, and ShadowExplorer.

Definition at line 6 of file Explorer.cc.

References Explorer::_accept_new_transformation(), Explorer::_iterate(), Explorer::_process_leaf(), Explorer::_trStack, Transform::get(), SceneGraphObject::hasSubnodes(), and SceneGraphObject::transformation().

Referenced by ObjsInAreaExplorer::_iterate(), ObjsExplorer::_iterate(), Explorer::_iterate(), and Exporter::explore().

void _indent unsigned  depth,
const char *  ind = "   "
[inline, protected, inherited]
 

Definition at line 22 of file Exporter.h.

References Exporter::_file.

Referenced by POVRayExporter::_write_light_source(), POVRayExporter::_write_mesh(), POVRayExporter::_write_sphere(), and POVRayExporter::_write_texture().

bool _iterate SceneGraphObject  )  [protected, virtual, inherited]
 

Reimplemented in BVExplorer, ObjsExplorer, ObjsInAreaExplorer, RayIntExplorer, and ShadowExplorer.

Definition at line 33 of file Explorer.cc.

References Explorer::_explore(), IteratorSDS::firstChild(), IteratorSDS::initChildrenSearch(), IteratorSDS::nextChild(), and SceneGraphObject::traverseSubnodes().

Referenced by NodesByNameExpl::_explore(), Explorer::_explore(), and BVExplorer::_iterate().

bool _process_leaf SceneGraphObject  )  [protected, virtual]
 

Implements Explorer.

Definition at line 83 of file POVRayExporter.cc.

References POVRayExporter::_oid, POVRayExporter::_write_light_source(), POVRayExporter::_write_mesh(), POVRayExporter::_write_sphere(), POVRayExporter::_write_texture(), SceneGraphObject::emittance(), SceneGraphObject::geometry(), SceneGraphObject::inspectMaterials(), IS_INSTANCE_OF, and Geometry::mesh().

void _write_light_source Emittance  )  [protected]
 

Definition at line 70 of file POVRayExporter.cc.

References Exporter::_file, Exporter::_indent(), Emittance::intensity(), and Emittance::sourceLocation().

Referenced by POVRayExporter::_process_leaf().

void _write_mesh Mesh ,
int 
[protected]
 

Definition at line 7 of file POVRayExporter.cc.

References Exporter::_file, Exporter::_indent(), Mesh::getActVert1(), Mesh::getActVertNormal1(), Mesh::goToNextEdge(), Mesh::goToNextPlane(), Mesh::goToNextSolid(), Mesh::resetActEdge(), Mesh::resetActPlane(), and Mesh::resetActSolid().

Referenced by POVRayExporter::_process_leaf().

void _write_sphere const Sphere ,
int 
[protected]
 

Definition at line 37 of file POVRayExporter.cc.

References Exporter::_file, Exporter::_indent(), Sphere::centre(), and Sphere::radius().

Referenced by POVRayExporter::_process_leaf().

void _write_texture MatVisitor ,
unsigned 
[protected]
 

Definition at line 49 of file POVRayExporter.cc.

References Exporter::_file, Exporter::_indent(), MatVisitor::ambient(), MatVisitor::diffuse(), MatVisitor::roughness(), and MatVisitor::specular().

Referenced by POVRayExporter::_process_leaf().

virtual void explore SceneGraphObject obj  )  [inline, virtual, inherited]
 

Reimplemented from Explorer.

Definition at line 32 of file Exporter.h.

References Exporter::_close, Explorer::_explore(), Exporter::_file, Exporter::_result, and Explorer::_trStack.

bool result void   )  const [inline, inherited]
 

Definition at line 42 of file Exporter.h.

References Exporter::_result.

void setOutput FILE *  f,
bool  c
[inline, inherited]
 

Definition at line 44 of file Exporter.h.

References Exporter::_close, and Exporter::_file.


Member Data Documentation

bool _close [protected, inherited]
 

Definition at line 18 of file Exporter.h.

Referenced by Exporter::explore(), and Exporter::setOutput().

FILE* _file [protected, inherited]
 

Definition at line 17 of file Exporter.h.

Referenced by Exporter::_indent(), POVRayExporter::_write_light_source(), POVRayExporter::_write_mesh(), POVRayExporter::_write_sphere(), POVRayExporter::_write_texture(), Exporter::explore(), and Exporter::setOutput().

unsigned _oid [protected]
 

Definition at line 19 of file POVRayExporter.h.

Referenced by POVRayExporter::_process_leaf().

bool _result [protected, inherited]
 

Definition at line 19 of file Exporter.h.

Referenced by Exporter::explore(), and Exporter::result().

std::stack<Matrix4*> _trStack [protected, inherited]
 

Definition at line 16 of file Explorer.h.

Referenced by ShadowExplorer::_explore(), RayIntExplorer::_explore(), ObjsAheadExplorer::_explore(), Explorer::_explore(), BVExplorer::_iterate(), POGExplorer::_process_leaf(), ObjsInAreaExplorer::_process_leaf(), LightsExplorer::_process_leaf(), ShadowExplorer::explore(), Explorer::explore(), and Exporter::explore().


The documentation for this class was generated from the following files:
Generated on Wed Jun 28 12:24:33 2006 for esg by  doxygen 1.4.6