Interface for a ring A ring is a closed loop of segments, forming a boundary of a shape.
More...
template<typename R>
const std::remove_cvref_t<R> & ring,
const __impl::RingStub<typename std::remove_cvref_t<R>::numeric_type> & otherRing,
const __impl::SegmentStub<typename std::remove_cvref_t<R>::numeric_type> & segment,
const __impl::LineStub<typename std::remove_cvref_t<R>::numeric_type> & line,
const __impl::PointStub<typename std::remove_cvref_t<R>::numeric_type> & point
){
{ring.getPoints()} -> PointRange;
{ring.getBoundary()} -> std::convertible_to<std::remove_cvref_t<R>>;
{ring.getHoles()} -> std::ranges::range;
{ring.area()} -> std::convertible_to<double>;
{ring.centroid()} -> IPoint;
{ring.aaBB()} -> IEnvelope;
{ring.isInside(point)} -> std::same_as<bool>;
{ring.isOnBoundary(point)} -> std::same_as<bool>;
{ring.isOutside(point)} -> std::same_as<bool>;
{ring.contains(point)} -> std::same_as<bool>;
{ring.contains(segment)} -> std::same_as<bool>;
{ring.contains(otherRing)} -> std::same_as<bool>;
{ring.intersects(segment)} -> std::same_as<bool>;
{ring.intersects(line)} -> std::same_as<bool>;
{ring.intersections(segment)} -> PointRange;
{ring.intersections(line)} -> PointRange;
{ring.crosses(otherRing)} -> std::same_as<bool>;
{ring.touches(otherRing)} -> std::same_as<bool>;
{ring.distance(otherRing)} -> std::convertible_to<double>;
}
Definition GeometryBase.hpp:11
Interface for a ring A ring is a closed loop of segments, forming a boundary of a shape.
Definition IRing.hpp:143
Definition ISegment.hpp:141
Interface for a ring A ring is a closed loop of segments, forming a boundary of a shape.
- Template Parameters
-
| R | Ring implementation type |