23#ifndef VCL_VIEWS_MESH_COMPONENTS_NORMALS_H
24#define VCL_VIEWS_MESH_COMPONENTS_NORMALS_H
26#include <vclib/concepts/pointers.h>
27#include <vclib/types.h>
35inline constexpr auto normal = [](
auto&& p) ->
decltype(
auto) {
36 if constexpr (IsPointer<
decltype(p)>)
44 constexpr NormalsView() =
default;
46 template<std::ranges::range R>
47 friend constexpr auto operator|(R&& r, NormalsView)
49 return std::forward<R>(r) | std::views::transform(normal);
55inline constexpr detail::NormalsView normals;