X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FINTERP_KERNEL%2FGeometric2D%2FInterpKernelGeo2DComposedEdge.hxx;h=c2e4733eb6b61187ea66ca596c3d4d0e4c4a8ae3;hb=214cb0a3e23e084616ebf247642bfbc43811e26d;hp=e014d59428c5bd882aa325f2ace562aff4d9e349;hpb=872c3f1848696792fb3db8bb5cdcca79095f8b1c;p=tools%2Fmedcoupling.git diff --git a/src/INTERP_KERNEL/Geometric2D/InterpKernelGeo2DComposedEdge.hxx b/src/INTERP_KERNEL/Geometric2D/InterpKernelGeo2DComposedEdge.hxx index e014d5942..c2e4733eb 100644 --- a/src/INTERP_KERNEL/Geometric2D/InterpKernelGeo2DComposedEdge.hxx +++ b/src/INTERP_KERNEL/Geometric2D/InterpKernelGeo2DComposedEdge.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2014 CEA/DEN, EDF R&D +// Copyright (C) 2007-2023 CEA/DEN, EDF R&D // // This library is free software; you can redistribute it and/or // modify it under the terms of the GNU Lesser General Public @@ -37,6 +37,11 @@ namespace INTERP_KERNEL class ElementaryEdge; class IteratorOnComposedEdge; + /** + * A set of quadratic or linear edges, described mainly by their connectivity + * The set is assumed to be connected, but not necessarily closed (i.e. not necessarily forming a closed polygon). + * Some methods however requires a closed form. + */ class ComposedEdge { friend class IteratorOnComposedEdge; @@ -51,7 +56,7 @@ namespace INTERP_KERNEL INTERPKERNEL_EXPORT bool presenceOfOn() const; INTERPKERNEL_EXPORT bool presenceOfQuadraticEdge() const; INTERPKERNEL_EXPORT void initLocations() const; - INTERPKERNEL_EXPORT void initLocationsWithOther(const ComposedEdge& other) const; + INTERPKERNEL_EXPORT static void InitLocationsWithOther(const ComposedEdge& first, const ComposedEdge& other); INTERPKERNEL_EXPORT ComposedEdge *clone() const; INTERPKERNEL_EXPORT bool isNodeIn(Node *n) const; INTERPKERNEL_EXPORT double getArea() const; @@ -100,13 +105,14 @@ namespace INTERP_KERNEL INTERPKERNEL_EXPORT bool changeEndNodeWith(Node *node) const; INTERPKERNEL_EXPORT bool changeStartNodeWith(Node *node) const; INTERPKERNEL_EXPORT void dumpInXfigFile(std::ostream& stream, int resolution, const Bounds& box) const; + INTERPKERNEL_EXPORT void dumpToCout(const std::map& mapp) const; INTERPKERNEL_EXPORT bool isInOrOut(Node *nodeToTest) const; INTERPKERNEL_EXPORT bool isInOrOut2(Node *nodeToTest) const; INTERPKERNEL_EXPORT bool getDirection() const; INTERPKERNEL_EXPORT bool intresincEqCoarse(const Edge *other) const; private: std::list* getListBehind() { return &_sub_edges; } - double isInOrOutAlg(Node *nodeToTest, std::set< IntersectElement >& inOutSwitch) const; + double isInOrOutAlg(Node *nodeToTest, const std::set& nodes, std::set< IntersectElement >& inOutSwitch) const; protected: ~ComposedEdge(); private: