Skip to content

DGtal dev meeting (June 25th, 2014)

Jacques-Olivier Lachaud edited this page Jun 25, 2014 · 28 revisions

Package review

General remarks

  • namespace policy
    • create functors::, gathers all functors/functions into this namespace
    • remove detail::, keep details::
    • put all standalone functions into functors:: or details::
    • question: namespace concepts:: ?

Base package

  • Iterators

    • some iterators are well standardized (STL/boost + DGtal): GridCurve, DSL, perhaps some image containers)
    • but most DGtal iterators are not standardized
    • Action (M1): standardize Image, Domain, DigitalSurface
  • "smart" pointers and parameter passing

    • use ConstAlias, Alias, Clone at most
    • Action (S2): unify some smart pointers
    • Action (M1): check other packages (DigitalSurface, etc)
  • Functors:

    • Action (S1) doc on basic functors and functors of other packages.
  • Exceptions ?

    • Action (M2) check some assertions and replace them by exception

Kernel package

Arithmetic package

Geometry package

Shapes package

Topology package

Graph package

Mathematical package

Image package

IO package

Former feature requests

  • Linear algebra (nD) => Matrix, Vector, EigenDecomposition + package dec (linalg)
    • doc missing
  • polytopes (Rn, Qn) => few things, LatticePolytope2D
  • affine transformations => only matrices
  • bindings with morpho math packages => ?
  • image processing packages => binding ITK, DICOM reader, ImageMagick reader/writer
  • geometric primitives (fuzzy, higher degree) => Plane recognition (fuzzy in the Hausdorff sense)
  • graph algorithms => visitors (depth-first, breadth-first, euclidean distance first), watershed, binding boost::graph (DGtal graphs can be wrapped as boost graphs)
  • chamfer or graph-based distances => LUT morpho math tool (not in library)
  • medial axis => DT, Voronoi by separable algos + ?
  • partition models => LabelledMap (K different characteristic functions stored compactly),
  • video => nothing