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

LibTachyonDisplayDevice Class Reference

FileRenderer subclass renders via compiled-in Tachyon ray tracing engine. More...

#include <LibTachyonDisplayDevice.h>

Inheritance diagram for LibTachyonDisplayDevice:

FileRenderer DisplayDevice List of all members.

Public Methods

 LibTachyonDisplayDevice (void)
virtual ~LibTachyonDisplayDevice (void)
virtual int open_file (const char *filename)
 open the file; don't write the header info return TRUE if opened okay if file already opened, complain, and close previous file this will also reset the state variables. More...

virtual void close_file (void)
 close the file. This is called by update, and exists due to symmetry. Also, is called for case when open is called when a file was already open. More...

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 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...

virtual void sphere_array (int num, int res, float *centers, float *radii, float *colors)
 draw a sphere array. 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...

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...

virtual void define_volume_texture (int ID, int xs, int ys, int zs, const float *xplaneeq, const float *yplaneeq, const float *zplaneeq, unsigned char *texmap)
 define a volumetric texture map. More...

virtual void volume_texture_on (int texmode)
 enable volumetric texturing, either in "replace" or "modulate" mode. More...

virtual void volume_texture_off (void)
 disable volumetric texturing. More...

void start_clipgroup (void)
 emit clipping plane group. More...

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


Detailed Description

FileRenderer subclass renders via compiled-in Tachyon ray tracing engine.

Definition at line 31 of file LibTachyonDisplayDevice.h.


Constructor & Destructor Documentation

LibTachyonDisplayDevice::LibTachyonDisplayDevice void   
 

Definition at line 56 of file LibTachyonDisplayDevice.C.

References FileRenderer::aasamples, NameList< int >::add_name, FileRenderer::aosamples, FileRenderer::curformat, FileRenderer::formats, FileRenderer::has_aa, NULL, and vmd_rt_ui_progress.

LibTachyonDisplayDevice::~LibTachyonDisplayDevice void    [virtual]
 

Definition at line 83 of file LibTachyonDisplayDevice.C.


Member Function Documentation

void LibTachyonDisplayDevice::close_file void    [virtual]
 

close the file. This is called by update, and exists due to symmetry. Also, is called for case when open is called when a file was already open.

Reimplemented from FileRenderer.

Definition at line 453 of file LibTachyonDisplayDevice.C.

References FileRenderer::isOpened, FileRenderer::my_filename, NULL, and FileRenderer::outfile.

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

draw a cylinder, with optional caps.

Reimplemented from FileRenderer.

Definition at line 279 of file LibTachyonDisplayDevice.C.

References FileRenderer::colorIndex, CYLINDER_LEADINGCAP, CYLINDER_TRAILINGCAP, FileRenderer::materialIndex, FileRenderer::scale_radius, Stack< Matrix4 >::top, and FileRenderer::transMat.

void LibTachyonDisplayDevice::define_volume_texture int    ID,
int    xs,
int    ys,
int    zs,
const float *    xpq,
const float *    ypq,
const float *    zpq,
unsigned char *    texmap
[protected, virtual]
 

define a volumetric texture map.

Reimplemented from FileRenderer.

Definition at line 599 of file LibTachyonDisplayDevice.C.

References NULL.

void LibTachyonDisplayDevice::end_clipgroup void    [protected, virtual]
 

terminate clipping plane group.

Reimplemented from FileRenderer.

Definition at line 690 of file LibTachyonDisplayDevice.C.

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

draw a single line.

Reimplemented from FileRenderer.

Definition at line 224 of file LibTachyonDisplayDevice.C.

References FileRenderer::colorIndex, DASH_LENGTH, DEFAULT_RADIUS, FileRenderer::lineStyle, FileRenderer::lineWidth, FileRenderer::materialIndex, Stack< Matrix4 >::top, FileRenderer::transMat, vec_copy, vec_normalize, and vec_sub.

int LibTachyonDisplayDevice::open_file const char *    filename [virtual]
 

open the file; don't write the header info return TRUE if opened okay if file already opened, complain, and close previous file this will also reset the state variables.

Reimplemented from FileRenderer.

Definition at line 446 of file LibTachyonDisplayDevice.C.

