예제 #1
0
main(int ac,char *av[])
{
	ImageData *img,*outimg;
	int res;
	int x,y,mx,my;

	if(ac<6) {
		printf("パ??ータが足りません");
		return;
	}


	res=readBMPfile(av[1],&img);
	if(res<0) {
		printf("画?が読めません");
		return;
	}


	outimg=createImage(img->width,img->height,24);
	
	effect(img,outimg,atoi(av[3]),atoi(av[4]),atoi(av[5]));

	writeBMPfile(av[2],outimg);
	disposeImage(img);
	disposeImage(outimg);

}
예제 #2
0
int main(int ac, char *av[])
{
	ImageData *img, *outimg;
	int res;
	int nx, ny;

	if(ac < 3) {
		printf("invalid parameters!");
		return 0;
	}

	res = readBMPfile(av[1], &img);
	if(res < 0) {
		printf("image not found!");
		return 0;
	}

	nx = img->width;
	ny = img->height;

	outimg = createImage(nx, ny, 24);

	transform(img, outimg);

	writeBMPfile(av[2], outimg);
	disposeImage(img);
	disposeImage(outimg);

	return 0;
}
예제 #3
0
main(int ac,char *av[])
{
	ImageData *img,*outimg;
	int res;
	int x,y,mx,my;

	if(ac<3) {
		printf("パラメータが足りません");
		return;
	}

	// ファイルより画像データの読み込み
	res=readBMPfile(av[1],&img);
	if(res<0) {
		printf("画像が読めません");
		return;
	}

	// 結果格納用画像データ作成
	outimg=createImage(img->width,img->height,24);
	
	effect(img,outimg);

	writeBMPfile(av[2],outimg);
	disposeImage(img);
	disposeImage(outimg);

}
예제 #4
0
main(int ac,char *av[])
{
	ImageData *img,*outimg;
	int res;
	int x,y,mx,my;

	if(ac<3) {
		printf("	");
		return;
	}


	res=readBMPfile(av[1],&img);
	if(res<0) {
		printf("Вс(%d)\n",res);
		return;
	}


	outimg=createImage(img->width,img->height,24);
	
	effect(img,outimg,atoi(av[3]));

	writeBMPfile(av[2],outimg);
	disposeImage(img);
	disposeImage(outimg);

}
예제 #5
0
int main(){
	ImageData *img;
	int res;
	int x, y, mx, my;
	Pixel pix1, pix2;

	pix1.r = 255;
	pix1.g = 255;
	pix1.b = 255;
	pix2.r = 0;
	pix2.g = 0;
	pix2.b = 0;
	img = createImage(100, 100, 24);
	for (y = 0; y<100; y++) {
		for (x = 0; x<100; x++) {
			if (x % 2 == y % 2) {
				setPixel(img, x, y, &pix1);
			}
			else {
				setPixel(img, x, y, &pix2);
			}
		}
	}
	writeBMPfile("out.bmp", img);
	disposeImage(img);
}
예제 #6
0
main(int ac,char *av[])
{
	ImageData *img,*outimg;
	//double rad;
	double a,b,c,d,e,f;
	int res;

	if(ac<3+2+6) {
		printf("パ??ータが足りません");
		return;
	}


	res=readBMPfile(av[1],&img);
	if(res<0) {
		printf("画?が読めません");
		return;
	}
	sscanf(av[5],"%lf",&a);
	sscanf(av[6],"%lf",&b);
	sscanf(av[7],"%lf",&c);
	sscanf(av[8],"%lf",&d);
	sscanf(av[9],"%lf",&e);
	sscanf(av[10],"%lf",&f);



	transform(img,&outimg,atoi(av[3]),atoi(av[4]),a,b,c,d,e,f);

	writeBMPfile(av[2],outimg);
	disposeImage(img);
	disposeImage(outimg);

}
예제 #7
0
main(int ac,char *av[])
{
	ImageData *img,*outimg;
	int res;
	int nx,ny;

	if(ac<5) {
		printf("パ??ータが足りません");
		return;
	}


	res=readBMPfile(av[1],&img);
	if(res<0) {
		printf("画?が読めません");
		return;
	}
	nx=atoi(av[3]);
	ny=atoi(av[4]);


	outimg=createImage(nx,ny,24);

	transform(img,outimg);

	writeBMPfile(av[2],outimg);
	disposeImage(img);
	disposeImage(outimg);

}
예제 #8
0
main(int ac,char *av[])
{
    ImageData *img1,*img2;
    Pixel rgb1,rgb2,rgb3;
    int alpha;
    int rr,gg,bb,r1;
    int size;
    int xx,yy,mx,my;
    int i;
    int res;

	if(ac<3) return 4;
	res=readBMPfile(av[1],&img1);
	if(res<0) {
		printf("画像(1)が読めません");
		return;
	}
	res=readBMPfile(av[2],&img2);
	if(res<0) {
		printf("画像(2)が読めません");
		return;
	}
    mx=img2->width;
    my=img2->height;
    if(mx>img1->width) mx=img1->width;
    if(my>img1->height) my=img1->height;
    for(yy=0;yy<my;yy++) {
	    for(xx=0;xx<mx;xx++) {
	        alpha=(xx*255+mx/2)/mx;
	    	getPixel(img1,xx,yy,&rgb1);
	    	getPixel(img2,xx,yy,&rgb2);
	    	rgb3.r=blend(rgb1.r,rgb2.r,alpha);
	    	rgb3.g=blend(rgb1.g,rgb2.g,alpha);
	    	rgb3.b=blend(rgb1.b,rgb2.b,alpha);
	    	setPixel(img1,xx,yy,&rgb3);
	    }
    }
	writeBMPfile(av[3],img1);
	disposeImage(img1);
	disposeImage(img2);
}