Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

POV3DisplayDevice Class Reference

FileRenderer subclass exports scenes to POV-Ray 3.x ray tracer scene format. More...

#include <POV3DisplayDevice.h>

Inheritance diagram for POV3DisplayDevice:

FileRenderer DisplayDevice List of all members.

Public Methods

 POV3DisplayDevice (void)
virtual ~POV3DisplayDevice (void)
void write_header (void)
 write the header info. This is an alias for prepare3D. More...

void write_trailer (void)
 write any trailer info. This is called by update. More...


Protected Methods

void comment (const char *)
 Comment describing representation geometry. More...

void cone (float *a, float *b, float rad, int)
 draw a single-radius cone (pointy top). More...

void cylinder (float *, float *, float rad, int filled)
 draw a cylinder, with optional caps. More...

void line (float *xyz1, float *xyz2)
 draw a single line. More...

void point (float *xyz)
 draw an unlit point. More...

void sphere (float *xyzr)
 draw a sphere. More...

void text (float *pos, float size, float thickness, const char *str)
 draw text at specified location. More...

void triangle (const float *, const float *, const float *, const float *, const float *, const float *)
 single color triangle with interpolated surface normals. More...

void tricolor (const float *xyz1, const float *xyz2, const float *xyz3, const float *n1, const float *n2, const float *n3, const float *c1, const float *c2, const float *c3)
 triangle with interpolated surface normals and vertex colors. More...

virtual void trimesh_c4n3v3 (int numverts, float *cnv, int numfacets, int *facets)
 triangle mesh built from a vertex array and facet vertex index arrays. More...

virtual void trimesh_c4u_n3b_v3f (unsigned char *c, signed char *n, float *v, int numfacets)
 triangle mesh built from a vertex array. More...

void tristrip (int numverts, const float *cnv, int numstrips, const int *vertsperstrip, const int *facets)
 triangle strips built from a vertex array and vertex index arrays. More...

void set_line_width (int new_width)
void start_clipgroup (void)
 emit clipping plane group. More...

void end_clipgroup (void)
 terminate clipping plane group. More...


Detailed Description

FileRenderer subclass exports scenes to POV-Ray 3.x ray tracer scene format.

Definition at line 38 of file POV3DisplayDevice.h.


Constructor & Destructor Documentation

POV3DisplayDevice::POV3DisplayDevice void   
 

Definition at line 47 of file POV3DisplayDevice.C.

POV3DisplayDevice::~POV3DisplayDevice void    [virtual]
 

Definition at line 52 of file POV3DisplayDevice.C.


Member Function Documentation

void POV3DisplayDevice::comment const char *    s [protected, virtual]
 

Comment describing representation geometry.

Reimplemented from FileRenderer.

Definition at line 898 of file POV3DisplayDevice.C.

References FileRenderer::outfile.

void POV3DisplayDevice::cone float *    a,
float *    b,
float    r,
int   
[protected, virtual]
 

draw a single-radius cone (pointy top).

Reimplemented from FileRenderer.

Definition at line 253 of file POV3DisplayDevice.C.

References FileRenderer::colorIndex, FileRenderer::mat_opacity, FileRenderer::matData, FileRenderer::outfile, FileRenderer::scale_radius, Stack< Matrix4 >::top, and FileRenderer::transMat.

void POV3DisplayDevice::cylinder float *   ,
float *   ,
float    rad,
int    filled
[protected, virtual]
 

draw a cylinder, with optional caps.

Reimplemented from FileRenderer.

Definition at line 226 of file POV3DisplayDevice.C.

References FileRenderer::colorIndex, FileRenderer::mat_opacity, FileRenderer::matData, FileRenderer::outfile, FileRenderer::scale_radius, Stack< Matrix4 >::top, and FileRenderer::transMat.

void POV3DisplayDevice::end_clipgroup void    [protected, virtual]
 

terminate clipping plane group.

Reimplemented from FileRenderer.

Definition at line 1350 of file POV3DisplayDevice.C.

References FileRenderer::outfile.

void POV3DisplayDevice::line float *    xyz1,
float *    xyz2
[protected, virtual]
 

draw a single line.

Reimplemented from FileRenderer.

Definition at line 166 of file POV3DisplayDevice.C.

References FileRenderer::colorIndex, DASH_LENGTH, FileRenderer::lineStyle, FileRenderer::mat_opacity, FileRenderer::matData, FileRenderer::outfile, Stack< Matrix4 >::top, FileRenderer::transMat, vec_copy, vec_normalize, and vec_sub.

void POV3DisplayDevice::point float *    spdata [protected, virtual]
 

draw an unlit point.

Reimplemented from FileRenderer.

Definition at line 132 of file POV3DisplayDevice.C.

References FileRenderer::colorIndex, DEFAULT_RADIUS, FileRenderer::mat_opacity, FileRenderer::matData, FileRenderer::outfile, FileRenderer::pointSize, Stack< Matrix4 >::top, and FileRenderer::transMat.

void POV3DisplayDevice::set_line_width int    new_width [protected, virtual]
 

Reimplemented from FileRenderer.

Definition at line 1360 of file POV3DisplayDevice.C.

References DEFAULT_RADIUS, FileRenderer::lineWidth, and FileRenderer::outfile.

void POV3DisplayDevice::sphere float *    xyzr [protected, virtual]
 

draw a sphere.

Reimplemented from FileRenderer.

Definition at line 147 of file POV3DisplayDevice.C.

References FileRenderer::colorIndex, FileRenderer::mat_opacity, FileRenderer::matData, FileRenderer::outfile, FileRenderer::scale_radius, Stack< Matrix4 >::top, and FileRenderer::transMat.

void POV3DisplayDevice::start_clipgroup void    [protected, virtual]
 

emit clipping plane group.

Reimplemented from FileRenderer.

Definition at line 1234 of file POV3DisplayDevice.C.

References FileRenderer::clip_center, FileRenderer::clip_color, FileRenderer::clip_mode, FileRenderer::clip_normal, dot_prod, FileRenderer::mat_opacity, FileRenderer::outfile, POVRAY_SCALEHACK, Stack< Matrix4 >::top, FileRenderer::transMat, vec_negate, and VMD_MAX_CLIP_PLANE.

void POV3DisplayDevice::text float *    pos,
float    size,
float    thickness,
const char *    str
[protected, virtual]
 

draw text at specified location.

Reimplemented from FileRenderer.

Definition at line 66 of file POV3DisplayDevice.C.

References FileRenderer::colorIndex, DEFAULT_RADIUS, hersheyDrawInitLetter, hersheyDrawNextLine, FileRenderer::mat_opacity, FileRenderer::matData, FileRenderer::outfile, size, Stack< Matrix4 >::top, FileRenderer::transMat, DisplayDevice::x, and DisplayDevice::y.

void POV3DisplayDevice::triangle const float *    a,
const float *    b,
const float *    c,
const float *    n1,
const float *    n2,
const float *    n3
[protected, virtual]
 

single color triangle with interpolated surface normals.

Reimplemented from FileRenderer.

Definition at line 284 of file POV3DisplayDevice.C.

References FileRenderer::colorIndex, FileRenderer::matData, and tricolor.

void POV3DisplayDevice::tricolor const float *    xyz1,
const float *    xyz2,
const float *    xyz3,
const float *    n1,
const float *    n2,
const float *    n3,
const float *    c1,
const float *    c2,
const float *    c3
[protected, virtual]
 

triangle with interpolated surface normals and vertex colors.

Reimplemented from FileRenderer.

Definition at line 297 of file POV3DisplayDevice.C.

References cross_prod, dot_prod, FileRenderer::mat_opacity, FileRenderer::outfile, Stack< Matrix4 >::top, FileRenderer::transMat, and vec_sub.

