31 EIGEN_MAKE_ALIGNED_OPERATOR_NEW
33 Polygon(std::vector<Eigen::Vector2d> &vertices,
34 std::vector<std::vector<Eigen::Vector2d>> &hole_vertices,
35 std::vector<TriangleConstPtr> &mesh_triangles,
36 const Eigen::Vector2d &_center = Eigen::Vector2d(0, 0));
37 #if ENABLE_TRIANGULATION 38 Polygon(std::vector<Eigen::Vector2d> &vertices,
39 std::vector<std::vector<Eigen::Vector2d>> &hole_vertices,
int triangulation_method,
40 triangulation::TriangulationQuality qual =
41 triangulation::TriangulationQuality(),
42 const Eigen::Vector2d &_center = Eigen::Vector2d(0, 0));
52 Polygon *
clone()
const;
56 bool rayTrace(
const Eigen::Vector2d &point1,
const Eigen::Vector2d &point2,
57 std::vector<LineSegment> &intersect)
const override;
61 bool isWithin(
const Polygon &poly2)
const;
68 virtual void toString(std::ostringstream &stream)
const;
69 virtual void print(std::ostringstream &stream)
const;
95 std::vector<Eigen::Vector2d> vertices_;
96 std::vector<std::vector<Eigen::Vector2d>> hole_vertices_;
97 std::vector<TriangleConstPtr> mesh_triangles_;
std::vector< Eigen::Vector2d > getVertices() const
bool rayTrace(const Eigen::Vector2d &point1, const Eigen::Vector2d &point2, std::vector< LineSegment > &intersect) const override
std::vector< TriangleConstPtr > getTriangleMesh() const
EIGEN_MAKE_ALIGNED_OPERATOR_NEW Polygon(std::vector< Eigen::Vector2d > &vertices, std::vector< std::vector< Eigen::Vector2d >> &hole_vertices, std::vector< TriangleConstPtr > &mesh_triangles, const Eigen::Vector2d &_center=Eigen::Vector2d(0, 0))
virtual CollisionObjectType getCollisionObjectType() const override
ShapeType type(void) const
Get shape type.
virtual void toString(std::ostringstream &stream) const
ShapeGroup can contain simple shapes.
virtual const solvers::solverBoost::ISolverEntity_Boost * getBoostInterface() const override
std::shared_ptr< const CollisionObject > CollisionObjectConstPtr
std::shared_ptr< const Polygon > PolygonConstPtr
std::vector< std::vector< Eigen::Vector2d > > getHoleVertices() const
std::shared_ptr< const ShapeGroup > ShapeGroupConstPtr
std::shared_ptr< ShapeGroup > ShapeGroupPtr
virtual void print(std::ostringstream &stream) const
Print all parameters of the shape.
virtual CollisionObjectConstPtr timeSlice(int time_idx, CollisionObjectConstPtr shared_ptr_this) const
Base prototype for the shape of an obstacle.
std::shared_ptr< Polygon > PolygonPtr
bool isWithin(const Polygon &poly2) const
Polygon contains Triangles and Vertices.
ShapeGroupConstPtr getTrapezoids() const