CMGDK r49-rc2
K:/CMGDKv18/SDK/Include/hgl/2d/VS8Bitmap.H
浏览该文件的文档。
00001 # i f n d e f   H G L _ V S 8 B I T M A P _ I N C L U D E 
00002  
00003  # d e f i n e   H G L _ V S 8 B I T M A P _ I N C L U D E 
00004  
00005  
00006  
00007  # i n c l u d e < h g l / 2 d / V S B a s e . H > 
00008  
00009  # i n c l u d e < s t r i n g . h > 
00010  
00011  n a m e s p a c e   h g l 
00012  
00013  { 
00014  
00015      / * * 
00016  
00017      *   8 MOMOVZbO\U^[s{|
00018  
00019      * / 
00020  
00021      c l a s s   V S 8 B i t m a p : p u b l i c   V S B a s e                                                                                                                                       / / / 8 MOMOVZbO\U^[s{|
00022  
00023      { 
00024  
00025      p r o t e c t e d :     / / Q萹el
00026  
00027  
00028  
00029          v o i d   _ P u t P i x e l ( i n t   x , i n t   y ) { s c a n l i n e [ y ] [ x ] = C o l o r ; } 
00030  
00031          v o i d   _ H L i n e ( i n t   x , i n t   y , i n t   n ) { m e m s e t ( s c a n l i n e [ y ] + x , C o l o r , n ) ; } 
00032  
00033          v o i d   _ V L i n e ( i n t   x , i n t   y , i n t   n ) { w h i l e ( n - - ) s c a n l i n e [ y + + ] [ x ] = C o l o r ; } 
00034  
00035  
00036  
00037          v i r t u a l   v o i d   S p l i t T o R G B ( u i n t 8   * , u i n t 8   * , u i n t 8   * , i n t , i n t , i n t ) = 0 ; 
00038  
00039          v i r t u a l   v o i d   S p l i t T o R G B A ( u i n t 8   * , u i n t 8   * , u i n t 8   * , u i n t 8   * , i n t , i n t , i n t ) = 0 ; 
00040  
00041          
00042  
00043          v i r t u a l   v o i d   D r a w R G B ( u i n t 8   * , u i n t 8   * , u i n t 8   * , i n t , i n t , i n t ) = 0 ; 
00044  
00045          v i r t u a l   v o i d   D r a w R G B A ( u i n t 8   * , u i n t 8   * , u i n t 8   * , u i n t 8   * , i n t , i n t , i n t ) = 0 ; 
00046  
00047  
00048  
00049      p u b l i c : 
00050  
00051  
00052  
00053          u i n t 8   C o l o r ;                                                                                                                                                         / / / < S_MR~Vri_    
00054  
00055  
00056  
00057          u i n t 8   * G e t P i x e l B u f f e r ( ) { r e t u r n   p i x e l _ b u f f e r ; }                                                                                               / / / < a }Q:S
00058  
00059          u i n t 8   * G e t S c a n L i n e ( i n t   r o w ) { r e t u r n   ( r o w < 0 | | r o w > = v s H e i g h t ) ? 0 : s c a n l i n e [ r o w ] ; }                                   / / / < kbc~
00060  
00061  
00062  
00063  	 p u b l i c : 
00064  
00065  
00066  
00067          V S 8 B i t m a p ( ) { C o l o r = 0 ; }                                                                                                                                               / / / < ,g{|g Qpe
00068  
00069          v i r t u a l   ~ V S 8 B i t m a p ( ) { }                                                                                                                                     / / / < ,g{|ggQpe
00070  
00071  
00072  
00073          b o o l   C r e a t e ( i n t   w , i n t   h ) { r e t u r n   C r e a t e B u f f e r ( w , h , 8 ) ; }                                                                               / / / < R^ZbO\U^
00074  
00075          u i n t 8   * G e t P o i n t e r ( i n t   x , i n t   y ) { r e t u r n   G e t S c a n L i n e ( y ) + x ; } 
00076  
00077                  u i n t 8   G e t P o i n t ( i n t   x , i n t   y ) { r e t u r n   G e t S c a n L i n e ( y ) [ x ] ; } 
00078  
00079  
00080  
00081          v i r t u a l   v o i d   S e t C o l o r ( i n t , i n t , i n t , i n t = 2 5 5 ) = 0 ; 
00082  
00083      } ; 
00084  
00085  
00086  
00087      / * * 
00088  
00089      *   8 MOpp^MOVZbO\U^[s{|
00090  
00091      * / 
00092  
00093      c l a s s   V S L u m : p u b l i c   V S 8 B i t m a p                                                                                                                                         / / / 8 MOpp^MOVZbO\U^[s{|
00094  
00095      {   
00096  
00097          v o i d   S p l i t T o R G B ( u i n t 8   * r , u i n t 8   * g , u i n t 8   * b , i n t   x , i n t   y , i n t   n ) 
00098  
00099          { 
00100  
00101              u i n t 8   * s p = G e t P o i n t e r ( x , y ) ; 
00102  
00103  
00104  
00105              m e m c p y ( r , s p , n ) ; 
00106  
00107              m e m c p y ( g , s p , n ) ; 
00108  
00109              m e m c p y ( b , s p , n ) ; 
00110  
00111          } 
00112  
00113  
00114  
00115          v o i d   S p l i t T o R G B A ( u i n t 8   * r , u i n t 8   * g , u i n t 8   * b , u i n t 8   * a , i n t   x , i n t   y , i n t   n ) 
00116  
00117          { 
00118  
00119              m e m s e t ( a , 2 5 5 , n ) ; 
00120  
00121  
00122  
00123              S p l i t T o R G B ( r , g , b , x , y , n ) ; 
00124  
00125          } 
00126  
00127  
00128  
00129          v o i d   D r a w R G B ( u i n t 8   * r , u i n t 8   * g , u i n t 8   * b , i n t   x , i n t   y , i n t   n ) 
00130  
00131          {       
00132  
00133              u i n t 8   * t p = G e t P o i n t e r ( x , y ) ; 
00134  
00135  
00136  
00137              w h i l e ( n - - ) 
00138  
00139                  * t p + + = f l o a t ( * r + + ) * 0 . 2 9 9 + f l o a t ( * g + + ) * 0 . 5 8 7 + f l o a t ( * b + + ) * 0 . 1 1 4 ; 
00140  
00141          } 
00142  
00143  
00144  
00145          v o i d   D r a w R G B A ( u i n t 8   * r , u i n t 8   * g , u i n t 8   * b , u i n t 8   * a , i n t   x , i n t   y , i n t   n ) 
00146  
00147          { 
00148  
00149              D r a w R G B ( r , g , b , x , y , n ) ; 
00150  
00151          } 
00152  
00153  
00154  
00155      p u b l i c : 
00156  
00157  
00158  
00159          V S L u m ( ) { v s C o l o r T y p e = c t L u m i n a n c e ; } 
00160  
00161          v i r t u a l   ~ V S L u m ( ) { } ; 
00162  
00163  
00164  
00165          v o i d   S e t C o l o r ( i n t   r , i n t   g , i n t   b , i n t ) 
00166  
00167          { 
00168  
00169              C o l o r = u i n t 8 ( f l o a t ( r ) * 0 . 2 9 9 + f l o a t ( g ) * 0 . 5 8 7 + f l o a t ( b ) * 0 . 1 1 4 ) ; 
00170  
00171          } 
00172  
00173      } ; 
00174  
00175  
00176  
00177      / * * 
00178  
00179      *   8 MOA l p h a MOVZbO\U^[s{|
00180  
00181      * / 
00182  
00183      c l a s s   V S A l p h a : p u b l i c   V S 8 B i t m a p                                                                                                                                     / / 8 MOA L P H A MOVZbO\U^[s{|
00184  
00185      {                         
00186  
00187          v o i d   S p l i t T o R G B ( u i n t 8   * , u i n t 8   * , u i n t 8   * , i n t , i n t , i n t ) 
00188  
00189          { 
00190  
00191          } 
00192  
00193  
00194  
00195          v o i d   S p l i t T o R G B A ( u i n t 8   * , u i n t 8   * , u i n t 8   * , u i n t 8   * a , i n t   x , i n t   y , i n t   n ) 
00196  
00197          {       
00198  
00199              u i n t 8   * s p = G e t P o i n t e r ( x , y ) ; 
00200  
00201  
00202  
00203              m e m c p y ( a , s p , n ) ;                   
00204  
00205          } 
00206  
00207  
00208  
00209          v o i d   D r a w R G B ( u i n t 8   * , u i n t 8   * , u i n t 8   * , i n t   x , i n t   y , i n t   n ) 
00210  
00211          { 
00212  
00213          } 
00214  
00215  
00216  
00217          v o i d   D r a w R G B A ( u i n t 8   * , u i n t 8   * , u i n t 8   * , u i n t 8   * a , i n t   x , i n t   y , i n t   n ) 
00218  
00219          {                             
00220  
00221              u i n t 8   * t p = G e t P o i n t e r ( x , y ) ; 
00222  
00223  
00224  
00225              m e m c p y ( t p , a , n ) ; 
00226  
00227          }         
00228  
00229  
00230  
00231      p u b l i c : 
00232  
00233  
00234  
00235          V S A l p h a ( ) { v s C o l o r T y p e = c t A l p h a ; } 
00236  
00237          v i r t u a l   ~ V S A l p h a ( ) { } ; 
00238  
00239  
00240  
00241          v o i d   S e t C o l o r ( i n t , i n t , i n t , i n t   a ) 
00242  
00243          { 
00244  
00245                      C o l o r = a ; 
00246  
00247          } 
00248  
00249      } ; 
00250  
00251  } / / n a m e s p a c e   h g l 
00252  
00253  # e n d i f / / H G L _ V S 8 B I T M A P _ I N C L U D E 
00254  
00255  
 全部  名字空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义