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/image3d.hh>
00027
00028 #include <mln/debug/iota.hh>
00029
00030 int main()
00031 {
00032 using namespace mln;
00033
00034 {
00035 box3d b(point3d(1,2, 1), point3d(2,4, 3));
00036 image3d<int> ima(b, 2);
00037
00038 mln_pixter_(image3d<int>) p(ima);
00039 for_all(p)
00040 std::cout << p << std::endl;
00041 }
00042
00043 {
00044 box3d b(point3d(1,2, 1), point3d(3,6, 3));
00045 image3d<int> ima(b, 1);
00046
00047 debug::iota(ima);
00048
00049 {
00050 mln_fwd_piter_(image3d<int>) pi(ima.domain());
00051 mln_fwd_pixter_(image3d<int>) p(ima);
00052 pi.start();
00053 p.start();
00054 unsigned i = 0;
00055 while (pi.is_valid())
00056 {
00057 mln_assertion(ima(pi) == p.val());
00058 pi.next();
00059 p.next();
00060 ++i;
00061 }
00062 mln_assertion(i == b.nsites());
00063 }
00064
00065 {
00066 mln_bkd_piter_(image3d<int>) pi(ima.domain());
00067 mln_bkd_pixter_(image3d<int>) p(ima);
00068 pi.start();
00069 p.start();
00070 unsigned i = 0;
00071 while (pi.is_valid())
00072 {
00073 mln_assertion(ima(pi) == p.val());
00074 pi.next();
00075 p.next();
00076 ++i;
00077 }
00078 mln_assertion(i == b.nsites());
00079 }
00080 }
00081 }