X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FINTERP_KERNEL%2FGeometric2D%2FInterpKernelGeo2DComposedEdge.hxx;h=8d815c5016ffe70cc5b402f3e0795c7c4455af32;hb=92da77d8da6256ca824faa6bc87cd102a8d4ee17;hp=c3de06e4a0e49f08b1e7406096ecbb14f17d07eb;hpb=1123dccd6613b2e8abba35182759d5c4a11ecc8d;p=tools%2Fmedcoupling.git diff --git a/src/INTERP_KERNEL/Geometric2D/InterpKernelGeo2DComposedEdge.hxx b/src/INTERP_KERNEL/Geometric2D/InterpKernelGeo2DComposedEdge.hxx index c3de06e4a..8d815c501 100644 --- a/src/INTERP_KERNEL/Geometric2D/InterpKernelGeo2DComposedEdge.hxx +++ b/src/INTERP_KERNEL/Geometric2D/InterpKernelGeo2DComposedEdge.hxx @@ -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; @@ -71,6 +76,16 @@ namespace INTERP_KERNEL INTERPKERNEL_EXPORT void dispatchPerimeterExcl(double& partConsidered, double& commonPart) const; INTERPKERNEL_EXPORT double dispatchPerimeterAdv(const ComposedEdge& father, std::vector& result) const; INTERPKERNEL_EXPORT void getAllNodes(std::set& output) const; + INTERPKERNEL_EXPORT void initNodeHitStatus() const; + INTERPKERNEL_EXPORT void applySimilarityOnMyNodes(double xBary, double yBary, double dimChar) const; + INTERPKERNEL_EXPORT void unApplySimilarityOnMyNodes(double xBary, double yBary, double dimChar) const; + INTERPKERNEL_EXPORT void applySimilarityOnMyNodesIfNotAlreadyHit(double xBary, double yBary, double dimChar) const; + INTERPKERNEL_EXPORT void unApplySimilarityOnMyNodesIfNotAlreadyHit(double xBary, double yBary, double dimChar) const; + INTERPKERNEL_EXPORT void initEdgeHitStatus() const; + INTERPKERNEL_EXPORT void applySimilarityOnMyEdges(double xBary, double yBary, double dimChar) const; + INTERPKERNEL_EXPORT void unApplySimilarityOnMyEdges(double xBary, double yBary, double dimChar) const; + INTERPKERNEL_EXPORT void applySimilarityOnMyEdgesIfNotAlreadyHit(double xBary, double yBary, double dimChar) const; + INTERPKERNEL_EXPORT void unApplySimilarityOnMyEdgesIfNotAlreadyHit(double xBary, double yBary, double dimChar) const; INTERPKERNEL_EXPORT void getBarycenter(double *bary, double& weigh) const; INTERPKERNEL_EXPORT bool completed() const { return getEndNode()==getStartNode(); } INTERPKERNEL_EXPORT void setValueAt(int i, Edge *e, bool direction=true);