#include <eTess2.h>
Public Member Functions | |
ePoint () | |
ePoint (const eCoord &c) | |
bool | Check () |
bool | operator== (const ePoint &a) const |
bool | operator!= (const ePoint &a) const |
eCoord | operator- (const ePoint &a) const |
eCoord | operator+ (const ePoint &a) const |
REAL | operator * (const ePoint &a) const |
const eCoord & | operator= (const eCoord &a) |
bool | operator== (const eCoord &a) const |
bool | operator!= (const eCoord &a) const |
eCoord | operator- (const eCoord &a) const |
eCoord | operator- () const |
eCoord | operator+ (const eCoord &a) const |
REAL | operator * (const eCoord &a) const |
const eCoord & | operator= (const ePoint &a) |
void | Replace (ePoint *P) |
void | Unlink () |
void | Print (std::ostream &s) const |
Protected Member Functions | |
~ePoint () | |
Friends | |
class | tReferencable< ePoint > |
Definition at line 245 of file eTess2.h.
ePoint::ePoint | ( | const eCoord & | c | ) | [inline] |
ePoint::~ePoint | ( | ) | [inline, protected] |
bool ePoint::Check | ( | ) | [inline] |
Definition at line 253 of file eTess2.h.
References eDual::Check().
00253 {return eDual::Check(0);}
bool ePoint::operator== | ( | const ePoint & | a | ) | const [inline] |
Definition at line 256 of file eTess2.h.
References operator==().
00256 {return eCoord::operator==(a);}
bool ePoint::operator!= | ( | const ePoint & | a | ) | const [inline] |
Definition at line 257 of file eTess2.h.
References operator==().
00257 {return !eCoord::operator==(a);}
eCoord ePoint::operator- | ( | const ePoint & | a | ) | const [inline] |
eCoord ePoint::operator+ | ( | const ePoint & | a | ) | const [inline] |
const eCoord& ePoint::operator= | ( | const eCoord & | a | ) | [inline] |
bool ePoint::operator== | ( | const eCoord & | a | ) | const [inline] |
Definition at line 263 of file eTess2.h.
References operator==().
00263 {return eCoord::operator==(a);}
bool ePoint::operator!= | ( | const eCoord & | a | ) | const [inline] |
Definition at line 264 of file eTess2.h.
References operator==().
00264 {return !eCoord::operator==(a);}
eCoord ePoint::operator- | ( | const eCoord & | a | ) | const [inline] |
eCoord ePoint::operator- | ( | ) | const [inline] |
eCoord ePoint::operator+ | ( | const eCoord & | a | ) | const [inline] |
REAL ePoint::operator * | ( | const eCoord & | a | ) | const [inline] |
const eCoord& ePoint::operator= | ( | const ePoint & | a | ) | [inline] |
void ePoint::Replace | ( | ePoint * | P | ) |
Definition at line 278 of file eGrid.cpp.
References eCoord, eDual::edge, NULL, eHalfEdge::other, eHalfEdge::Point(), eHalfEdge::SetPoint(), and tASSERT.
Referenced by eGrid::DrawLine(), and eHalfEdge::Simplify().
00279 { 00280 tControlledPTR< ePoint > keep( this ); 00281 00282 // if (!(*this==*P)) 00283 // tERR_WARN("Unequal points are going to get exchaned!"); 00284 00285 eHalfEdge *run = edge; 00286 const eHalfEdge *stop = run; 00287 00288 *static_cast<eCoord *>(P) = *this; 00289 00290 do 00291 { 00292 tASSERT(run && run->Point() == this); 00293 run->SetPoint(P); 00294 00295 run = run->other->next; 00296 00297 } 00298 while (stop != run); 00299 00300 edge = NULL; 00301 }
void ePoint::Unlink | ( | ) |
Definition at line 303 of file eGrid.cpp.
References eDual::edge, eHalfEdge::next, NULL, eHalfEdge::other, eHalfEdge::Point(), and tASSERT.
Referenced by eGrid::KillPoint(), and ~ePoint().
00304 { 00305 if (!edge) 00306 return; 00307 00308 eHalfEdge *run = edge; 00309 const eHalfEdge *stop = run; 00310 00311 do 00312 { 00313 tASSERT(run && run->Point() == this && 00314 (!run->next || !run->next->next || run == run->next->next->next)) ; 00315 run = run->next; 00316 if (run) 00317 run= run->next; 00318 if (run) 00319 run = run->other; 00320 } 00321 while (run && stop != run); 00322 00323 edge = NULL; 00324 }
void ePoint::Print | ( | std::ostream & | s | ) | const |
Definition at line 272 of file eGrid.cpp.
References x.
Referenced by operator<<().
00273 { 00274 s << "(" << x << ", " << y << ")"; 00275 }
friend class tReferencable< ePoint > [friend] |