Go to the documentation of this file.
206 BasicPolygon2d::allocator_type alloc;
345 template <
typename T>
357 template <
typename T>
369 template <
typename T>
371 return isCategory<T, traits::PolygonTag>();
393 std::transform(primitive.begin(), primitive.end(), p2d.begin(), utils::to2D<BasicPoint3d>);
397 template <
typename PolygonT>
414 template <
typename PolygonT>
427 template <
typename T,
typename RetT>
428 using IfPoly = std::enable_if_t<traits::isPolygonT<T>(), RetT>;
BasicPolygon2d to2D< BasicPolygon3d >(const BasicPolygon3d &primitive)
const ConstPointType & operator[](size_t idx) const noexcept
returns the point at this position
BasicIterator basicBegin() const noexcept
returns a normal iterator to the internal point type at begin
std::enable_if_t< traits::isPolygonT< PolygonT >), BasicPolygon3d > toBasicPolygon3d(const PolygonT &t)
std::vector< BasicPolygon2d > BasicPolygons2d
size_t numSegments() const noexcept
Returns the number of (geometrically valid) segments.
ConstHybridPolygon2d()=default
BoundingBox2d to2D(const BoundingBox3d &primitive)
Eigen::Vector3d BasicPoint3d
a simple 3d-point
BasicPolygon3d(const BasicLineString3d &other)
BasicIterator basicEnd() const noexcept
returns a normal iterator for the internal point type at end
BasicIterator begin() const noexcept
BasicPoint3d Iterator to begin.
Polygon with access to primitive points.
BasicIterator begin() const noexcept
BasicPoint2d Iterator to begin.
Implementation template class that is common to all non-const types.
BasicPolygon2d(const BasicLineString2d &other)
std::ostream & operator<<(std::ostream &stream, const Attribute &obj)
An immutable clockwise oriented, open (ie start point != end point) polygon in 3d.
BasicIterator end() const noexcept
BasicPoint3d Iterator to past-the-end.
size_t numSegments() const noexcept
Returns the number of (geometrically valid) segments.
const ConstPolygon2d & convert(const T &t) const
BasicPolygon2d basicPolygon() const
create a simple 2d polygon from this (just a vector)
const ConstPointType & back() const noexcept
returns the last point (if it exist)
bool inverted() const noexcept
Returns whether this is an inverted linestring.
BasicPolygon2d basicPolygon() const
create a simple 2d polygon from this (just a vector)
Identifies LineStringPrimitives.
internal::TransformIterator< const_iterator, const BasicPointType > BasicIterator
BasicPointType front() const noexcept
Get first BasicPoint2d.
A normal 2d linestring with immutable data.
An mutable clockwise oriented, open (ie start point != end point) polygon in 2d.
A (basic) 2d polygon with holes inside.
A normal 2d linestring with mutable data.
const std::shared_ptr< const LineStringData > & constData() const
get the internal data of this primitive
Polygon2d(const LineString2d &other)
Conversion from LineString2d. Does not ensure validity of the polygon!
traits::BasicPointT< Point3d > BasicPointType
auto transform(Container &&c, Func f)
Implementation template class that is common to all LineStrings.
BasicPolygon3d basicPolygon() const
create a simple 3d polygon from this (just a vector)
constexpr bool isPolygonT()
BasicPolygon2d toBasicPolygon2d< BasicPolygon3d >(const BasicPolygon3d &t)
Primitive 3d polygon with basic points.
BasicPoints2d BasicLineString2d
BasicPointType back() const noexcept
Get last BasicPoint2d.
const ConstPolygon3d & convert(const T &t) const
const BasicPointType & front() const noexcept
Get first BasicPoint3d.
ConstPolygon3d(const ConstLineString3d &other)
const BasicPointType & back() const noexcept
Get last BasicPoint3d.
BasicPointType operator[](size_t idx) const noexcept
access element at specific position
Eigen::Matrix< double, 2, 1, Eigen::DontAlign > BasicPoint2d
a simple 2d-point
Polygon3d(const LineString3d &other)
Conversion from LineString3d. Does not ensure validity of the polygon!
BasicPolygon2d toBasicPolygon2d< BasicPolygon2d >(const BasicPolygon2d &t)
An immutable clockwise oriented, open (ie start point != end point) polygon in 2d.
const BasicPointType & operator[](size_t idx) const noexcept
access BasicPoint3d at specific position
Polygon with access to primitive points.
BasicPolygon3d basicPolygon() const
create a simple 3d polygon from this (just a vector)
std::vector< BasicPolygon3d > BasicPolygons3d
ConstHybridPolygon3d()=default
size_t size() const noexcept
Return the number of points in this linestring.
const ConstPointType & front() const noexcept
returns the first point (if it exist)
A normal 3d linestring with immutable data.
ConstHybridPolygon2d(const ConstPolygon2d &poly)
Conversion from ConstPolygon2d.
ConstPolygon2d(const ConstLineString2d &other)
Conversion from/to ConstLineString2d.
A mutable clockwise oriented, open (ie start point != end point) polygon in 3d.
std::enable_if_t< traits::isPolygonT< T >(), RetT > IfPoly
ConstHybridPolygon3d(const ConstPolygon3d &poly)
Conversion from ConstPolygon3d.
BasicIterator end() const noexcept
BasicPoint2d Iterator to past-the-end.
std::enable_if_t< traits::isPolygonT< PolygonT >), BasicPolygon2d > toBasicPolygon2d(const PolygonT &t)
BasicPolygon3d toBasicPolygon3d< BasicPolygon3d >(const BasicPolygon3d &t)
Identifies RegulatoryElementPrimitives.
std::shared_ptr< DataType > data() const
A (basic) 2d polygon with holes inside.
A normal 3d linestring with mutable data.
Primitive 2d polygon with basic points.
ConstLineStringImpl(Id id=InvalId, Points3d points=Points3d(), const AttributeMap &attributes=AttributeMap())
Constructs a LineString or similar from an Id and a list of points.
BoundingBox3d to3D(const BoundingBox2d &primitive)
BasicPoints3d BasicLineString3d
lanelet2_core
Author(s): Fabian Poggenhans
autogenerated on Thu Mar 6 2025 03:25:52