Classes | Macros | Typedefs | Functions
test_polygon.cpp File Reference
#include <gtest/gtest.h>
#include <boost/geometry/algorithms/perimeter.hpp>
#include <random>
#include "lanelet2_core/geometry/Polygon.h"
#include "lanelet2_core/primitives/CompoundPolygon.h"
#include "lanelet2_core/primitives/Polygon.h"
Include dependency graph for test_polygon.cpp:

Go to the source code of this file.

Classes

class  AllPolygonsTest< T >
 
class  CompoundPolygonTypeTest< T >
 
class  HybridPolygonsTest< T >
 
class  HybridPolygonsTwoDTest< T >
 
class  MutablePolygonsTest< T >
 
class  NonHybridPolygonsTest< T >
 
class  NormalPolygonsTest< T >
 
class  PolygonPoints
 
class  PolygonTypeTest< T >
 
class  PolygonTypeTest< CompoundHybridPolygon2d >
 
class  PolygonTypeTest< CompoundHybridPolygon3d >
 
class  PolygonTypeTest< CompoundPolygon2d >
 
class  PolygonTypeTest< CompoundPolygon3d >
 
class  PrimitivePolygonsTest< T >
 
class  ThreeDAndBasicPolygonsTest< T >
 
class  ThreeDPolygonsTest< T >
 
class  TwoDAndBasicPolygonsTest< T >
 
class  TwoDPolygonsTest< T >
 

Macros

#define TYPED_TEST_SUITE   TYPED_TEST_CASE
 

Typedefs

using AllPolygons = testing::Types< Polygon2d, Polygon3d, ConstPolygon2d, ConstPolygon3d, ConstHybridPolygon2d, ConstHybridPolygon3d, CompoundPolygon2d, CompoundPolygon3d, CompoundHybridPolygon2d, CompoundHybridPolygon3d >
 
using HybridPolygons = testing::Types< ConstHybridPolygon2d, ConstHybridPolygon3d, CompoundHybridPolygon2d, CompoundHybridPolygon3d >
 
using HybridPolygonsTwoD = testing::Types< ConstHybridPolygon2d, CompoundHybridPolygon2d >
 
using MutablePolygons = testing::Types< Polygon2d, Polygon3d >
 
using NonHybridPolygons = testing::Types< Polygon2d, Polygon3d, ConstPolygon2d, ConstPolygon3d, CompoundPolygon2d, CompoundPolygon3d >
 
using NormalPolygons = testing::Types< Polygon2d, Polygon3d, ConstPolygon2d, ConstPolygon3d >
 
using PrimitivePolygons = testing::Types< Polygon2d, Polygon3d, ConstPolygon2d, ConstPolygon3d, ConstHybridPolygon2d, ConstHybridPolygon3d >
 
using ThreeDAndBasicPolygons = testing::Types< BasicPolygon3d, Polygon3d, ConstPolygon3d, ConstHybridPolygon3d, CompoundPolygon3d, CompoundHybridPolygon3d >
 
using ThreeDPolygons = testing::Types< Polygon3d, ConstPolygon3d, ConstHybridPolygon3d, CompoundPolygon3d, CompoundHybridPolygon3d >
 
using TwoDAndBasicPolygons = testing::Types< BasicPolygon2d, Polygon2d, ConstPolygon2d, ConstHybridPolygon2d, CompoundPolygon2d, CompoundHybridPolygon2d >
 
using TwoDPolygons = testing::Types< Polygon2d, ConstPolygon2d, ConstHybridPolygon2d, CompoundPolygon2d, CompoundHybridPolygon2d >
 

Functions

void checkPartitionConsistency (const BasicPolygon2d &poly, const BasicPolygons2d &parts)
 
template<typename PolygonT >
PolygonT composePolygon (std::initializer_list< ConstLineString3d > list)
 
auto crossProd (const Eigen::Matrix< double, 2, 1 > &p1, const Eigen::Matrix< double, 2, 1 > &p2)
 
template<typename T >
auto getZ (const T &p) -> std::enable_if_t<!traits::is2D< T >(), double >
 
bool isConnectionConvex (const BasicPoint2d &seg1, const BasicPoint2d &seg2, const double eps=4 *std::numeric_limits< double >::epsilon())
 
bool isConvex (const BasicPolygon2d &poly)
 
template<typename T >
toPolygon (const Polygon3d &p)
 
template<>
BasicPolygon2d toPolygon< BasicPolygon2d > (const Polygon3d &p)
 
template<>
BasicPolygon3d toPolygon< BasicPolygon3d > (const Polygon3d &p)
 
template<>
ConstPolygon2d toPolygon< ConstPolygon2d > (const Polygon3d &p)
 
