示例#1
0
文件: image.hpp 项目: kif/FLIF
//    ColorVal_intern& operator()(int p, int z, int rz, int cz) {
//        int r = rz*zoom_rowpixelsize(z);
//        int c = cz*zoom_colpixelsize(z);
//        return planes[p](r,c);
//    }
    void set(int p, int z, uint32_t rz, uint32_t cz, ColorVal x) {
//        return operator()(p,rz*zoom_rowpixelsize(z),cz*zoom_colpixelsize(z));
        uint32_t r = rz*zoom_rowpixelsize(z);
        uint32_t c = cz*zoom_colpixelsize(z);
//        if (p==0 && r>= 0 && c>=0 && r<width &&c<height) fprintf(stdout,"Writing to pixel at zoomlevel %i, position %i,%i, actual position %i,%i\n",z,rz,cz,rz*zoom_rowpixelsize(z),cz*zoom_colpixelsize(z));
        set(p,r,c,x);
    }
示例#2
0
文件: image.hpp 项目: kif/FLIF
    ColorVal operator()(int p, int z, uint32_t rz, uint32_t cz) const {
//        if (p==0) fprintf(stdout,"Reading pixel at zoomlevel %i, position %i,%i, actual position %i,%i\n",z,rz,cz,rz*zoom_rowpixelsize(z),cz*zoom_colpixelsize(z));
//        return operator()(p,rz*zoom_rowpixelsize(z),cz*zoom_colpixelsize(z));
        uint32_t r = rz*zoom_rowpixelsize(z);
        uint32_t c = cz*zoom_colpixelsize(z);
//        if (p==0 && r>= 0 && c>=0 && r<width &&c<height) fprintf(stdout,"Reading pixel at zoomlevel %i, position %i,%i, actual position %i,%i\n",z,rz,cz,rz*zoom_rowpixelsize(z),cz*zoom_colpixelsize(z));
        return operator()(p,r,c);
    }
示例#3
0
文件: image.hpp 项目: kif/FLIF
 int zooms() const {
     int z = 0;
     while (zoom_rowpixelsize(z) < rows() || zoom_colpixelsize(z) < cols()) z++;
     return z;
 }
示例#4
0
文件: image.hpp 项目: kif/FLIF
 uint32_t rows(int zoomlevel) const {
     return 1+(rows()-1)/zoom_rowpixelsize(zoomlevel);
 }
示例#5
0
文件: image.hpp 项目: png85/FLIF
 ColorVal get(const int z, const uint32_t r, const uint32_t c) const {
     return get(r*zoom_rowpixelsize(z),c*zoom_colpixelsize(z));
 }
示例#6
0
文件: image.hpp 项目: png85/FLIF
 void set(const int z, const uint32_t r, const uint32_t c, const ColorVal x) {
     set(r*zoom_rowpixelsize(z),c*zoom_colpixelsize(z),x);
 }