Referenced by triangle.

void POV3DisplayDevice::trimesh_c4n3v3 int    numverts,
float *    cnv,
int    numfacets,
int *    facets
[protected, virtual]
 

triangle mesh built from a vertex array and facet vertex index arrays.

Reimplemented from FileRenderer.

Definition at line 360 of file POV3DisplayDevice.C.

References Matrix4::identity, Matrix4::mat, FileRenderer::mat_opacity, Matrix4::multnorm3d, Matrix4::multpoint3d, FileRenderer::outfile, POVRAY_SCALEHACK, Matrix4::scale, DisplayDevice::shadows_enabled, Stack< Matrix4 >::top, and FileRenderer::transMat.

void POV3DisplayDevice::trimesh_c4u_n3b_v3f unsigned char *    c,
signed char *    n,
float *    v,
int    numfacets
[protected, virtual]
 

triangle mesh built from a vertex array.

Reimplemented from FileRenderer.

Definition at line 624 of file POV3DisplayDevice.C.

References Matrix4::identity, Matrix4::mat, FileRenderer::mat_opacity, Matrix4::multnorm3d, Matrix4::multpoint3d, n, FileRenderer::outfile, POVRAY_SCALEHACK, Matrix4::scale, DisplayDevice::shadows_enabled, Stack< Matrix4 >::top, and FileRenderer::transMat.

void POV3DisplayDevice::tristrip int    numverts,
const float *    cnv,
int    numstrips,
const int *    vertsperstrip,
const int *    facets
[protected, virtual]
 

triangle strips built from a vertex array and vertex index arrays.

Reimplemented from FileRenderer.

Definition at line 767 of file POV3DisplayDevice.C.

References Matrix4::identity, Matrix4::mat, FileRenderer::mat_opacity, Matrix4::multnorm3d, Matrix4::multpoint3d, FileRenderer::outfile, POVRAY_SCALEHACK, Matrix4::scale, DisplayDevice::shadows_enabled, Stack< Matrix4 >::top, and FileRenderer::transMat.

void POV3DisplayDevice::write_header void    [virtual]
 

write the header info. This is an alias for prepare3D.

Reimplemented from FileRenderer.

Definition at line 904 of file POV3DisplayDevice.C.

References DisplayDevice::Aspect, FileRenderer::backColor, FileRenderer::backgradientbotcolor, FileRenderer::backgradienttopcolor, DisplayDevice::backgroundmode, DisplayDevice::CUE_EXP, DisplayDevice::CUE_EXP2, DisplayDevice::CUE_LINEAR, DisplayDevice::cueingEnabled, DEFAULT_RADIUS, DISP_LIGHTS, DisplayDevice::dof_enabled, DisplayDevice::eyeDir, DisplayDevice::eyePos, DisplayDevice::get_cue_density, DisplayDevice::get_dof_fnumber, DisplayDevice::get_dof_focal_dist, DisplayDevice::LEFTEYE, FileRenderer::lightState, FileRenderer::lineWidth, FileRenderer::my_filename, DisplayDevice::NOSTEREO, DisplayDevice::NUM_CUE_MODES, DisplayDevice::ORTHOGRAPHIC, FileRenderer::outfile, DisplayDevice::PERSPECTIVE, DisplayDevice::projection, DisplayDevice::shadows_enabled, DisplayDevice::vSize, DisplayDevice::whichEye, DisplayDevice::xSize, DisplayDevice::ySize, and DisplayDevice::zDist.

void POV3DisplayDevice::write_trailer void    [virtual]
 

write any trailer info. This is called by update.

Reimplemented from FileRenderer.

Definition at line 1199 of file POV3DisplayDevice.C.

References FileRenderer::outfile.


The documentation for this class was generated from the following files:
Generated on Thu Mar 28 02:45:56 2024 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002