home *** CD-ROM | disk | FTP | other *** search
/ Big Green CD 8 / BGCD_8_Dev.iso / NEXTSTEP / UNIX / Web / Utilities / wwwcount-2.3 / combine / negate.c < prev    next >
Encoding:
C/C++ Source or Header  |  1995-11-19  |  827 b   |  50 lines

  1. /*
  2. ** from ImageMagick Version ?
  3. */
  4.  
  5. #include "combine.h"
  6.  
  7. void NegateImage(image)
  8. Image
  9.   *image;
  10. {
  11.   register int
  12.     i;
  13.  
  14.   register Runlength
  15.     *p;
  16.  
  17.   switch (image->class)
  18.   {
  19.     case DirectClass:
  20.     {
  21.       /*
  22.         Negate DirectClass packets.
  23.       */
  24.       p=image->pixels;
  25.       for (i=0; i < image->packets; i++)
  26.       {
  27.         p->red=(~p->red);
  28.         p->green=(~p->green);
  29.         p->blue=(~p->blue);
  30.         p++;
  31.       }
  32.       break;
  33.     }
  34.     case PseudoClass:
  35.     {
  36.       /*
  37.         Negate PseudoClass packets.
  38.       */
  39.       for (i=0; i < image->colors; i++)
  40.       {
  41.         image->colormap[i].red=(~image->colormap[i].red);
  42.         image->colormap[i].green=(~image->colormap[i].green);
  43.         image->colormap[i].blue=(~image->colormap[i].blue);
  44.       }
  45.       SyncImage(image);
  46.       break;
  47.     }
  48.   }
  49. }
  50.