00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026 #include <mln/core/image/image2d.hh>
00027 #include <mln/core/image/image3d.hh>
00028 #include <mln/core/image/dmorph/slice_image.hh>
00029 #include <mln/core/routine/duplicate.hh>
00030
00031 #include <mln/value/rgb8.hh>
00032
00033 #include <mln/io/ppm/load.hh>
00034 #include <mln/io/ppm/save.hh>
00035 #include <mln/io/ppms/load.hh>
00036
00037 #include <mln/data/compare.hh>
00038
00039 #include <mln/util/array.hh>
00040
00041 #include <mln/literal/colors.hh>
00042
00043 #include "tests/data.hh"
00044
00045
00046 int main()
00047 {
00048 using namespace mln;
00049 using value::rgb8;
00050
00051 image2d<rgb8> ima = io::ppm::load<rgb8>(MLN_IMG_DIR "/fly.ppm");
00052 io::ppm::save(ima, "out.ppm");
00053 image2d<rgb8> ima2 = duplicate(ima);
00054
00055
00056 ima2(point2d(0,0)) = literal::green;
00057 io::ppm::save(ima2, "out.ppm");
00058
00059 util::array<std::string> files(2);
00060 files[0] = MLN_IMG_DIR "/fly.ppm";
00061 files[1] = "out.ppm";
00062
00063 image3d<rgb8> ima3d;
00064 io::ppms::load(ima3d, files);
00065
00066 mln_assertion(ima3d.nslices() == 2);
00067 mln_assertion(slice(ima3d, 0) == ima);
00068 mln_assertion(slice(ima3d, 1) == ima2);
00069 }