object.h

Go to the documentation of this file.
00001 // Author: Justin Kinney
00002 // Date: Sep 2008
00003 
00004 #ifndef OBJECT_H
00005 #define OBJECT_H 1
00006 
00007 #include "meshmorph.h"
00008 
00009 typedef std::map<std::string,Edge*,lts>::const_iterator              msep_cit;
00010 
00011 class Object
00012 {
00013 private:
00014   std::string  name; // object name, derived from file name
00015   Vertex       * fv; // pointer to first Vertex to detect vector copies
00016   Face         * ff; // pointer to first Face to detect vector copies
00017   Edge         * fe; // pointer to first Edge to detect vector copies
00018 public:
00019   vec_v     v; // container of all vertices in object
00020   vec_f     f; // container of all faces in object
00021   vec_e     e; // container of all edges in object
00022   Object                       (std::string);
00023   Object                       (Object const &);
00024   Object &     operator =      (Object const &);
00025   void         findVertAdj     (void);
00026   void         boundObject     (double * const &) const;
00027   void         setFF           (Face *);
00028   void         setFV           (Vertex *);
00029   Edge   *     getFE           (void) const;
00030   Face   *     getFF           (void) const;
00031   Vertex *     getFV           (void) const;
00032   std::string const & getName  (void) const;
00033   // build edges
00034   int          setNumDigits    (void) const;
00035   void         createEdges     (void);
00036   void         processEdge     (Face * const,
00037                                 Vertex * const,
00038                                 Vertex * const,
00039                                 Vertex * const,
00040                                 map_s_ep &,
00041                                 int const &);
00042   void         createEdge      (Face * const,
00043                                 Vertex * const,
00044                                 Vertex * const,
00045                                 Vertex * const,
00046                                 map_s_ep &,
00047                                 int const &);
00048   Edge *       findEdge        (Vertex const * const,
00049                                 Vertex const * const,
00050                                 map_s_ep const &,
00051                                 int const &) const;
00052   std::string  keyPair         (int const & a,
00053                                 int const & b,
00054                                 int const & num_digits) const;
00055 };
00056 
00057 #endif

Generated on Fri Feb 13 13:58:10 2009 for meshmorph by  doxygen 1.5.1