27 #ifndef SCRIBO_FILTER_OBJECT_LINKS_NON_ALIGNED_SIMPLE_HH
28 # define SCRIBO_FILTER_OBJECT_LINKS_NON_ALIGNED_SIMPLE_HH
35 # include <mln/util/array.hh>
36 # include <mln/math/abs.hh>
37 # include <mln/math/pi.hh>
39 # include <scribo/core/macros.hh>
40 # include <scribo/core/object_links.hh>
41 # include <scribo/filter/internal/component_aligned.hh>
92 # ifndef MLN_INCLUDE_ONLY
101 mln_trace(
"scribo::filter::object_links_non_aligned_simple");
103 mln_precondition(links.is_valid());
106 const component_set<L>& comps = links.components();
108 object_links<L> output = links.duplicate();
110 float max_alpha_rad = (max_alpha / 180.0f) *
math::pi;
112 for_all_comps(i, comps)
113 if (comps(i).is_valid() && links(i))
114 if (!::scribo::filter::internal::component_aligned_rad(comps, i, links(i),
124 # endif // ! MLN_INCLUDE_ONLY
132 #endif // ! SCRIBO_FILTER_OBJECT_LINKS_NON_ALIGNED_SIMPLE_HH