3dfmtex.h

Go to the documentation of this file.
00001 /*** 
00002  * \file gre/3dfmtex.h
00003  * \brief FORMULA TEXTURE texturing algorithms
00004  *
00005  * \if NODOC
00006  * $Id: 3dfmtex.h_v 1.3 2004/07/30 19:06:58 vdronov Exp $
00007  *
00008  * $Log: 3dfmtex.h_v $
00009  * Revision 1.3  2004/07/30 19:06:58  vdronov
00010  * *** empty log message ***
00011  *
00012  * Revision 1.2  2004/06/29 14:21:20  vdronov
00013  * *** empty log message ***
00014  *
00015  * Revision 1.1  2004/06/17 17:26:06  vdronov
00016  * Initial revision
00017  *
00018  * \endif
00019 **/ 
00020 
00021 #ifndef  INC_GRE_3DFMTEX_H
00022 #define  INC_GRE_3DFMTEX_H
00023 
00024 #ifndef  INC_GRE_3DTEXTUR_H
00025 #include <gre/3dtextur.h>
00026 #endif
00027 
00028 #ifndef  INC_MI32_COLRCONV_H
00029 #include <mi32/colrconv.h>
00030 #endif
00031 
00032 #ifndef GENERATING_DOXYGEN_OUTPUT
00033 class GRE_LAYER_FORMULA;
00034 #endif // GENERATING_DOXYGEN_OUTPUT
00035 
00036 namespace GRE {
00037 
00038 class FORMULATEXTURE : public TEXTURE {
00039    public:
00040 
00041       FORMULATEXTURE (                               
00042          );
00043 
00044       virtual ~FORMULATEXTURE (                       //! Destructor
00045          );
00046 
00047    private:
00048       #ifndef GENERATING_DOXYGEN_OUTPUT
00049 
00050       const GRE_LAYER_FORMULA *m_Layer;
00051       DRECT2D m_Extents;
00052       SPATREF::COORDREFSYS m_CoordRefSys;
00053       TRANS2D_MAPGEN m_Transformation;
00054 
00055       COLORCOMPHANDLE m_CCHandle;
00056 
00057       bool m_IsNullTransparent;
00058 
00059       FORMULATEXTURE (                                //! Copy constructor (not implemented)
00060          const FORMULATEXTURE& rhs
00061          );
00062 
00063       FORMULATEXTURE& operator= (                        //! Assignment operator (not implemented)
00064          const FORMULATEXTURE& rhs
00065          );
00066 
00067       TEXTURE* v_CreateInstance (
00068          ) { return new FORMULATEXTURE(); };
00069 
00070       ERRVALUE v_Build (
00071          const GRE_LAYER *layer
00072          );
00073 
00074       void v_Free (
00075          );
00076 
00077       void v_Begin (
00078          const SCENE3D& scene
00079          );
00080 
00081       void v_End (
00082          );
00083 
00084       const DRECT2D& v_GetExtents (
00085          ) { return m_Extents; };
00086 
00087       void v_CreateBoundary (
00088          REGION2D& boundary
00089          );
00090 
00091       void v_SetCoordRefSys (
00092          const SPATREF::COORDREFSYS& CoordRefSys
00093          );
00094 
00095       const SPATREF::COORDREFSYS v_GetCoordRefSys (
00096          ) { return m_CoordRefSys; };
00097 
00098       bool GetColor (
00099          const DPOINT2D& point,
00100          COLOR& color 
00101          );
00102 
00103       bool v_GetColor (
00104          const INT32 line,
00105          const INT32 column,
00106          const UINT8 depth,
00107          COLOR& color 
00108          );
00109 
00110       bool v_GetColor (
00111          const DPOINT2D& point,
00112          const UINT8 depth,
00113          COLOR& color 
00114          );
00115 
00116       UINT8 v_CheckDepth (
00117          const UINT8 depth
00118          );
00119 
00120       const TRANS2D_MAPGEN& v_GetTransformationInternalToModel (
00121          ) { return m_Transformation; };
00122 
00123       #endif // GENERATING_DOXYGEN_OUTPUT
00124 
00125    };
00126 
00127 }     // End of GRE namespace
00128 
00129 #endif
00130 
00131 
00132 

Generated on Tue Dec 14 13:18:11 2004 for TNTsdk by  doxygen 1.3.8-20040913