- 12 Aug, 2008 1 commit
-
-
Roland Levillain authored
* mln/core/complex_psite.hh (operator<<(std::ostream&, const complex_psite<D, P>&)): New operator. * tests/core/complex_image.cc: ...here. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2144 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 11 Aug, 2008 9 commits
-
-
Roland Levillain authored
* mln/core/complex_image.hh: New. * mln/trait/ch_value.hh (mln::trait::impl::ch_value_<M<D, tag::psite_<P>, tag::value_<T> >, V>): New specialization for mln::complex_image<D, P, T>. * mln/core/p_complex.hh (mln::p_complex<D, P>::cplx): New mutable accessor. * mln/core/complex_psite.hh (mln::complex_psite<D, P>::n) (mln::complex_psite<D, P>::face_id): New accessors. * mln/core/face.hh (any_face_handle<D>::any_face_handle(const face_handle<N, D>&)): New ctor. (any_face_handle<D>::any_face_handle(const any_face_handle<D>&)): Don't forget to initialize n_. (any_face_handle<D>::any_face_handle(complex<D>&, unsigned, unsigned)): Ensure N is compatible with D. * tests/core/complex_image.cc: Exercise mln::complex_image. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2143 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mln/core/graph_image.hh: s/g/pg/. * mln/core/line_graph_image.hh: s/g/plg/. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2142 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mln/canvas/labeling.hh (mln::canvas::labeling<F>::pass_1()) * mln/morpho/meyer_wst.hh (mln::morpho::meyer_wst<I, N, L>): Add braces around inner `if' to avoid (visual) ambiguity w.r.t. a dangling `else'. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2141 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2140 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* morpho.ixx: Wrap mln::morpho::closing, mln::morpho::opening mln::morpho::gradient_internal, mln::morpho::gradient_external, mln::morpho::opening_area. (instantiate_closing, instantiate_opening) (instantiate_gradient_internal, instantiate_gradient_external) (instantiate_opening_area): New macros. Use them... (instantiate_morpho): ...here. Deduce the previous `L' parameter from `mln_value(I)', and remove it from the list of parameters of the macro. * image2d_int_u8.i: Adjust. * image2d_int.i: Use macros instantiate_erosion and instantiate_dilation. * python/data.py: New. * python/test.py: Rename as... * python/image2d-misc.py: ...this. * python/lena.py: Rename as... * python/morpho-fun.py: ...this. Exercise more morphological filters. Move WST-based segmentation tests... * python/morpho-segm.py: ...here (new test). * python/swilena.py: Add documentation header. * python/Makefile.am (python_PYTHON): Add data.py. (TESTS): Add morpho-segm.py. s/test.py/image2d-misc.py/ s/lena.py/morpho-fun.py/ git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2139 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* morpho.ixx (instantiate_dilation, instantiate_erosion) (instantiate_gradient, instantiate_closing_area) (instantiate_meyer_wst): New SWIG macros. (instantiate_morpho): Likewise. Use it... * image2d_int_u8.i: ...here, to simplify the wrapping of morpho routines. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2138 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* morpho.ixx: Wrap mln::morpho::gradient and mln::morpho::closing_area. * image2d_int_u8.i (meyer_wst): Rename as... (meyer_wst32): ...this. (gradient, closing_area, meyer_wst): New wrappings. * python/lena.py: Exercise gradient and area closing (along with Meyer's watershed transform). git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2137 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* neighb2d.i, window2d.i: Wrap the classes directly, instead of using simplified, inlined declarations. * box2d.i: Aesthetic changes. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2136 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* box2d.i, dpoint2d.i: Remove dead code. * image2d.ixx: Likewise. (instantiate_image2d): Indent. * intp.ixx: Add missing `module' statement. * fill.ixx: Use macro mln_value() in fill()'s signature, as in the original one. * ch_value.ixx (ch_value< image2d< int_u<8> >, int_u<32> >): Turn into... (ch_value< image2d< int_u<8> >, V >): ...this. Adjust documentation. * image2d_int.i: Add a FIXME. * point2d.i: Aesthetic change. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2135 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 09 Aug, 2008 4 commits
-
-
Roland Levillain authored
* box2d.i: New. * image2d.ixx: Import dpoint2d.i and box2d.i. Wrap mln::image2d directly, instead of using a simplified, inlined declaration. (instantiate_image2d): New macro. Use it... * image2d_int.i, image2d_int_u8.i: ...here. * Makefile.am (wrappers): Add box2d.i. * python/swilena.py: Import box2d. * python/Makefile.am: Build module box2d. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2134 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
names to help swig wrap these types. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2133 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* concrete.ixx: New. Use it... * morpho.ixx: ...here. Wrap mln::morpho::dilation.hh and mln::morpho::erosion directly, instead of using a simplified declaration (previously used to circumvent the lack of support of mln_concrete). Fix documentation. * image2d_int.i, image2d_int_u8.i: Instantiate mln::trait::concrete to have swig understand the return types of mln::morpho::dilation.hh and mln::morpho::erosion. * ch_value.ixx: Adjust documentation. * Makefile.am (meta_wrappers, wrappers): New variables. Use them... (EXTRA_DIST): ...here. (meta_wrappers): Add concrete.ixx. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2132 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
argument. * mln/morpho/dilation.hh (mln::morpho::dilation<I, O>) (mln::morpho::dilation<I, W, O>): Remove. (mln::morpho::dilation<I>): Adjust. Disable. (mln::morpho::dilation<I, W>): Adjust. * tests/morpho/dilation.cc: Adjust test. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2131 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 08 Aug, 2008 2 commits
-
-
Roland Levillain authored
* int_u.ixx: New. Use it... * int_u8.i: ...here. Actually instantiate and wrap int_u8. * int_u32.i: New. * ch_value.ixx: New. Use it... * morpho.ixx: ...here. Wrap meyer_wst for image2d<int_u8>. * neighb2d.i: New. * image2d_int_u8.i: Add support for meyer_wst. * window2d.i: Aesthetic changes. * Makefile.am (EXTRA_DIST): Add ch_value.ixx, int_u.ixx, int_u32.i and neighb2d.i. * python/lena.py: Exercise meyer_wst. * python/Makefile.am: Handle modules int_u32 and neighb2d. * python/swilena.py: Import neighb2d, int_u8 and int_u32. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2130 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mln/value/graylevel.hh, mln/value/graylevel_f.hh, * mln/value/int_s.hh, mln/value/int_u.hh, * mln/value/rgb.hh: Use fully qualified type names to help swig wrap typedefs (later). * mln/value/int_s8.hh, mln/value/int_s16.hh, * mln/value/int_u8.hh, mln/value/int_u16.hh: Typos in comments. * mln/value/int_s32.hh, mln/value/int_u32.hh: New files. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2129 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 07 Aug, 2008 4 commits
-
-
Roland Levillain authored
faces-related entities. * mln/core/complex_psite.hh: Rename as... * mln/core/faces_psite.hh: ...this. (mln::complex_psite<P, N, D>): Turn into... (mln::faces_psite<N, D, P>): ...this. * mln/core/p_complex.hh: Rename as... * mln/core/p_faces.hh: ...this. (mln::p_complex<P, N, D>): Turn into... (mln::p_faces<N, D, P>): ...this. * mln/core/complex_psite.hh, mln/core/p_complex.hh: New. * tests/core/complex.cc: Exercise the variants of mln::complex<D>::nfaces(). * tests/core/p_complex.cc: Rename as... * tests/core/complex_image.cc: ...this. Exercise mln::p_complex, mln::complex_psite, and mln::faces_psite. * tests/core/Makefile.am (check_PROGRAMS): s/p_complex/complex_image/. (p_complex_SOURCES): Likewise. Rename as... (complex_image_SOURCES): ...this. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2128 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mln/core/face.hh (mln::any_face_handle<D>): New class. (operator==(const any_face_handle<D>&, const any_face_handle<D>&)) (operator< (const any_face_handle<D>&, const any_face_handle<D>&)): New. (mln::face_handle<N, D>::face_handle): Use std::numeric_limits instead of UINT_MAX. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2127 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mln/core/complex.hh (mln::complex<D>::nfaces()) (mln::complex<D>::nfaces(unsigned)): New methods. (mln::complex<D>::fold_left_) (mln::complex<D>::apply_if_dim_matches_) (mln::internal::faces_set_mixin<N, D>::fold_left_): (mln::internal::faces_set_mixin<N, D>::apply_if_dim_matches_): New methods. (mln::internal::add_size) (mln::internal::get_size): New meta-functors. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2126 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
return types. * mln/util/tracked_ptr.hh (mln::util::tracked_ptr<T>::operator->() const) (mln::util::tracked_ptr<T>::operator->()): Remove useless `const' qualifier on return type. * mln/value/builtin/floatings.hh (mln::trait::value_<float>::min) (mln::trait::value_<float>::max) (mln::trait::value_<float>::epsilon) (mln::trait::value_<double>::min) (mln::trait::value_<double>::max) (mln::trait::value_<double>::epsilon): Likewise. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2125 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 06 Aug, 2008 6 commits
-
-
Roland Levillain authored
git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2124 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mln/core/graph_psite.hh, mln/core/line_graph_psite.hh, * mln/core/p_graph_piter.hh, mln/core/p_line_graph_piter.hh: Fix spacing in template definitions. * mln/core/p_graph.hh, mln/core/p_line_graph.hh: Likewise. Fix documentation. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2123 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mln/core/complex_psite.hh, mln/core/p_complex.hh: New. * mln/core/face.hh: s/mln_assertion/mln_precondition/. (mln::face_handle<N, D>::face_handle): Statically ensure N is compatible with D in ctors. * tests/core/p_complex.cc: New test. * tests/core/Makefile.am (check_PROGRAMS): Add p_complex. (p_complex_SOURCES): New. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2122 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mln/core/complex.hh (mln::complex<D>::add_face(const faces_set<N, D>&)): Ensure arguments are consistent with the complex. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2121 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mln/core/complex.hh (mln::complex<D>::nfaces<N>): New. Use it... (mln::complex<D>::add_face): ...here. * mln/core/face.hh (mln::face_handle<N, D>::c, mln::face_handle<N, D>::c_): Rename as... (mln::face_handle<N, D>::cplx, mln::face_handle<N, D>::cplx_): ...these. Adjust users. (operator==(const face_handle<N, D>&, const face_handle<N, D>&)) (operator< (const face_handle<N, D>&, const face_handle<N, D>&)): New. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2120 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mln/core/face.hh (mln::face_handle<N, D>::face_handle): New ctor. (mln::face_handle<N, D>::is_valid): New method. Use it... (mln::face_handle<N, D>::get): ...here. Rename as... (mln::face_handle<N, D>::to_face): ...this. (mln::face_handle<N, D>::face_id_): Make this attribute private. (mln::face_handle<N, D>::c_): Likewise. Turn this reference into a pointer. (mln::face_handle<N, D>::face_handle) (mln::face_handle<N, D>::to_face) (mln::make_face_handle<N, D>): Adjust. (mln::faces_set<N, D>::add): Likewise. Remove spurious FIXME. (mln::face_handle<N, D>::c, mln::face_handle<N, D>::face_id): New accessors. * mln/core/complex.hh (mln::complex<D>::connect_) (mln::internal::lower_dim_faces_set_mixin<N, D>::print) (mln::internal::higher_dim_faces_set_mixin<N, D>::print): Adjust. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2119 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 31 Jul, 2008 4 commits
-
-
Roland Levillain authored
* mln/core/face.hh (mln::internal::lower_dim_faces_mixin<N, D>) (mln::internal::higher_dim_faces_mixin<N, D>): New classes. Use them... (mln::face<N, D>): ...here, as mixins. (mln::face<N, D>::connect_lower_dim_face) (mln::face<N, D>::connect_higher_dim_face) (mln::face<D, D>::connect_lower_dim_face) (mln::face<0, D>::connect_higher_dim_face): Remove, and turn into... (mln::internal::lower_dim_faces_mixin<N, D>::connect_lower_dim_face) (mln::internal::higher_dim_faces_mixin<N, D>::connect_higher_dim_face): ...these (new methods). * mln/core/complex.hh (mln::internal::lower_dim_faces_set_mixin<N, D>) (mln::internal::higher_dim_faces_set_mixin<N, D>): New classes. Use them... (mln::internal::faces_set_mixin<N, D>): ...here, as mixins, and (mln::internal::faces_set_mixin<N, D>::print): Factor using these mixins. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2118 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
dimensions. * mln/core/face.hh (mln::face<D, D>, mln::face<0u, 0u>): New. * mln/core/complex.hh (mln::internal::faces_set_mixin<D, D>) (mln::internal::faces_set_mixin<0u, 0u>): New. (mln::internal::faces_set_mixin<0u, D>::print): Aesthetic change. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2117 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mln/level/memcpy_.hh: Include `cstring'. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2116 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* tests/core/complex.cc: Add the adjacent graph of the complex in comment. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2115 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 30 Jul, 2008 6 commits
-
-
Roland Levillain authored
* mln/core/complex.hh, mln/core/face.hh: New. * tests/core/complex.cc: New test. * tests/core/Makefile.am (check_PROGRAMS): Add complex. (complex_SOURCES): New. Set to complex.cc. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2114 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* apps/statues/Makefile.am: Include trimesh's gluit.mk to link with gluit/OpenGL/GLUT. (AM_LDFLAGS): New. Set to `$(GLFLAGS)'. (LDADD): Append `$(GLLIBS)'. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2113 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* Makefile.am: Compile Swilena only when asked for. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2112 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* configure.ac: Add a new conditional for Darwin-based hosts. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2111 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* libsrc/ICP.cc: Include cstring. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2110 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* configure.ac: Check for Libtool. * utilsrc/Makefile.am (LDADD): Remove `-L$(top_builddir)/gluit'. (GLFLAGS, GLLIBS): Move gluit-related link variables... * gluit/gluit.mk: ...here (new file). * gluit/Makefile.am (lib_LIBRARIES, libgluit_a_SOURCES) * libsrc/Makefile.am (lib_LIBRARIES, libtrimesh_a_SOURCES): Turn into... * gluit/Makefile.am (lib_LTLIBRARIES, libgluit_la_SOURCES) * libsrc/Makefile.am (lib_LTLIBRARIES, libtrimesh_la_SOURCES): ...these. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2109 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 28 Jul, 2008 2 commits
-
-
Roland Levillain authored
* python/Makefile.am (TOOLS_CXXFLAGS, AM_CXXFLAGS): New. Use flags for tools, that use optimization options. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2108 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* morpho.ixx: Wrap mln::morpho::dilation. * image2d_int.i, image2d_int_u8.i: Instantiate it. * python/lena.py: Exercise it. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2107 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
- 27 Jul, 2008 2 commits
-
-
Roland Levillain authored
* pgm.ixx, int_u8.i, image2d_int_u8.i: New. * Makefile.am (EXTRA_DIST): Add pgm.ixx, image2d_int_u8.i and int_u8.i. * fill.ixx, println.ixx: Fix doxygen headers. * image2d_int.i: Typo. * python/lena.py: New test. * python/Makefile.am: Handle modules int_u8 and image2d_int_u8. (top_srcdir): Add top_srcdir and top_builddir into the environment. (TESTS): Add lena.py. * python/swilena.py: Import image2d_int_u8. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2106 4aad255d-cdde-0310-9447-f3009e2ae8c0
-
Roland Levillain authored
* mln/io/pnm/load.hh (mln::io::pnm::read_value(std::ifstream&, V&): Turn into... (mln::io::pnm::read_value(std::ifstream&, value::Scalar<V>&)): ...this. (mln::io::pnm::read_value(std::ifstream&, V&): New overload. * mln/value/int_u8.hh (mln::io::pnm::int_u8): Use a fully qualified type name to help swig wrap this typedef. * mln/io/pgm/save.hh: Typo in comment. git-svn-id: https://svn.lrde.epita.fr/svn/oln/trunk@2105 4aad255d-cdde-0310-9447-f3009e2ae8c0
-