#include <InterpKernelGeo2DNode.hxx>
Public Member Functions | |
| Node (double x, double y) | |
| Node (const double *coords) | |
| Node (std::istream &stream) | |
| void | incrRef () const |
| bool | decrRef () |
| void | initLocs () const |
| void | setLoc (TypeOfLocInPolygon loc) const |
| TypeOfLocInPolygon | getLoc () const |
| void | declareIn () const |
| void | declareOn () const |
| void | declareOnLim () const |
| void | declareOut () |
| void | declareOnTangent () |
| operator const double * () const | |
| bool | isEqual (const Node &other) const |
| double | getSlope (const Node &other) const |
| bool | isEqualAndKeepTrack (const Node &other, std::vector< Node * > &track) const |
| void | dumpInXfigFile (std::ostream &stream, int resolution, const Bounds &box) const |
| double | distanceWithSq (const Node &other) const |
| double | operator[] (int i) const |
| void | setNewCoords (double x, double y) |
| use with caution | |
| void | applySimilarity (double xBary, double yBary, double dimChar) |
Static Public Member Functions | |
| static double | computeSlope (const double *pt1, const double *pt2) |
| static double | computeAngle (const double *pt1, const double *pt2) |
| static double | dot (const double *vect1, const double *vect2) |
| static double | sign (double val) |
| static double | norm (const double *vect) |
| static bool | areDoubleEquals (double a, double b) |
| static bool | areDoubleEqualsWP (double a, double b, double k) |
| idem areDoubleEquals except that precision of comparison is modified. | |
| static double | distanceBtw2Pt (const double *a, const double *b) |
| static double | distanceBtw2PtSq (const double *a, const double *b) |
Protected Member Functions | |
| ~Node () | |
Protected Attributes | |
| unsigned char | _cnt |
| TypeOfLocInPolygon | _loc |
| double | _coords [2] |
As nodes can be shared between edges it is dealed with ref counting.
References INTERP_KERNEL.Node._coords.
| Node::Node | ( | const double * | coords | ) |
References INTERP_KERNEL.Node._coords.
| Node::Node | ( | std::istream & | stream | ) |
References INTERP_KERNEL.Node._coords.
| Node::~Node | ( | ) | [protected] |
| void INTERP_KERNEL.Node.incrRef | ( | ) | const |
| bool Node::decrRef | ( | ) |
References INTERP_KERNEL.Node._cnt, and testMEDMEM.ret.
| void INTERP_KERNEL.Node.initLocs | ( | ) | const |
References INTERP_KERNEL.UNKNOWN.
| void INTERP_KERNEL.Node.setLoc | ( | TypeOfLocInPolygon | loc | ) | const |
| TypeOfLocInPolygon INTERP_KERNEL.Node.getLoc | ( | ) | const |
| void INTERP_KERNEL.Node.declareIn | ( | ) | const |
References INTERP_KERNEL.IN_1, and INTERP_KERNEL.UNKNOWN.
| void INTERP_KERNEL.Node.declareOn | ( | ) | const |
References INTERP_KERNEL.ON_1, and INTERP_KERNEL.UNKNOWN.
| void INTERP_KERNEL.Node.declareOnLim | ( | ) | const |
References INTERP_KERNEL.ON_1, INTERP_KERNEL.ON_LIM_1, and INTERP_KERNEL.UNKNOWN.
| void INTERP_KERNEL.Node.declareOut | ( | ) |
References INTERP_KERNEL.OUT_1, and INTERP_KERNEL.UNKNOWN.
| void INTERP_KERNEL.Node.declareOnTangent | ( | ) |
References INTERP_KERNEL.ON_TANG_1.
| INTERP_KERNEL.Node.operator const double * | ( | ) | const |
| bool Node::isEqual | ( | const Node & | other | ) | const |
References INTERP_KERNEL.Node.areDoubleEquals(), and testMEDMEM.ret.
References INTERP_KERNEL.Node.computeSlope().
Convenient method. Equivalent to isEqual method. In case of true is returned, '&other' is added in 'track' container.
References INTERP_KERNEL.Node.isEqual(), and testMEDMEM.ret.
References INTERP_KERNEL.Node._coords.
WARNING different from 'computeAngle' method ! The returned value are not in the same interval ! Here in -Pi/2; Pi/2. Typically this method returns the same value by exchanging pt1 and pt2. Use in process of detection of a point in or not in polygon.
References INTERP_KERNEL.Node.norm(), testMEDMEM.ret, and INTERP_KERNEL.EdgeArcCircle.safeAcos().
WARNING different from 'computeSlope' method. Here angle in -Pi;Pi is returned. This method is anti-symetric.
References INTERP_KERNEL.EdgeArcCircle.getAbsoluteAngleOfNormalizedVect(), and INTERP_KERNEL.Node.norm().
apply a Similarity transformation on this.
| xBary | is the opposite of the X translation to do. |
| yBary | is the opposite of the Y translation to do. |
| dimChar | is the reduction factor. |
References INTERP_KERNEL.Node._coords.
References INTERP_KERNEL.QUADRATIC_PLANAR._precision.
idem areDoubleEquals except that precision of comparison is modified.
References INTERP_KERNEL.QUADRATIC_PLANAR._precision.
unsigned char INTERP_KERNEL.Node._cnt [mutable, protected] |
TypeOfLocInPolygon INTERP_KERNEL.Node._loc [mutable, protected] |
double INTERP_KERNEL.Node._coords[2] [protected] |