Files Classes Functions Hierarchy
#include <d4tri.h>
Public Member Functions | |
| uintc | piInverse (uintc gpt) const |
| uintc | piInverse (bool &res, uintc neib) const |
| uintc | niInverse (uintc neib) const |
| uintc | niInverse (bool &res, uintc neib) const |
| d4tri () | |
| d4tri (uintc a, uintc b, uintc c, uintc d, uintc na=0, uintc nb=0, uintc nc=0, uintc nd=0) | |
| void | construct (uintc a, uintc b, uintc c, uintc d, uintc na, uintc nb, uintc nc, uintc nd) |
| void | getanticlockwiseface (uint &a, uint &b, uint &c, uintc face) const |
| void | getclockwiseface (uint &a, uint &b, uint &c, uintc face) const |
| boolc | isonboundary () const |
| boolc | isavertex (uintc gpt) const |
| void | setnull () |
| boolc | isnull () const |
| boolc | hassamepoints (d4tri const &w) const |
| void | niReset (uintc from, uintc to) |
| uint & | niFrompiInverse (uintc gpt) |
| ostream & | print (ostream &os) const |
Public Attributes | |
| uint | pi [4] |
| uint | ni [4] |
Definition at line 13 of file d4tri.h.
| d4tri::d4tri | ( | ) |
Definition at line 236 of file d4tri.cpp.
Referenced by d4mingreedy2::eval(), and d4tess::tet2to3_().
00242 { 00243 switch (face) 00244 { 00245 case 0: 00246 a=2; b=1; c=3; 00247 break; 00248 00249 case 1: 00250 a=0; b=2; c=3; 00251 break; 00252 00253 case 2: 00254 a=1; b=0; c=3; 00255 break; 00256 00257 case 3: 00258 a=0; b=1; c=2; 00259 break; 00260 00261 default: 00262 assert(false); 00263 } 00264 }
Definition at line 267 of file d4tri.cpp.
Referenced by d4minboundary::eval(), and d4tess::tet2to3().
00273 { 00274 switch (face) 00275 { 00276 case 0: 00277 a=3; b=1; c=2; 00278 break; 00279 00280 case 1: 00281 a=3; b=2; c=0; 00282 break; 00283 00284 case 2: 00285 a=3; b=0; c=1; 00286 break; 00287 00288 case 3: 00289 a=2; b=1; c=0; 00290 break; 00291 00292 default: 00293 assert(false); 00294 } 00295 00296 // uint a2,c2; 00297 // getanticlockwiseface(a2,b,c2,face); 00298 00299 // a=c2; 00300 // c=a2; 00301 }
Definition at line 331 of file d4tri.cpp.
References pi, and sumofpoints().
00332 { 00333 if (sumofpoints()!=w.sumofpoints()) 00334 return false; 00335 00336 for (uint i=0; i<4; ++i) 00337 { 00338 bool res(false); 00339 for (uint k=0; k<4; ++k) 00340 { 00341 if (w.pi[k]==pi[i]) 00342 { 00343 res=true; 00344 k=3; 00345 } 00346 } 00347 if (res==false) 00348 return false; 00349 } 00350 00351 return true; 00352 }
| boolc d4tri::isnull | ( | ) | const |
Definition at line 303 of file d4tri.cpp.
Referenced by writebaseobj::draw(), writewindingobj::draw(), writegridobj::draw(), and writesurfaceobj::draw().
00304 { 00305 for (uint i=0; i<4; ++i) 00306 { 00307 if (pi[i]!=0) 00308 return false; 00309 00310 if (ni[i]!=0) 00311 return false; 00312 } 00313 00314 return true; 00315 }
| boolc d4tri::isonboundary | ( | ) | const |
Definition at line 36 of file d4tri.h.
References ni.
Referenced by d4mingreedy2::eval(), d4minboundary::eval(), d4tess::isconnected(), d4tess::isconvex(), niReset(), d4tess::tet2to3(), d4tess::tet2to3_(), d4tess::tetmovedown(), d4tess::tetmoveleft(), and d4tess::tetmoveright().
00037 { 00038 if (ni[0]==neib) return 0; 00039 if (ni[1]==neib) return 1; 00040 if (ni[2]==neib) return 2; 00041 if (ni[3]==neib) return 3; 00042 00043 assert(false); 00044 return 4; // Return crap. 00045 }
Definition at line 22 of file d4tri.h.
References pi.
Referenced by d4minboundary::eval(), niFrompiInverse(), d4tess::tet2to3(), d4tess::tet2to3_(), d4tess::tetmovedown(), d4tess::tetmoveleft(), and d4tess::tetmoveright().
00023 { 00024 assert(gpt!=0); 00025 00026 if (pi[0]==gpt) return 0; 00027 if (pi[1]==gpt) return 1; 00028 if (pi[2]==gpt) return 2; 00029 if (pi[3]==gpt) return 3; 00030 00031 assert(false); 00032 return 4; // Return crap. 00033 }
| void d4tri::setnull | ( | ) |
Definition at line 20 of file d4tri.h.
Referenced by d4tess::boundaryorient(), d4tri(), d4minboundary::eval(), isnull(), isonboundary(), d4tess::move_terminated(), niFrompiInverse(), niInverse(), niReset(), print(), setnull(), d4tess::tet2to3(), d4tess::tet2to3_(), d4tess::tetmovedown(), d4tess::tetmoveleft(), and d4tess::tetmoveright().
Definition at line 18 of file d4tri.h.
Referenced by d4tri(), writebaseobj::draw(), writewindingobj::draw(), writesimplicesobj::draw(), writegridobj::draw(), writesurfaceobj::draw(), d4mingreedy2::eval(), d4minboundary::eval(), d4tess::getpoints(), hassamepoints(), isavertex(), d4tess::isconvex(), isnull(), d4tess::move_terminated(), piInverse(), print(), setnull(), d4tess::tet2to3(), d4tess::tet2to3_(), d4tess::tetmovedown(), d4tess::tetmoveleft(), and d4tess::tetmoveright().
1.5.8