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

X3DDisplayDevice Class Reference

FileRenderer subclass to export VMD scenes to X3D scene format. More...

#include <X3DDisplayDevice.h>

Inheritance diagram for X3DDisplayDevice:

List of all members.

Public Methods

X3DDisplayDevice (const char *public_name, const char *public_pretty_name, const char *default_file_name, const char *default_command_line)
construct the renderer; set the 'visible' name for the renderer list. More...

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

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


Protected Methods

virtual void write_cindexmaterial (int, int)
virtual void write_colormaterial (float *, int)
virtual void comment (const char *)
Comment describing representation geometry. More...

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

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

virtual void line (float *xyz1, float *xyz2)
draw a line from a to b. More...

virtual void line_array (int num, float thickness, float *points)
draw a set of lines with the same color and thickness. More...

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

virtual void point_array (int num, float size, float *xyz, float *colors)
draw an unlighted point array. More...

virtual void polyline_array (int num, float thickness, float *points)
draw a set of connected lines with the same color and thickness. More...

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

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

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

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

virtual 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 load (const Matrix4 &mat)
load transofrmation matrix. More...

virtual void multmatrix (const Matrix4 &mat)
concatenate transformation. More...

virtual void set_color (int color_index)
set the colorID. More...


Detailed Description

FileRenderer subclass to export VMD scenes to X3D scene format.

Definition at line 40 of file X3DDisplayDevice.h.


Constructor & Destructor Documentation

X3DDisplayDevice::X3DDisplayDevice ( const char * public_name,
const char * public_pretty_name,
const char * default_file_name,
const char * default_command_line
)

construct the renderer; set the 'visible' name for the renderer list.

Definition at line 61 of file X3DDisplayDevice.C.

X3DDisplayDevice::X3DDisplayDevice ( void )

Definition at line 71 of file X3DDisplayDevice.C.


Member Function Documentation

void X3DDisplayDevice::comment ( const char * s ) [protected, virtual]

Comment describing representation geometry.

Reimplemented from FileRenderer.

Definition at line 821 of file X3DDisplayDevice.C.

References FileRenderer::outfile.

void X3DDisplayDevice::cone ( float * a,
float * b,
float r,
int
) [protected, virtual]

draw a single-radius cone (pointy top).

Reimplemented from FileRenderer.

Definition at line 512 of file X3DDisplayDevice.C.

References FileRenderer::colorIndex, cross_prod, distance, dot_prod, FileRenderer::materialIndex, FileRenderer::outfile, FileRenderer::scale_radius, Stack< Matrix4 >::top, FileRenderer::transMat, vec_normalize, vec_sub, and write_cindexmaterial.

void X3DDisplayDevice::cylinder ( float * a,
float * b,
float rad,
int filled
) [protected, virtual]

draw a cylinder, with optional caps.

Reimplemented from FileRenderer.

Definition at line 443 of file X3DDisplayDevice.C.

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

void X3DDisplayDevice::line ( float * xyz1,
float * xyz2
) [protected, virtual]

draw a line from a to b.

Reimplemented from FileRenderer.

Definition at line 277 of file X3DDisplayDevice.C.

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

void X3DDisplayDevice::line_array ( int num,
float thickness,
float * points
) [protected, virtual]

draw a set of lines with the same color and thickness.

Reimplemented from FileRenderer.

Reimplemented in X3DOMDisplayDevice.

Definition at line 348 of file X3DDisplayDevice.C.

References FileRenderer::colorIndex, FileRenderer::mat_ambient, FileRenderer::mat_diffuse, FileRenderer::matData, num, FileRenderer::outfile, Stack< Matrix4 >::top, and FileRenderer::transMat.

void X3DDisplayDevice::load ( const Matrix4 & mat ) [protected, virtual]

load transofrmation matrix.

Reimplemented from FileRenderer.

Definition at line 817 of file X3DDisplayDevice.C.

References mat.

void X3DDisplayDevice::multmatrix ( const Matrix4 & mat ) [protected, virtual]

concatenate transformation.

Reimplemented from FileRenderer.

Definition at line 813 of file X3DDisplayDevice.C.

References mat.

void X3DDisplayDevice::point ( float * xyz ) [protected, virtual]

draw an unlit point.

Reimplemented from FileRenderer.

Definition at line 198 of file X3DDisplayDevice.C.

References FileRenderer::colorIndex, FileRenderer::mat_ambient, FileRenderer::mat_diffuse, FileRenderer::matData, FileRenderer::outfile, Stack< Matrix4 >::top, FileRenderer::transMat, and vec_copy.

