template<typename T>
T&& obj,
typename RemoveRef<T>::PointType p,
typename RemoveRef<T>::PointType& pR,
typename RemoveRef<T>::ScalarType s,
std::vector<typename RemoveRef<T>::PointType> vecP,
std::vector<typename RemoveRef<T>::ScalarType> vecS) {
typename RemoveRef<T>::ScalarType;
typename RemoveRef<T>::PointType;
typename RemoveRef<T>::Iterator;
typename RemoveRef<T>::ConstIterator;
obj.DIM;
RemoveRef<T>();
RemoveRef<T>(vecP.begin(), vecP.end());
RemoveRef<T>(vecP);
{ obj.size() } -> std::same_as<uint>;
{
obj.point(uint()) } -> PointConcept;
{ obj.sideLength(uint()) } -> std::same_as<decltype(s)>;
{ obj.barycenter() } -> PointConcept;
{ obj.weightedBarycenter(vecS) } -> PointConcept;
{ obj.perimeter() } -> std::same_as<decltype(s)>;
{ obj.area() } -> std::same_as<decltype(s)>;
{ obj.begin() } -> InputIterator<decltype(p)>;
{ obj.end() } -> InputIterator<decltype(p)>;
requires InputRange<T, decltype(p)>;
requires IsConst<T> || requires {
{ obj.resize(uint()) } -> std::same_as<void>;
{ obj.reserve(uint()) } -> std::same_as<void>;
{ obj.clear() } -> std::same_as<void>;
{ obj.pushBack(p) } -> std::same_as<void>;
{ obj.point(uint()) } -> std::same_as<decltype(pR)>;
{ obj.begin() } -> OutputIterator<decltype(p)>;
{ obj.end() } -> OutputIterator<decltype(p)>;
requires OutputRange<T, decltype(p)>;
};
}
A class representing a line segment in n-dimensional space. The class is parameterized by a PointConc...
Definition segment.h:43