Fishnet 2.0.1
Framework for Graph-Based Analysis of GIS Vector Data
Loading...
Searching...
No Matches
fishnet::geometry::IPolygon Concept Reference

Interface for a polygon A polygon is a two-dimensional shape defined by a boundary and zero or more holes. More...

#include <IPolygon.hpp>

Concept definition

template<typename P>
const std::remove_cvref_t<P> & polygon,
const __impl::PolygonStub<typename std::remove_cvref_t<P>::numeric_type> & otherPolygon,
const __impl::RingStub<typename std::remove_cvref_t<P>::numeric_type> & ring,
const __impl::PointStub<typename std::remove_cvref_t<P>::numeric_type> & point,
const __impl::SegmentStub<typename std::remove_cvref_t<P>::numeric_type> & segment,
const __impl::LineStub<typename std::remove_cvref_t<P>::numeric_type> & line
){
{polygon.getBoundary()} -> IRing;
{polygon.getHoles()} -> RingRange;
{polygon.isSimple()} -> std::same_as<bool>;
{polygon.area()} -> std::convertible_to<double>;
{polygon.centroid()} -> IPoint;
{polygon.aaBB()} -> IEnvelope;
{polygon.isInside(point)} -> std::same_as<bool>;
{polygon.isOnBoundary(point)} -> std::same_as<bool>;
{polygon.isOutside(point)} -> std::same_as<bool>;
{polygon.containsInHole(point)} -> std::same_as<bool>;
{polygon.containsInHole(otherPolygon)} -> std::same_as<bool>;
{polygon.contains(point)} -> std::same_as<bool>;
{polygon.contains(segment)} -> std::same_as<bool>;
{polygon.contains(ring)} -> std::same_as<bool>;
{polygon.contains(otherPolygon)} -> std::same_as<bool>;
{polygon.intersects(segment)} -> std::same_as<bool>;
{polygon.intersects(line)} -> std::same_as<bool>;
{polygon.intersections(segment)} -> PointRange;
{polygon.intersections(line)} -> PointRange;
{polygon.crosses(otherPolygon)} -> std::same_as<bool>;
{polygon.touches(otherPolygon)} -> std::same_as<bool>;
{polygon.distance(otherPolygon)} -> std::convertible_to<double>;
}
Definition GeometryBase.hpp:11
Interface for a polygon A polygon is a two-dimensional shape defined by a boundary and zero or more h...
Definition IPolygon.hpp:98
Interface for a ring A ring is a closed loop of segments, forming a boundary of a shape.
Definition IRing.hpp:143

Detailed Description

Interface for a polygon A polygon is a two-dimensional shape defined by a boundary and zero or more holes.

Template Parameters
PPolygon implementation type