gee_path_to_lines.h

Go to the documentation of this file.
00001 /* -*- C++ -*- */
00002 
00003 /* COPYRIGHT
00004  *
00005  * This file is part of the Visual Effects Engine - VEE
00006  *
00007  * Read the "VEE-LICENSE" file for the license.
00008  *
00009  * Authors & Copyright:   
00010  *
00011  * Tommi Ilmonen, Tuukka Heikura, Marko Myllymaa and 
00012  * Janne Kontkanen 2001-2004
00013  *
00014  * Additional copyrights: Tekes 2003-2004
00015  *
00016  * firstname.lastname@hut.fi
00017  *
00018  */
00019 
00020 #ifndef GEE_PATH_TO_LINES_H
00021 #define GEE_PATH_TO_LINES_H
00022 
00023 #include <gee_lines.h>
00024 #include <gee_param_writer.h>
00025 #include <gee_path_to_x.h>
00026 
00027 class GEE_PathToLines : public GEE_PathToX
00028 {
00029 public:
00030   GEE_PathToLines(GEE_id_t pathId = -1, 
00031       GEE_id_t lineId = -1);
00032   virtual ~GEE_PathToLines();
00033 
00034   virtual bool start(GEE_World *, const GEE_TimeStamp &);
00035   virtual bool stop(GEE_World *, const GEE_TimeStamp &);
00036 
00037   virtual bool read(GEE_Io *);
00038   virtual bool write(GEE_Io *);
00039   virtual const char * type() { return "GEE_PathToLines"; }
00040   static GEE_Operator * create();
00041 
00042   GEE_Material & material() { return m_material; }
00043   void setMaterial(const GEE_Material &m) { m_material = m; }
00044 
00045   void setWidth(float w) { m_lineWidth = w; }
00046 
00047   void setUseNapra(bool use) { m_useNapra = use; }
00048   void setNapraRadius(float radius) { m_napraRadius = radius; }
00049 
00050 protected:
00051 
00052   virtual bool handleNewVertex(GEE_Path3D::iterator &);
00053 
00054   GEE_ParamWriter m_writer;
00055 
00056   GEE_id_t        m_lineId;
00057 
00058   GEE_Material    m_material;
00059   float           m_lineWidth;
00060   float           m_napraRadius;
00061 
00062   bool            m_useNapra;
00063 
00064   VEE_RefPtr<GEE_Geometry> m_lines;
00065 };
00066 
00067 #endif

Generated on Mon Mar 12 21:09:00 2007 for VEE - The Visual Effects Engine by  doxygen 1.4.6