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

R3dDisplayDevice.h

Go to the documentation of this file.
00001 /***************************************************************************
00002  *cr                                                                       
00003  *cr            (C) Copyright 1995-2011 The Board of Trustees of the           
00004  *cr                        University of Illinois                       
00005  *cr                         All Rights Reserved                        
00006  *cr                                                                   
00007  ***************************************************************************/
00008 
00009 /***************************************************************************
00010  * RCS INFORMATION:
00011  *
00012  *      $RCSfile: R3dDisplayDevice.h,v $
00013  *      $Author: johns $        $Locker:  $             $State: Exp $
00014  *      $Revision: 1.35 $       $Date: 2011/02/23 05:36:54 $
00015  *
00016  ***************************************************************************
00017  * DESCRIPTION:
00018  * 
00019  * The R3dDisplayDevice implements routines needed to render to a file 
00020  * in raster3d format
00021  *
00022  ***************************************************************************/
00023 #ifndef R3DDISPLAYDEVICE
00024 #define R3DDISPLAYDEVICE
00025 
00026 #include <stdio.h>
00027 #include "FileRenderer.h"
00028 
00030 class R3dDisplayDevice : public FileRenderer {
00031 private:
00034   int objLegal;
00035 
00039   float old_mat_shininess;
00040   float old_mat_opacity;
00041   float old_mat_specular;
00042   int mat_on;
00043 
00044   void reset_vars(void); 
00045   void write_materials(void);
00046   void close_materials(void);
00047 
00048 protected:
00049   // assorted graphics functions
00050   void comment(const char *);
00051   void cylinder(float *, float *, float, int);
00052   void line(float *, float *);
00053   void point(float *);
00054   void sphere(float *);
00055   void text(float *pos, float size, float thickness, const char *str);
00056   void triangle(const float *, const float *, const float *,
00057                 const float *, const float *, const float *);
00058   void tricolor(const float * xyz1, const float * xyz2, const float * xyz3,
00059                 const float * n1,   const float * n2,   const float * n3,
00060                 const float *c1,    const float *c2,    const float *c3);
00061   
00062 public: 
00063   R3dDisplayDevice(void);
00064   virtual ~R3dDisplayDevice(void);
00065   void write_header(void);
00066   void write_trailer(void);
00067 }; 
00068 
00069 #endif
00070 

Generated on Sat May 26 01:48:26 2012 for VMD (current) by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002