Ponca  4d2a58fa5c6375adef5c4b208f4d47e016cecd6d
Point Cloud Analysis library
Loading...
Searching...
No Matches
Ponca::ProvidesHeightField Concept Reference

Concept definition

template<typename T>
concept Ponca::ProvidesHeightField = requires(const T ct, typename T::Scalar s, typename T::VectorType v) {
ct.heightField();
{ ct.heightField().height(s, s) } -> std::same_as<typename T::Scalar>;
{ ct.heightField().h_uu() } -> std::same_as<const typename T::Scalar&>;
{ ct.heightField().h_vv() } -> std::same_as<const typename T::Scalar&>;
{ ct.heightField().h_uv() } -> std::same_as<const typename T::Scalar&>;
{ ct.heightField().h_c() } -> std::same_as<const typename T::Scalar&>;
{ ct.heightField().h_uu() } -> std::same_as<const typename T::Scalar&>;
{ ct.heightField().h_uu() } -> std::same_as<const typename T::Scalar&>;
{ ct.heightField().dh_du(s, s) } -> std::same_as<typename T::Scalar>;
{ ct.heightField().dh_dv(s, s) } -> std::same_as<typename T::Scalar>;
{ ct.heightField().d2h_duu(s, s) } -> std::same_as<typename T::Scalar>;
{ ct.heightField().d2h_dvv(s, s) } -> std::same_as<typename T::Scalar>;
{ ct.heightField().d2h_duv(s, s) } -> std::same_as<typename T::Scalar>;
{ ct.heightField().heightTangentULocal(v) } -> std::same_as<typename T::VectorType>;
{ ct.heightField().heightTangentVLocal(v) } -> std::same_as<typename T::VectorType>;
}
Aggregator class used to declare specialized structures using CRTP.
Definition basket.h:260

Detailed Description

Definition at line 153 of file concepts.h.