2023-07-01 11:58:00 -04:00
|
|
|
:- module(bitmapIO, [
|
2026-04-30 12:34:36 -04:00
|
|
|
write_ppm_p6/2]).
|
2023-07-01 11:58:00 -04:00
|
|
|
|
|
|
|
|
:- use_module(library(lists)).
|
|
|
|
|
|
|
|
|
|
%write_ppm_p6(File,Bitmap)
|
|
|
|
|
write_ppm_p6(Filename,[[X,Y],Pixels]):-
|
2026-04-30 12:34:36 -04:00
|
|
|
open(Filename,write,Output,[encoding(octet)]),
|
|
|
|
|
%write p6 header
|
|
|
|
|
writeln(Output, 'P6'),
|
|
|
|
|
atomic_list_concat([X, Y], ' ', Dimensions),
|
|
|
|
|
writeln(Output, Dimensions),
|
|
|
|
|
writeln(Output, '255'),
|
|
|
|
|
%write bytes
|
|
|
|
|
maplist(maplist(maplist(put_byte(Output))),Pixels),
|
|
|
|
|
close(Output).
|