27 #ifndef SCRIBO_DEBUG_SAVE_TABLE_IMAGE_HH
28 # define SCRIBO_DEBUG_SAVE_TABLE_IMAGE_HH
36 # include <mln/core/concept/image.hh>
37 # include <mln/core/image/image2d.hh>
38 # include <mln/data/fill.hh>
39 # include <mln/data/convert.hh>
40 # include <mln/util/array.hh>
41 # include <mln/util/couple.hh>
42 # include <mln/value/rgb8.hh>
43 # include <mln/io/ppm/save.hh>
45 # include <scribo/draw/bounding_boxes.hh>
65 const value::rgb8& bbox_color,
79 const value::rgb8& bg_color,
80 const value::rgb8& bbox_color,
84 # ifndef MLN_INCLUDE_ONLY
92 const value::rgb8& bbox_color,
95 mln_trace(
"scribo::debug::save_table_image");
97 const I& input =
exact(input_);
98 mln_precondition(input.is_valid());
101 draw::bounding_boxes(out2, tableboxes.first(), bbox_color);
102 draw::bounding_boxes(out2, tableboxes.second(), bbox_color);
103 io::ppm::
save(out2, filename);
108 template <typename S>
111 mln::util::couple<mln::util::array<
box<mln_site(S)> >,
112 mln::util::array<
box<mln_site(S)> > > tableboxes,
113 const
value::rgb8& bg_color,
114 const
value::rgb8& bbox_color,
115 const std::
string& filename)
117 mln_trace(
"scribo::debug::save_table_image");
118 const S& input_domain =
exact(input_domain_);
119 mln_precondition(input_domain.is_valid());
129 # endif // ! MLN_INCLUDE_ONLY
136 #endif // ! SCRIBO_DEBUG_SAVE_TABLE_IMAGE_HH