私はシェルピンスキーのカーペットプログラムを行っており、マトリックスからPGMイメージを作成することができました.最初に # または ' ' .# = 白色 , ' ' = 黒色の char ** マトリックスを作成し、次に作成します黒と白の値が 0 または 255 の int ** ピクセルで、非常に単純です。マトリックスのサイズは、シェルピンスキーのカーペットの反復回数と同じです。アルゴリズムを 3 回反復すると、27 x 27 ピクセルの結果のマトリックス (イメージ) が得られます。結果の画像を拡大するためにこのマトリックスを乗算する方法はありますが、同じ画像を維持するにはどうすればよいですか。各ピクセルのようなもので、出力画像で4ピクセルにしたいのです。C プログラム。
編集: ピクセル値のマトリックスから PGM イメージを印刷するためのコード
void print(char fout[30],int **pixels,int width,int height){
int i,j;
FILE *f = fopen(fout,"w");
fprintf(f,"%s\n","P2");
fprintf(f,"%d %d\n",width,height);
fprintf(f,"%d\n",255);
for(i=height-1;i>=0;i--){
for(j=0;j<width;j++){
fprintf(f,"%d ",pixels[i][j]);
}
fprintf(f,"\n");
}
fclose(f);
}
ピクセル値マトリックスを作成するためのコード
for(i=0;i<size;i++)
for(j=0;j<size;j++)
if(basegrid[i][j] == ' ')
pixels[i][j]=0;
else
pixels[i][j]=255;