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

X3DDisplayDevice.h

Go to the documentation of this file.
00001 /***************************************************************************
00002 *cr 
00003 *cr (C) Copyright 1995-2019 The Board of Trustees of the 
00004 *cr University of Illinois 
00005 *cr All Rights Reserved 
00006 *cr 
00007 ***************************************************************************/
00008 /***************************************************************************
00009 * RCS INFORMATION:
00010 *
00011 * $RCSfile: X3DDisplayDevice.h,v $
00012 * $Author: johns $ $Locker: $ $State: Exp $
00013 * $Revision: 1.17 $ $Date: 2020年07月01日 06:09:05 $
00014 *
00015 ***************************************************************************/
00033 #ifndef X3DDISPLAYDEVICE_H
00034 #define X3DDISPLAYDEVICE_H
00035 
00036 #include <stdio.h>
00037 #include "FileRenderer.h"
00038 
00040 class X3DDisplayDevice : public FileRenderer {
00041 private:
00042 virtual void cylinder_noxfrm(float *a, float *b, float rad, int filled);
00043 
00044 protected:
00045 // XXX would-be private routines also needed by the X3DOM subclass
00046 virtual void write_cindexmaterial(int, int); // write colors, materials etc.
00047 virtual void write_colormaterial(float *, int); // write colors, materials etc.
00048 
00049 // assorted graphics functions
00050 virtual void comment(const char *);
00051 virtual void cone(float *a, float *b, float rad, int /* resolution */);
00052 virtual void cylinder(float *a, float *b, float rad, int filled);
00053 virtual void line(float *xyz1, float *xyz2);
00054 virtual void line_array(int num, float thickness, float *points);
00055 virtual void point(float *xyz);
00056 virtual void point_array(int num, float size, float *xyz, float *colors);
00057 virtual void polyline_array(int num, float thickness, float *points);
00058 virtual void sphere(float *xyzr);
00059 virtual void text(float *pos, float size, float thickness, const char *str);
00060 virtual void triangle(const float *, const float *, const float *,
00061 const float *, const float *, const float *);
00062 virtual void tricolor(const float * xyz1, const float * xyz2, const float * xyz3,
00063 const float * n1, const float * n2, const float * n3,
00064 const float *c1, const float *c2, const float *c3);
00065 virtual void trimesh_c4n3v3(int numverts, float * cnv, 
00066 int numfacets, int * facets);
00067 virtual void trimesh_c4u_n3b_v3f(unsigned char *c, signed char *n,
00068 float *v, int numfacets);
00069 virtual void tristrip(int numverts, const float * cnv,
00070 int numstrips, const int *vertsperstrip,
00071 const int *facets);
00072 
00073 virtual void load(const Matrix4& mat); 
00074 virtual void multmatrix(const Matrix4& mat); 
00075 virtual void set_color(int color_index); 
00076 
00077 public:
00079 X3DDisplayDevice(const char *public_name,
00080 const char *public_pretty_name,
00081 const char *default_file_name,
00082 const char *default_command_line);
00083 
00084 X3DDisplayDevice(void);
00085 virtual void write_header(void);
00086 virtual void write_trailer(void);
00087 }; 
00088 
00089 
00090 class X3DOMDisplayDevice : public X3DDisplayDevice {
00091 protected:
00092 // assorted graphics functions
00093 virtual void line_array(int num, float thickness, float *points);
00094 virtual void polyline_array(int num, float thickness, float *points);
00095 virtual void text(float *pos, float size, float thickness, const char *str);
00096 virtual void tristrip(int numverts, const float * cnv,
00097 int numstrips, const int *vertsperstrip,
00098 const int *facets);
00099 
00100 public:
00101 X3DOMDisplayDevice(void); // constructor
00102 };
00103 
00104 
00105 
00106 #endif
00107 
00108 
00109 

Generated on Mon Nov 17 02:47:31 2025 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002

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