template<>
Polygon2d toPolygon< Polygon2d > (const Polygon3d &p)
 
 TYPED_TEST (MutablePolygonsTest, id)
 
 TYPED_TEST (MutablePolygonsTest, readAttributes)
 
 TYPED_TEST (TwoDAndBasicPolygonsTest, bounds2d)
 
 TYPED_TEST (ThreeDAndBasicPolygonsTest, bounds3d)
 
 TYPED_TEST (HybridPolygonsTwoDTest, distance2d)
 
 TYPED_TEST (HybridPolygonsTwoDTest, distancePoint2d)
 
 TYPED_TEST (HybridPolygonsTwoDTest, area)
 
 TYPED_TEST (HybridPolygonsTwoDTest, centroid)
 
 TYPED_TEST (AllPolygonsTest, perimeter)
 
 TYPED_TEST (TwoDPolygonsTest, toBasicPolygon)
 
 TYPED_TEST (TwoDPolygonsTest, convexPartition)
 
 TYPED_TEST (TwoDAndBasicPolygonsTest, triangulate)
 
 TYPED_TEST_SUITE (AllPolygonsTest, AllPolygons)
 
 TYPED_TEST_SUITE (TwoDPolygonsTest, TwoDPolygons)
 
 TYPED_TEST_SUITE (ThreeDPolygonsTest, ThreeDPolygons)
 
 TYPED_TEST_SUITE (TwoDAndBasicPolygonsTest, TwoDAndBasicPolygons)
 
 TYPED_TEST_SUITE (ThreeDAndBasicPolygonsTest, ThreeDAndBasicPolygons)
 
 TYPED_TEST_SUITE (NormalPolygonsTest, NormalPolygons)
 
 TYPED_TEST_SUITE (MutablePolygonsTest, MutablePolygons)
 
 TYPED_TEST_SUITE (PrimitivePolygonsTest, PrimitivePolygons)
 
 TYPED_TEST_SUITE (NonHybridPolygonsTest, NonHybridPolygons)
 
 TYPED_TEST_SUITE (HybridPolygonsTest, HybridPolygons)
 
 TYPED_TEST_SUITE (HybridPolygonsTwoDTest, HybridPolygonsTwoD)
 

Macro Definition Documentation

◆ TYPED_TEST_SUITE

#define TYPED_TEST_SUITE   TYPED_TEST_CASE

Definition at line 210 of file test_polygon.cpp.

Typedef Documentation

◆ AllPolygons

Definition at line 189 of file test_polygon.cpp.

◆ HybridPolygons

Definition at line 205 of file test_polygon.cpp.

◆ HybridPolygonsTwoD

Definition at line 206 of file test_polygon.cpp.

◆ MutablePolygons

using MutablePolygons = testing::Types<Polygon2d, Polygon3d>

Definition at line 199 of file test_polygon.cpp.

◆ NonHybridPolygons

Definition at line 203 of file test_polygon.cpp.

◆ NormalPolygons

Definition at line 190 of file test_polygon.cpp.

◆ PrimitivePolygons

Definition at line 201 of file test_polygon.cpp.

◆ ThreeDAndBasicPolygons

Definition at line 196 of file test_polygon.cpp.

◆ ThreeDPolygons

Definition at line 192 of file test_polygon.cpp.

◆ TwoDAndBasicPolygons

Definition at line 198 of file test_polygon.cpp.

◆ TwoDPolygons

Definition at line 194 of file test_polygon.cpp.

Function Documentation

◆ checkPartitionConsistency()

void checkPartitionConsistency ( const BasicPolygon2d poly,
const BasicPolygons2d parts 
)

Definition at line 305 of file test_polygon.cpp.

◆ composePolygon()

template<typename PolygonT >
PolygonT composePolygon ( std::initializer_list< ConstLineString3d list)

Definition at line 104 of file test_polygon.cpp.

◆ crossProd()

auto crossProd ( const Eigen::Matrix< double, 2, 1 > &  p1,
const Eigen::Matrix< double, 2, 1 > &  p2 
)
inline

Definition at line 286 of file test_polygon.cpp.

◆ getZ()

template<typename T >
auto getZ ( const T &  p) -> std::enable_if_t<!traits::is2D<T>(), double>

Definition at line 134 of file test_polygon.cpp.

◆ isConnectionConvex()

bool isConnectionConvex ( const BasicPoint2d seg1,
const BasicPoint2d seg2,
const double  eps = 4 * std::numeric_limits<double>::epsilon() 
)

Definition at line 290 of file test_polygon.cpp.

◆ isConvex()

bool isConvex ( const BasicPolygon2d poly)

Definition at line 295 of file test_polygon.cpp.

◆ toPolygon()

template<typename T >
T toPolygon ( const Polygon3d p)

Definition at line 12 of file test_polygon.cpp.

◆ toPolygon< BasicPolygon2d >()

template<>
BasicPolygon2d toPolygon< BasicPolygon2d > ( const Polygon3d p)

Definition at line 24 of file test_polygon.cpp.

