Advertisement
Guest User

ppm255.cpp

a guest
Aug 2nd, 2014
205
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.97 KB | None | 0 0
  1. // NOTE: compile with g++ filename.cpp -std=c++11
  2.  
  3. #include <iostream>
  4. #include <cmath>
  5. #define DIM 1024
  6. #define DM1 (DIM-1)
  7. #define _sq(x) ((x)*(x))                           // square
  8. #define _cb(x) abs((x)*(x)*(x))                    // absolute value of cube
  9. #define _cr(x) (unsigned char)(pow((x),1.0/3.0))   // cube root
  10.  
  11. unsigned char red_fn(int i,int j){
  12.     // YOUR CODE HERE
  13. }
  14. unsigned char green_fn(int i,int j){
  15.     // YOUR CODE HERE
  16. }
  17. unsigned char blue_fn(int i,int j){
  18.     // YOUR CODE HERE
  19. }
  20.  
  21. void pixel_write(int,int);
  22. FILE *fp;
  23. int main(){
  24.     fp = fopen("MathPic","wb");
  25.     fprintf(fp, "P6\n%d %d\n255\n", DIM, DIM);
  26.     for(int j=0;j<DIM;j++)
  27.         for(int i=0;i<DIM;i++)
  28.             pixel_write(i,j);
  29.     fclose(fp);
  30.     return 0;
  31. }
  32. void pixel_write(int i, int j){
  33.     static unsigned char color[3];
  34.     color[0] =   red_fn(i,j)&255;
  35.     color[1] = green_fn(i,j)&255;
  36.     color[2] =  blue_fn(i,j)&255;
  37.     fwrite(color, 1, 3, fp);
  38. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement