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

RenderManDisplayDevice.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: RenderManDisplayDevice.h
00013 *      $Author: johns $      $Locker:  $               $State: Exp $
00014 *      $Revision: 1.26 $         $Date: 2011/11/10 17:05:34 $
00015 *
00016 ***************************************************************************
00017 * DESCRIPTION:
00018 *
00019 * FileRenderer type for the RenderMan interface.
00020 *
00021 ***************************************************************************/
00022 
00023 #ifndef RENDERMANDISPLAYDEVICE
00024 #define RENDERMANDISPLAYDEVICE
00025 
00026 #include <stdio.h>
00027 #include "FileRenderer.h"
00028 
00030 class RenderManDisplayDevice: public FileRenderer {
00031 private:
00034   float old_color[3];
00035   float old_opacity;
00036   float old_ambient;
00037   float old_diffuse;
00038   float old_specular;
00039 
00040   void reset_vars(void); 
00041   void write_materials(int write_color);
00042 
00044   void cylinder_noxfrm(float *, float *, float rad, int filled);
00045 
00046 protected:
00047   void text(float *pos, float size, float thickness, const char *str);
00048   void point(float *xyz);
00049   void sphere(float *xyzr);
00050   void line(float *xyz1, float *xyz2);
00051   void cylinder(float *, float *, float rad, int filled);
00052   void cone(float * a, float * b, float rad); 
00053   void triangle(const float *, const float *, const float *,
00054                 const float *, const float *, const float *);
00055   void tricolor(const float * xyz1, const float * xyz2, const float * xyz3,
00056                 const float * n1,   const float * n2,   const float * n3,
00057                 const float *c1,    const float *c2,    const float *c3);
00058   void trimesh_c4n3v3(int numverts, float * cnv, 
00059                       int numfacets, int * facets);
00060   void tristrip(int numverts, const float * cnv,
00061                 int numstrips, const int *vertsperstrip,
00062                 const int *facets);
00063   void square(float *, float *, float *, float *, float *);
00064   void comment(const char *);
00065 
00066 public: 
00067   RenderManDisplayDevice(void);
00068   virtual ~RenderManDisplayDevice(void);
00069   void write_header(void); 
00070   void write_trailer(void);
00071 }; 
00072 
00073 #endif
00074 

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