gre/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.7 2006/10/18 15:25:44 mju Exp $
00007  *
00008  * $Log: 3dfmtex.h_v $
00009  * Revision 1.7  2006/10/18 15:25:44  mju
00010  * Use colorcompstruct* instead of colorcomphandle typedef.
00011  *
00012  * Revision 1.6  2005/10/27 13:06:02  mju
00013  * Use gre namespace instead of legacy types.
00014  *
00015  * Revision 1.5  2005/10/05 21:47:10  mju
00016  * Include gre base hdr.
00017  *
00018  * Revision 1.4  2004/12/01 16:33:40  vdronov
00019  * ALIGN
00020  *
00021  * Revision 1.3  2004/07/30 19:06:58  vdronov
00022  * *** empty log message ***
00023  *
00024  * Revision 1.2  2004/06/29 14:21:20  vdronov
00025  * *** empty log message ***
00026  *
00027  * Revision 1.1  2004/06/17 17:26:06  vdronov
00028  * Initial revision
00029  *
00030  * \endif
00031 **/ 
00032 
00033 #ifndef  INC_GRE_3DFMTEX_H
00034 #define  INC_GRE_3DFMTEX_H
00035 
00036 #ifndef  INC_GRE_BASE_H
00037 #include <gre/base.h>
00038 #endif
00039 
00040 #ifndef  INC_GRE_3DTEXTUR_H
00041 #include <gre/3dtextur.h>
00042 #endif
00043 
00044 struct COLORCOMPSTRUCT;
00045 
00046 namespace GRE {
00047 
00048 class FORMULATEXTURE : public TEXTURE {
00049    public:
00050 
00051       FORMULATEXTURE (                               
00052          );
00053 
00054       virtual ~FORMULATEXTURE (                       //! Destructor
00055          );
00056 
00057    private:
00058       #ifndef GENERATING_DOXYGEN_OUTPUT
00059 
00060       const GRE::LAYER_FORMULA *m_Layer;
00061       DRECT2D ALIGN16(m_Extents);
00062       SPATREF::COORDREFSYS m_CoordRefSys;
00063       TRANS2D_MAPGEN m_Transformation;
00064 
00065       COLORCOMPSTRUCT *m_CCHandle;
00066 
00067       bool m_IsNullTransparent;
00068 
00069       FORMULATEXTURE (                                //! Copy constructor (not implemented)
00070          const FORMULATEXTURE& rhs
00071          );
00072 
00073       FORMULATEXTURE& operator= (                        //! Assignment operator (not implemented)
00074          const FORMULATEXTURE& rhs
00075          );
00076 
00077       TEXTURE* v_CreateInstance (
00078          ) { return new FORMULATEXTURE(); };
00079 
00080       ERRVALUE v_Build (
00081          const GRE::LAYER *layer
00082          );
00083 
00084       void v_Free (
00085          );
00086 
00087       void v_Begin (
00088          const SCENE3D& scene
00089          );
00090 
00091       void v_End (
00092          );
00093 
00094       const DRECT2D& v_GetExtents (
00095          ) { return m_Extents; };
00096 
00097       void v_CreateBoundary (
00098          REGION2D& boundary
00099          );
00100 
00101       void v_SetCoordRefSys (
00102          const SPATREF::COORDREFSYS& CoordRefSys
00103          );
00104 
00105       const SPATREF::COORDREFSYS v_GetCoordRefSys (
00106          ) { return m_CoordRefSys; };
00107 
00108       bool GetColor (
00109          const DPOINT2D& point,
00110          COLOR& color 
00111          );
00112 
00113       bool v_GetColor (
00114          const INT32 line,
00115          const INT32 column,
00116          const UINT8 depth,
00117          COLOR& color 
00118          );
00119 
00120       bool v_GetColor (
00121          const DPOINT2D& point,
00122          const UINT8 depth,
00123          COLOR& color 
00124          );
00125 
00126       UINT8 v_CheckDepth (
00127          const UINT8 depth
00128          );
00129 
00130       const TRANS2D_MAPGEN& v_GetTransformationInternalToModel (
00131          ) { return m_Transformation; };
00132 
00133       #endif // GENERATING_DOXYGEN_OUTPUT
00134 
00135    };
00136 
00137 }     // End of GRE namespace
00138 
00139 #endif
00140 
00141 
00142 

Generated on Thu Apr 26 04:03:28 2007 for TNTsdk by  doxygen 1.5.2