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

Generated on Thu Apr 26 04:44:37 2007 for TNTsdk by  doxygen 1.5.2