References FileRenderer::isOpened, FileRenderer::my_filename, FileRenderer::reset_state, and stringdup.

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

draw an unlit point.

Reimplemented from FileRenderer.

Definition at line 168 of file LibTachyonDisplayDevice.C.

References FileRenderer::colorIndex, DEFAULT_RADIUS, FileRenderer::lineWidth, FileRenderer::materialIndex, Stack< Matrix4 >::top, and FileRenderer::transMat.

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

draw a sphere.

Reimplemented from FileRenderer.

Definition at line 183 of file LibTachyonDisplayDevice.C.

References FileRenderer::colorIndex, FileRenderer::materialIndex, FileRenderer::scale_radius, Stack< Matrix4 >::top, and FileRenderer::transMat.

void LibTachyonDisplayDevice::sphere_array int    num,
int    res,
float *    centers,
float *    radii,
float *    colors
[protected, virtual]
 

draw a sphere array.

Reimplemented from FileRenderer.

Definition at line 199 of file LibTachyonDisplayDevice.C.

References FileRenderer::materialIndex, FileRenderer::nearest_index, FileRenderer::scale_radius, FileRenderer::super_set_color, Stack< Matrix4 >::top, and FileRenderer::transMat.

void LibTachyonDisplayDevice::start_clipgroup void    [protected, virtual]
 

emit clipping plane group.

Reimplemented from FileRenderer.

Definition at line 640 of file LibTachyonDisplayDevice.C.

References FileRenderer::clip_center, FileRenderer::clip_mode, FileRenderer::clip_normal, dot_prod, FILERENDERER_NOCLIP, Stack< Matrix4 >::top, FileRenderer::transMat, vec_negate, VMD_MAX_CLIP_PLANE, and FileRenderer::warningflags.

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

draw text at specified location.

Reimplemented from FileRenderer.

Definition at line 108 of file LibTachyonDisplayDevice.C.

References FileRenderer::colorIndex, DEFAULT_RADIUS, hersheyDrawInitLetter, hersheyDrawNextLine, FileRenderer::materialIndex, Stack< Matrix4 >::top, FileRenderer::transMat, DisplayDevice::x, and DisplayDevice::y.

void LibTachyonDisplayDevice::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 327 of file LibTachyonDisplayDevice.C.

References FileRenderer::colorIndex, FileRenderer::materialIndex, Stack< Matrix4 >::top, and FileRenderer::transMat.

void LibTachyonDisplayDevice::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 355 of file LibTachyonDisplayDevice.C.

References FileRenderer::materialIndex, Stack< Matrix4 >::top, and FileRenderer::transMat.

void LibTachyonDisplayDevice::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 404 of file LibTachyonDisplayDevice.C.

References FileRenderer::materialIndex, Matrix4::multnorm3d, Matrix4::multpoint3d, Stack< Matrix4 >::top, and FileRenderer::transMat.

void LibTachyonDisplayDevice::volume_texture_off void    [protected, virtual]
 

disable volumetric texturing.

Reimplemented from FileRenderer.

Definition at line 635 of file LibTachyonDisplayDevice.C.

void LibTachyonDisplayDevice::volume_texture_on int    texmode [protected, virtual]
 

enable volumetric texturing, either in "replace" or "modulate" mode.

Reimplemented from FileRenderer.

Definition at line 629 of file LibTachyonDisplayDevice.C.

void LibTachyonDisplayDevice::write_header void    [virtual]
 

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

Reimplemented from FileRenderer.

Definition at line 476 of file LibTachyonDisplayDevice.C.

References DisplayDevice::ao_enabled, FileRenderer::aosamples, checkfileextension, DisplayDevice::get_ao_ambient, DisplayDevice::get_ao_direct, FileRenderer::my_filename, DisplayDevice::shadows_enabled, DisplayDevice::xSize, and DisplayDevice::ySize.

void LibTachyonDisplayDevice::write_trailer void    [virtual]
 

write any trailer info. This is called by update.

Reimplemented from FileRenderer.

Definition at line 577 of file LibTachyonDisplayDevice.C.


The documentation for this class was generated from the following files:
Generated on Fri May 24 01:50:02 2013 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002