Changeset 40558
- Timestamp:
- Nov 2, 2018, 10:48:14 AM (8 years ago)
- Location:
- trunk/Ohana/src
- Files:
-
- 8 edited
-
kapa2/include/structures.h (modified) (1 diff)
-
kapa2/src/bDrawFrame.c (modified) (2 diffs)
-
kapa2/src/bDrawIt.c (modified) (1 diff)
-
kapa2/src/bDrawObjects.c (modified) (2 diffs)
-
kapa2/src/bDrawOverlay.c (modified) (2 diffs)
-
libkapa/include/kapa.h (modified) (2 diffs)
-
libkapa/src/bDrawFuncs.c (modified) (6 diffs)
-
libkapa/src/bDrawRotFont.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/Ohana/src/kapa2/include/structures.h
r40501 r40558 137 137 double lweight, size; 138 138 double x0, x1, y0, y1; /* limits for this object */ 139 float alpha; 139 140 } Gobjects; 140 141 -
trunk/Ohana/src/kapa2/src/bDrawFrame.c
r40118 r40558 37 37 // P *= (1 + 0.25*lweight); 38 38 39 bDrawSetStyle (buffer, color, lweight, 0 );39 bDrawSetStyle (buffer, color, lweight, 0, 1.0); 40 40 // function about sets color and weight 41 41 // bDrawRotTextInit does not exist … … 53 53 // should the font weight stay the same? 54 54 // XXX probably not needed now: 55 // bDrawSetStyle (buffer, color, lweight, 0 );55 // bDrawSetStyle (buffer, color, lweight, 0, 1.0); 56 56 } 57 57 FREE (ticks); -
trunk/Ohana/src/kapa2/src/bDrawIt.c
r38553 r40558 16 16 // the dx,dy size. 17 17 buffer = bDrawBufferCreate (graphic->dxwin, graphic->dywin, Nbyte, palette, Npalette); 18 bDrawSetStyle (buffer, black, 0, 0 );18 bDrawSetStyle (buffer, black, 0, 0, 1.0); 19 19 20 20 // reset the sizes for all sections -
trunk/Ohana/src/kapa2/src/bDrawObjects.c
r40165 r40558 23 23 } 24 24 bDrawColor black = KapaColorByName ("black"); 25 bDrawSetStyle (buffer, black, 0, 0 );25 bDrawSetStyle (buffer, black, 0, 0, 1.0); 26 26 return (TRUE); 27 27 } … … 30 30 31 31 int weight = MAX (0, MIN (10, object->lweight)); 32 bDrawSetStyle (buffer, object->color, weight, object->ltype );32 bDrawSetStyle (buffer, object->color, weight, object->ltype, 1.0); 33 33 34 34 switch (object->style) { -
trunk/Ohana/src/kapa2/src/bDrawOverlay.c
r39457 r40558 14 14 /* translate color to bDrawColors : image[0].overlay[N].color */ 15 15 color = KapaColorByName (name[N]); 16 bDrawSetStyle (buffer, color, 0, 0 );16 bDrawSetStyle (buffer, color, 0, 0, 1.0); 17 17 18 18 expand = 1.0; … … 99 99 100 100 /* translate color to bDrawColors : image[0].overlay[N].color */ 101 bDrawSetStyle (buffer, color, 0, 0 );101 bDrawSetStyle (buffer, color, 0, 0, 1.0); 102 102 } 103 103 -
trunk/Ohana/src/libkapa/include/kapa.h
r40517 r40558 177 177 int bWeight; 178 178 int bType; 179 float alpha; 179 180 bDrawColor bColor; 180 181 bDrawColor bColor_R; … … 293 294 void bDrawSetBuffer (bDrawBuffer *buffer); 294 295 void bDrawSetColor (bDrawBuffer *buffer, bDrawColor color); 295 void bDrawSetStyle (bDrawBuffer *buffer, bDrawColor color, int lw, int lt );296 void bDrawSetStyle (bDrawBuffer *buffer, bDrawColor color, int lw, int lt, float alpha); 296 297 void bDrawPoint (bDrawBuffer *buffer, int x, int y); 297 298 void bDrawPointf (bDrawBuffer *buffer, float x, float y); -
trunk/Ohana/src/libkapa/src/bDrawFuncs.c
r40165 r40558 86 86 } 87 87 88 void bDrawSetStyle (bDrawBuffer *buffer, bDrawColor color, int lw, int lt ) {88 void bDrawSetStyle (bDrawBuffer *buffer, bDrawColor color, int lw, int lt, float alpha) { 89 89 bDrawSetColor (buffer, color); 90 90 91 91 buffer->bWeight = lw; 92 92 buffer->bType = lt; 93 return; 94 } 93 buffer->alpha = alpha; 94 return; 95 } 96 97 // if values were from 0.0 = white to 1.0 = black, the math would be: 98 // out = (1 - alpha) * in + alpha * new 99 // but values go from 0.0 = black to 1.0 = white 100 // rin = 1 - in, rnew = 1 - new 101 // rout = (1 - alpha) * (1 - in) + alpha (1 - new) 102 // out = 1 - ((1 - alpha) * (1 - in) + alpha (1 - new)) 103 // out = 1 - ((1 - in - alpha + in * alpha) + alpha - alpha * new) 104 // out = 1 - ((1 - in + in*alpha - alpha*new)) 105 // out = in - in*alpha + alpha*new 95 106 96 107 // draw a point in the current color 108 // adding in an alpha-channel: out = (1 - alpha) * in + alpha * new 109 // bcolor_R,G,B are values in the range 0x00 - 0xff 97 110 void bDrawPoint (bDrawBuffer *buffer, int x, int y) { 111 112 float alpha = buffer->alpha; 113 float beta = (1.0 - alpha); 98 114 99 115 // myAssert(buffer[0].Nbyte == 1, "invalid depth"); … … 105 121 buffer[0].pixels[y][x] = buffer->bColor; 106 122 } else { 107 buffer[0].pixels[y][3*x+0] = buffer->bColor_R; 108 buffer[0].pixels[y][3*x+1] = buffer->bColor_G; 109 buffer[0].pixels[y][3*x+2] = buffer->bColor_B; 123 // buffer[0].pixels[y][3*x+0] = buffer->bColor_R; 124 // buffer[0].pixels[y][3*x+1] = buffer->bColor_G; 125 // buffer[0].pixels[y][3*x+2] = buffer->bColor_B; 126 buffer[0].pixels[y][3*x+0] = MAX (0x00, MIN(0xff, beta * buffer[0].pixels[y][3*x+0] + alpha * buffer->bColor_R)); 127 buffer[0].pixels[y][3*x+1] = MAX (0x00, MIN(0xff, beta * buffer[0].pixels[y][3*x+1] + alpha * buffer->bColor_G)); 128 buffer[0].pixels[y][3*x+2] = MAX (0x00, MIN(0xff, beta * buffer[0].pixels[y][3*x+2] + alpha * buffer->bColor_B)); 110 129 } 111 130 return; … … 268 287 if (Y >= buffer[0].Ny) return; 269 288 289 float alpha = buffer->alpha; 290 float beta = (1.0 - alpha); 291 270 292 for (i = X1; i < X2; i++) { 271 293 if (i < 0) continue; … … 274 296 buffer[0].pixels[Y][i] = buffer->bColor; 275 297 } else { 276 buffer[0].pixels[Y][3*i+0] = buffer->bColor_R; 277 buffer[0].pixels[Y][3*i+1] = buffer->bColor_G; 278 buffer[0].pixels[Y][3*i+2] = buffer->bColor_B; 298 buffer[0].pixels[Y][3*i+0] = MAX (0x00, MIN(0xff, beta * buffer[0].pixels[Y][3*i+0] + alpha * buffer->bColor_R)); 299 buffer[0].pixels[Y][3*i+1] = MAX (0x00, MIN(0xff, beta * buffer[0].pixels[Y][3*i+1] + alpha * buffer->bColor_G)); 300 buffer[0].pixels[Y][3*i+2] = MAX (0x00, MIN(0xff, beta * buffer[0].pixels[Y][3*i+2] + alpha * buffer->bColor_B)); 301 // buffer[0].pixels[Y][3*i+0] = buffer->bColor_R; 302 // buffer[0].pixels[Y][3*i+1] = buffer->bColor_G; 303 // buffer[0].pixels[Y][3*i+2] = buffer->bColor_B; 279 304 } 280 305 } … … 288 313 if (X < 0) return; 289 314 if (X >= buffer[0].Nx) return; 315 316 float alpha = buffer->alpha; 317 float beta = (1.0 - alpha); 290 318 291 319 for (i = Y1; i < Y2; i++) { … … 295 323 buffer[0].pixels[i][X] = buffer->bColor; 296 324 } else { 297 buffer[0].pixels[i][3*X+0] = buffer->bColor_R; 298 buffer[0].pixels[i][3*X+1] = buffer->bColor_G; 299 buffer[0].pixels[i][3*X+2] = buffer->bColor_B; 325 buffer[0].pixels[i][3*X+0] = MAX (0x00, MIN(0xff, beta * buffer[0].pixels[i][3*X+0] + alpha * buffer->bColor_R)); 326 buffer[0].pixels[i][3*X+1] = MAX (0x00, MIN(0xff, beta * buffer[0].pixels[i][3*X+1] + alpha * buffer->bColor_G)); 327 buffer[0].pixels[i][3*X+2] = MAX (0x00, MIN(0xff, beta * buffer[0].pixels[i][3*X+2] + alpha * buffer->bColor_B)); 328 // buffer[0].pixels[i][3*X+0] = buffer->bColor_R; 329 // buffer[0].pixels[i][3*X+1] = buffer->bColor_G; 330 // buffer[0].pixels[i][3*X+2] = buffer->bColor_B; 300 331 } 301 332 } -
trunk/Ohana/src/libkapa/src/bDrawRotFont.c
r39457 r40558 189 189 X2 = MAX (X, X2); 190 190 191 // bDrawSetStyle (color, 0, 0);192 191 if (scale > 1) { 193 192 for (i = X1; i <= X2; i+=1) { … … 215 214 } 216 215 } 217 // bDrawSetStyle (black, 0, 0);218 216 return (TRUE); 219 217 }
Note:
See TracChangeset
for help on using the changeset viewer.
