+++ /dev/null
-#ifndef __INFORMATION_H__
-#define __INFORMATION_H__
-
-#include "entitycontainer.h"
-#include "line.h"
-#include "arc.h"
-
-/**
- * Class for getting information about entities. This includes
- * also things like the end point of an element which is
- * nearest to a given coordinate.
- * There's no interaction handled in this class.
- * This class is bound to an entity container.
- *
- * @author Andrew Mustun
- */
-class Information
-{
- public:
- Information(EntityContainer & entityContainer);
-
- static bool isDimension(RS2::EntityType type);
- static bool isTrimmable(Entity * e);
- static bool isTrimmable(Entity * e1, Entity * e2);
- Vector getNearestEndpoint(const Vector & point, double * dist = NULL) const;
- Vector getNearestPointOnEntity(const Vector & point, bool onEntity = true,
- double * dist = NULL, Entity ** entity = NULL) const;
- Entity * getNearestEntity(const Vector & point, double * dist = NULL,
- RS2::ResolveLevel level = RS2::ResolveAll) const;
- static VectorSolutions getIntersection(Entity * e1, Entity * e2, bool onEntities = false);
- static VectorSolutions getIntersectionLineLine(Line * e1, Line * e2);
- static VectorSolutions getIntersectionLineArc(Line * line, Arc * arc);
- static VectorSolutions getIntersectionArcArc(Arc * e1, Arc * e2);
- static VectorSolutions getIntersectionLineEllipse(Line * line, Ellipse * ellipse);
- static bool isPointInsideContour(const Vector & point, EntityContainer * contour,
- bool * onContour = NULL);
-
- protected:
- EntityContainer * container;
-};
-
-#endif