1 /***********************************************************************
5 File OpenGl_dotexturemap.c :
12 HISTORIQUE DES MODIFICATIONS :
13 --------------------------------
14 19-08-97 : FMN ; ajout texture mapping
16 ************************************************************************/
18 /*----------------------------------------------------------------------*/
24 #include <OpenGl_tgl_all.hxx>
29 #include <OpenGl_cmn_varargs.hxx>
30 #include <OpenGl_telem_attri.hxx>
31 #include <OpenGl_tsm.hxx>
32 #include <OpenGl_telem.hxx>
33 #include <OpenGl_telem_inquire.hxx>
35 /*----------------------------------------------------------------------*/
37 static TStatus DoTextureMapMethodAdd( TSM_ELEM_DATA, Tint, cmn_key* );
38 static TStatus DoTextureMapMethodDisplay( TSM_ELEM_DATA, Tint, cmn_key* );
39 static TStatus DoTextureMapMethodPrint( TSM_ELEM_DATA, Tint, cmn_key* );
40 static TStatus DoTextureMapMethodInquire( TSM_ELEM_DATA, Tint, cmn_key* );
42 static TStatus (*MtdTbl[])( TSM_ELEM_DATA, Tint, cmn_key* ) =
45 DoTextureMapMethodDisplay,
46 DoTextureMapMethodAdd,
48 DoTextureMapMethodPrint,
49 DoTextureMapMethodInquire
54 TelDoTextureMapInitClass( TelType *el )
56 *el = TelDoTextureMap;
61 DoTextureMapMethodAdd( TSM_ELEM_DATA d, Tint n, cmn_key *k )
63 ((tsm_elem_data)(d.pdata))->ldata = k[0]->data.ldata;
70 DoTextureMapMethodDisplay( TSM_ELEM_DATA d, Tint n, cmn_key *k )
74 key.id = TelDoTextureMap;
75 key.data.ldata = d.ldata;
76 TsmSetAttri( 1, &key );
82 DoTextureMapMethodPrint( TSM_ELEM_DATA data, Tint n, cmn_key *k )
87 fprintf( stdout, "TelDoTextureMap. Value = TEL_SD_SHADING\n" );
91 fprintf( stdout, "TelDoTextureMap. Value = TEL_SD_TEXTURE\n" );
95 fprintf( stdout, "\n" );
102 DoTextureMapMethodInquire( TSM_ELEM_DATA data, Tint n, cmn_key *k )
106 for( i = 0; i < n; i++ )
110 case INQ_GET_SIZE_ID:
112 k[i]->data.ldata = sizeof( Tint );
115 case INQ_GET_CONTENT_ID:
120 c = (tel_inq_content)k[i]->data.pdata;
123 w->idata = data.ldata;