3 #include "../misc/universal_error.hpp" 12 vertices(other.vertices),
13 neighbors(other.neighbors) {}
23 int neighbor1,
int neighbor2):
62 if(fabs(d)<1e-8*areascale)
70 Intersection.
Set(xi,yi);
71 eps=eps*sqrt(areascale);
double distance(Vector2D const &v1) const
Caluclates the distance from the Vector to v1.
bool SegmentIntersection(Edge const &edge1, Edge const &edge2, Vector2D &Intersection, double eps=1e-8)
Calculates the intersection of two edges.
Vector2D Parallel(Edge const &edge)
Calculates a unit vector parallel to an edge.
Edge(Vector2D const &p1, Vector2D const &p2, int neighbor1, int neighbor2)
Class constructor.
Interface between two cells.
double max(vector< double > const &v)
returns the maximal term in a vector
Edge & operator=(const Edge &other)
copy operator
double ScalarProd(Vector3D const &v1, Vector3D const &v2)
Scalar product of two vectors.
std::pair< Vector2D, Vector2D > vertices
Points at the ends of the edge.
double min(vector< double > const &v)
Returns the minimal term in a vector.
void Set(double ix, double iy)
Set vector components.
std::pair< int, int > neighbors
Neighboring cells.
Vector3D calc_centroid(const Face &face)
Calculates the centroid of aa face.
double DistanceToEdge(Vector2D const &point, Edge const &edge)
Calculates the distance of a point to an edge.
double abs(Vector3D const &v)
Norm of a vector.
double GetLength(void) const
Returns the length of the edge.