Changeset 2754
- Timestamp:
- Aug 23, 2008, 11:11:15 AM (14 years ago)
- Location:
- libpipi/trunk/pipi
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
libpipi/trunk/pipi/combine/rgb.c
r2753 r2754 61 61 } 62 62 63 pipi_image_t *pipi_red(pipi_image_t *src) 64 { 65 pipi_image_t *dst; 66 pipi_pixels_t *srcp, *dstp; 67 float *srcdata, *dstdata; 68 int x, y, w, h; 69 70 w = src->w; 71 h = src->h; 72 73 dst = pipi_new(w, h); 74 dstp = pipi_getpixels(dst, PIPI_PIXELS_Y_F); 75 dstdata = (float *)dstp->pixels; 76 77 srcp = pipi_getpixels(src, PIPI_PIXELS_RGBA_F); 78 srcdata = (float *)srcp->pixels; 79 80 for(y = 0; y < h; y++) 81 for(x = 0; x < w; x++) 82 dstdata[y * w + x] = srcdata[4 * (y * w + x)]; 83 84 return dst; 85 } 86 87 pipi_image_t *pipi_green(pipi_image_t *src) 88 { 89 pipi_image_t *dst; 90 pipi_pixels_t *srcp, *dstp; 91 float *srcdata, *dstdata; 92 int x, y, w, h; 93 94 w = src->w; 95 h = src->h; 96 97 dst = pipi_new(w, h); 98 dstp = pipi_getpixels(dst, PIPI_PIXELS_Y_F); 99 dstdata = (float *)dstp->pixels; 100 101 srcp = pipi_getpixels(src, PIPI_PIXELS_RGBA_F); 102 srcdata = (float *)srcp->pixels; 103 104 for(y = 0; y < h; y++) 105 for(x = 0; x < w; x++) 106 dstdata[y * w + x] = srcdata[4 * (y * w + x) + 1]; 107 108 return dst; 109 } 110 111 pipi_image_t *pipi_blue(pipi_image_t *src) 112 { 113 pipi_image_t *dst; 114 pipi_pixels_t *srcp, *dstp; 115 float *srcdata, *dstdata; 116 int x, y, w, h; 117 118 w = src->w; 119 h = src->h; 120 121 dst = pipi_new(w, h); 122 dstp = pipi_getpixels(dst, PIPI_PIXELS_Y_F); 123 dstdata = (float *)dstp->pixels; 124 125 srcp = pipi_getpixels(src, PIPI_PIXELS_RGBA_F); 126 srcdata = (float *)srcp->pixels; 127 128 for(y = 0; y < h; y++) 129 for(x = 0; x < w; x++) 130 dstdata[y * w + x] = srcdata[4 * (y * w + x) + 2]; 131 132 return dst; 133 } 134 -
libpipi/trunk/pipi/pipi.h
r2753 r2754 107 107 108 108 extern pipi_image_t *pipi_rgb(pipi_image_t *, pipi_image_t *, pipi_image_t *); 109 extern pipi_image_t *pipi_red(pipi_image_t *); 110 extern pipi_image_t *pipi_green(pipi_image_t *); 111 extern pipi_image_t *pipi_blue(pipi_image_t *); 109 112 extern pipi_image_t *pipi_mean(pipi_image_t *, pipi_image_t *); 110 113 extern pipi_image_t *pipi_min(pipi_image_t *, pipi_image_t *);
Note: See TracChangeset
for help on using the changeset viewer.