◆ toPolygon< BasicPolygon3d >()

template<>
BasicPolygon3d toPolygon< BasicPolygon3d > ( const Polygon3d p)

Definition at line 28 of file test_polygon.cpp.

◆ toPolygon< ConstPolygon2d >()

template<>
ConstPolygon2d toPolygon< ConstPolygon2d > ( const Polygon3d p)

Definition at line 20 of file test_polygon.cpp.

◆ toPolygon< Polygon2d >()

template<>
Polygon2d toPolygon< Polygon2d > ( const Polygon3d p)

Definition at line 16 of file test_polygon.cpp.

◆ TYPED_TEST() [1/12]

TYPED_TEST ( MutablePolygonsTest  ,
id   
)

Definition at line 224 of file test_polygon.cpp.

◆ TYPED_TEST() [2/12]

TYPED_TEST ( MutablePolygonsTest  ,
readAttributes   
)

Definition at line 229 of file test_polygon.cpp.

◆ TYPED_TEST() [3/12]

TYPED_TEST ( TwoDAndBasicPolygonsTest  ,
bounds2d   
)

Definition at line 236 of file test_polygon.cpp.

◆ TYPED_TEST() [4/12]

TYPED_TEST ( ThreeDAndBasicPolygonsTest  ,
bounds3d   
)

Definition at line 244 of file test_polygon.cpp.

◆ TYPED_TEST() [5/12]

TYPED_TEST ( HybridPolygonsTwoDTest  ,
distance2d   
)

Definition at line 254 of file test_polygon.cpp.

◆ TYPED_TEST() [6/12]

TYPED_TEST ( HybridPolygonsTwoDTest  ,
distancePoint2d   
)

Definition at line 259 of file test_polygon.cpp.

◆ TYPED_TEST() [7/12]

TYPED_TEST ( HybridPolygonsTwoDTest  ,
area   
)

Definition at line 263 of file test_polygon.cpp.

◆ TYPED_TEST() [8/12]

TYPED_TEST ( HybridPolygonsTwoDTest  ,
centroid   
)

Definition at line 268 of file test_polygon.cpp.

◆ TYPED_TEST() [9/12]

TYPED_TEST ( AllPolygonsTest  ,
perimeter   
)

Definition at line 275 of file test_polygon.cpp.

◆ TYPED_TEST() [10/12]

TYPED_TEST ( TwoDPolygonsTest  ,
toBasicPolygon   
)

Definition at line 280 of file test_polygon.cpp.

◆ TYPED_TEST() [11/12]

TYPED_TEST ( TwoDPolygonsTest  ,
convexPartition   
)

Definition at line 322 of file test_polygon.cpp.

◆ TYPED_TEST() [12/12]

TYPED_TEST ( TwoDAndBasicPolygonsTest  ,
triangulate   
)

Definition at line 341 of file test_polygon.cpp.

◆ TYPED_TEST_SUITE() [1/11]

TYPED_TEST_SUITE ( AllPolygonsTest  ,
AllPolygons   
)

◆ TYPED_TEST_SUITE() [2/11]

TYPED_TEST_SUITE ( TwoDPolygonsTest  ,
TwoDPolygons   
)

◆ TYPED_TEST_SUITE() [3/11]

TYPED_TEST_SUITE ( ThreeDPolygonsTest  ,
ThreeDPolygons   
)

◆ TYPED_TEST_SUITE() [4/11]

TYPED_TEST_SUITE ( TwoDAndBasicPolygonsTest  ,
TwoDAndBasicPolygons   
)

◆ TYPED_TEST_SUITE() [5/11]

TYPED_TEST_SUITE ( ThreeDAndBasicPolygonsTest  ,
ThreeDAndBasicPolygons   
)

◆ TYPED_TEST_SUITE() [6/11]

TYPED_TEST_SUITE ( NormalPolygonsTest  ,
NormalPolygons   
)

◆ TYPED_TEST_SUITE() [7/11]

TYPED_TEST_SUITE ( MutablePolygonsTest  ,
MutablePolygons   
)

◆ TYPED_TEST_SUITE() [8/11]

TYPED_TEST_SUITE ( PrimitivePolygonsTest  ,
PrimitivePolygons   
)

◆ TYPED_TEST_SUITE() [9/11]

TYPED_TEST_SUITE ( NonHybridPolygonsTest  ,
NonHybridPolygons   
)

◆ TYPED_TEST_SUITE() [10/11]

TYPED_TEST_SUITE ( HybridPolygonsTest  ,
HybridPolygons   
)

◆ TYPED_TEST_SUITE() [11/11]

TYPED_TEST_SUITE ( HybridPolygonsTwoDTest  ,
HybridPolygonsTwoD   
)


lanelet2_core
Author(s): Fabian Poggenhans
autogenerated on Tue Jun 6 2023 02:23:32