void X3DDisplayDevice::point_array ( int num,
float size,
float * xyz,
float * colors
) [protected, virtual]

draw an unlighted point array.

Reimplemented from FileRenderer.

Definition at line 233 of file X3DDisplayDevice.C.

References FileRenderer::mat_ambient, num, FileRenderer::outfile, size, Stack< Matrix4 >::top, and FileRenderer::transMat.

void X3DDisplayDevice::polyline_array ( int num,
float thickness,
float * points
) [protected, virtual]

draw a set of connected lines with the same color and thickness.

Reimplemented from FileRenderer.

Reimplemented in X3DOMDisplayDevice.

Definition at line 398 of file X3DDisplayDevice.C.

References FileRenderer::colorIndex, FileRenderer::mat_ambient, FileRenderer::mat_diffuse, FileRenderer::matData, num, FileRenderer::outfile, Stack< Matrix4 >::top, and FileRenderer::transMat.

void X3DDisplayDevice::set_color ( int color_index ) [protected, virtual]

set the colorID.

Reimplemented from FileRenderer.

Definition at line 76 of file X3DDisplayDevice.C.

References FileRenderer::materialIndex, and write_cindexmaterial.

void X3DDisplayDevice::sphere ( float * xyzr ) [protected, virtual]

draw a sphere.

Reimplemented from FileRenderer.

Definition at line 179 of file X3DDisplayDevice.C.

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

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

draw text at specified location.

Reimplemented from FileRenderer.

Reimplemented in X3DOMDisplayDevice.

Definition at line 83 of file X3DDisplayDevice.C.

References ResizeArray::append, ResizeArray::append3, ResizeArray::clear, FileRenderer::colorIndex, hersheyDrawInitLetter, hersheyDrawNextLine, FileRenderer::mat_ambient, FileRenderer::mat_diffuse, FileRenderer::matData, ResizeArray::num, FileRenderer::outfile, size, Stack< Matrix4 >::top, FileRenderer::transMat, DisplayDevice::x, and DisplayDevice::y.

void X3DDisplayDevice::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 562 of file X3DDisplayDevice.C.

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

void X3DDisplayDevice::tricolor ( const float * a,
const float * b,
const float * c,
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 591 of file X3DDisplayDevice.C.

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

void X3DDisplayDevice::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 625 of file X3DDisplayDevice.C.

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

void X3DDisplayDevice::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 677 of file X3DDisplayDevice.C.

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

void X3DDisplayDevice::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.

Reimplemented in X3DOMDisplayDevice.

Definition at line 757 of file X3DDisplayDevice.C.

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

void X3DDisplayDevice::write_cindexmaterial ( int ,
int
) [protected, virtual]

Definition at line 894 of file X3DDisplayDevice.C.

References FileRenderer::matData, and write_colormaterial.

Referenced by cone, line, set_color, sphere, triangle, tricolor, trimesh_c4n3v3, trimesh_c4u_n3b_v3f, X3DOMDisplayDevice::tristrip, and tristrip.

void X3DDisplayDevice::write_colormaterial ( float * ,
int
) [protected, virtual]

Definition at line 898 of file X3DDisplayDevice.C.

References FileRenderer::mat_ambient, FileRenderer::mat_diffuse, FileRenderer::mat_opacity, FileRenderer::mat_shininess, FileRenderer::mat_specular, and FileRenderer::outfile.

Referenced by write_cindexmaterial.

void X3DDisplayDevice::write_header ( void ) [virtual]

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

Reimplemented from FileRenderer.

Definition at line 828 of file X3DDisplayDevice.C.

References DisplayDevice::Aspect, FileRenderer::backColor, FileRenderer::backgradientbotcolor, FileRenderer::backgradienttopcolor, DisplayDevice::backgroundmode, DisplayDevice::eyePos, FileRenderer::outfile, DisplayDevice::PERSPECTIVE, DisplayDevice::projection, VMD_PI, DisplayDevice::vSize, and DisplayDevice::zDist.

void X3DDisplayDevice::write_trailer ( void ) [virtual]

write any trailer info. This is called by update.

Reimplemented from FileRenderer.

Definition at line 889 of file X3DDisplayDevice.C.

References FileRenderer::outfile.


The documentation for this class was generated from the following files:
Generated on Tue Nov 18 02:50:03 2025 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002

AltStyle によって変換されたページ (->オリジナル) /