Guest

Iphone OpenGL ES Reuse or draw once Texture scene

By: a guest on Feb 23rd, 2012  |  syntax: None  |  size: 2.16 KB  |  hits: 14  |  expires: Never
download  |  raw  |  embed  |  report abuse
Copied
  1. glLoadIdentity();    // Added line
  2.  
  3. glEnableClientState(GL_VERTEX_ARRAY);
  4.  
  5. glEnableClientState(GL_TEXTURE_COORD_ARRAY);
  6. glEnable(GL_TEXTURE_2D);
  7. glEnable(GL_BLEND);
  8. glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
  9.  
  10. NumberFormatter *lFormater = [[NumberFormatter alloc] init];
  11. int i = 0;
  12. for (NSNumber *lNumber in mColXLabelCoord) {
  13.     NSNumber *lUnformated = [NSNumber numberWithInteger:[[NSString stringWithString:[mColYLabelsArray objectAtIndex:i]] integerValue]];
  14.  
  15.     NSString *lFormated = [NSString stringWithString:[lFormater stringFromNumber:lUnformated withMask:[[mGraphArray objectAtIndex:0] mGraphMask]]];
  16.  
  17.     Texture2D* lWord= [[Texture2D alloc] initWithString:lFormated dimensions:CGSizeMake(40, 15) alignment:UITextAlignmentLeft fontName:@"Helvetica" fontSize:13];
  18.  
  19.     glColor4f(RedFromRGB(0xFFFFFF), GreenFromRGB(0xFFFFFF), BlueFromRGB(0xFFFFFF), 1.0);            
  20.     [lWord drawInRect:CGRectMake([lNumber floatValue]+2, 470,40,15) rotation:-90];
  21.  
  22.     [lWord release];
  23.  
  24.  
  25.     i++;        
  26. }  
  27. [lFormater release];
  28.  
  29. i = [mColYCoord count]-1;
  30. for (NSNumber *lNumber in mColYCoord) {    
  31.     Texture2D* lWord= [[Texture2D alloc] initWithString:[NSString stringWithFormat:((GraphValue*)[mGraphValuesArray objectAtIndex:i]).mGraphValueXLabel,[lNumber floatValue]]
  32.                                              dimensions:CGSizeMake(40, 15)
  33.                                               alignment:UITextAlignmentCenter
  34.                                                fontName:@"Helvetica" fontSize:12];
  35.  
  36.     if ([mColYCoord count] < kOptimalLabelNumber) {
  37.         glColor4f(RedFromRGB(0xFFFFFF), GreenFromRGB(0xFFFFFF), BlueFromRGB(0xFFFFFF), 1.0);            
  38.         [lWord drawInRect:CGRectMake(10, [lNumber floatValue]+15, 40, 15) rotation:-90];            
  39.     }else {
  40.         glColor4f(RedFromRGB(0xFFFFFF), GreenFromRGB(0xFFFFFF), BlueFromRGB(0xFFFFFF), 1.0);            
  41.         [lWord drawInRect:CGRectMake(2, [lNumber floatValue]+5, 40, 15) rotation:-30];          
  42.  
  43.     }
  44.     [lWord release];
  45.     i--;
  46. }
  47.  
  48. glBlendFunc(GL_ONE, GL_ONE_MINUS_SRC_ALPHA);
  49. glDisable(GL_BLEND);
  50. glDisable(GL_TEXTURE_2D);
  51. glDisableClientState(GL_TEXTURE_COORD_ARRAY);
  52.  
  53. glDisableClientState(GL_VERTEX_ARRAY);