#include <GQ_Edge.h>
|
void | init (int i) |
|
GQ_Edge * | root () |
|
const GQ_Edge * | root () const |
|
void | setData (void *org, void *dest, void *left, void *right) |
|
GQ_Edge * | rotN (int n) |
|
const GQ_Edge * | rotN (int n) const |
|
GQ_Edge * | rot () |
|
const GQ_Edge * | rot () const |
|
GQ_Edge * | sym () |
|
const GQ_Edge * | sym () const |
|
GQ_Edge * | irot () |
|
const GQ_Edge * | irot () const |
|
GQ_Edge *& | onext () |
|
const GQ_Edge * | onext () const |
|
GQ_Edge * | oprev () |
|
const GQ_Edge * | oprev () const |
|
GQ_Edge * | dnext () |
|
const GQ_Edge * | dnext () const |
|
GQ_Edge * | dprev () |
|
const GQ_Edge * | dprev () const |
|
GQ_Edge * | lnext () |
|
const GQ_Edge * | lnext () const |
|
GQ_Edge * | lprev () |
|
const GQ_Edge * | lprev () const |
|
GQ_Edge * | rnext () |
|
const GQ_Edge * | rnext () const |
|
GQ_Edge *& | rprev () |
|
const GQ_Edge * | rprev () const |
|
void *& | org () |
| Get the origin of the edge. Needs to be cast to a GQ_Point. More...
|
|
const void * | org () const |
|
GQ_Point * | orgPoint () const |
|
void *& | dest () |
| Get the destination of the edge. Needs to be cast to a GQ_Point. More...
|
|
const void * | dest () const |
|
GQ_Point * | destPoint () const |
|
void * | safeDest () |
|
void *& | left () |
| Get the face on the left of an edge. Needs to be cast to a GQ_Face. More...
|
|
const void * | left () const |
|
GQ_Face * | leftFace () const |
|
void *& | right () |
| Get the face on the right of an edge. Needs to be cast to a GQ_Face. More...
|
|
const void * | right () const |
|
GQ_Face * | rightFace () const |
|
void | splice (GQ_Edge *b) |
|
void | connect (GQ_Edge *a, GQ_Edge *b) |
|
void | connect (GQ_Point *org1, GQ_Edge *b) |
|
void | connect (GQ_Edge *b) |
|
void | disconnectOrg () |
|
void | disconnect () |
| Disconnect completely. More...
|
|
void | swap () |
|
int | isBridge () const |
|
int | isShare () const |
|
int | isBoundary () const |
|
int | intersectPlane (UT_Vector3 &nml, float d, float &t, int donml=1) |
|
int | intersect (GQ_Point *pt) |
|
int | intersect (GQ_Edge *edge) |
|
int | intersect (GQ_Point *org, GQ_Point *dest) |
|
int | intersect (GQ_Face *face, float &t) |
|
void | setFlags (unsigned mask) |
|
unsigned | getFlags (unsigned mask=~0) const |
|
void | addFlags (unsigned mask) |
|
void | clearFlags (unsigned mask=~0) |
|
int | index () const |
|
| operator GA_Edge () |
| Cast operator into GA_Edge. More...
|
|
| operator GA_Edge () const |
|
std::ostream & | save (std::ostream &os) const |
|
Definition at line 120 of file GQ_Edge.h.
void GQ_Edge::addFlags |
( |
unsigned |
mask | ) |
|
|
inline |
void GQ_Edge::clearFlags |
( |
unsigned |
mask = ~0 | ) |
|
|
inline |
Get the destination of the edge. Needs to be cast to a GQ_Point.
Definition at line 181 of file GQ_Edge.h.
const void* GQ_Edge::dest |
( |
| ) |
const |
|
inline |
void GQ_Edge::disconnect |
( |
| ) |
|
void GQ_Edge::disconnectOrg |
( |
| ) |
|
const GQ_Edge* GQ_Edge::dnext |
( |
| ) |
const |
|
inline |
const GQ_Edge* GQ_Edge::dprev |
( |
| ) |
const |
|
inline |
unsigned GQ_Edge::getFlags |
( |
unsigned |
mask = ~0 | ) |
const |
|
inline |
int GQ_Edge::index |
( |
| ) |
const |
|
inline |
Our index into GQ_Detail::myEdges array, also used for cross references to other data structures which we don't want to duplicate
Definition at line 293 of file GQ_Edge.h.
Creates a data structure representing a subdivision of the sphere by a single edge with a single face.
Definition at line 125 of file GQ_Edge.h.
const GQ_Edge* GQ_Edge::irot |
( |
| ) |
const |
|
inline |
int GQ_Edge::isBoundary |
( |
| ) |
const |
|
inline |
int GQ_Edge::isBridge |
( |
| ) |
const |
|
inline |
int GQ_Edge::isShare |
( |
| ) |
const |
|
inline |
Get the face on the left of an edge. Needs to be cast to a GQ_Face.
Definition at line 192 of file GQ_Edge.h.
const void* GQ_Edge::left |
( |
| ) |
const |
|
inline |
GQ_Face* GQ_Edge::leftFace |
( |
| ) |
const |
|
inline |
const GQ_Edge* GQ_Edge::lnext |
( |
| ) |
const |
|
inline |
const GQ_Edge* GQ_Edge::lprev |
( |
| ) |
const |
|
inline |
Each edge is able to get at its previous and next edges in either direction (_L_eft, _R_ight, _O_rigin and _Destination)
Definition at line 156 of file GQ_Edge.h.
const GQ_Edge* GQ_Edge::onext |
( |
| ) |
const |
|
inline |
Cast operator into GA_Edge.
Definition at line 296 of file GQ_Edge.h.
GQ_Edge::operator GA_Edge |
( |
| ) |
const |
|
inline |
const GQ_Edge* GQ_Edge::oprev |
( |
| ) |
const |
|
inline |
Get the origin of the edge. Needs to be cast to a GQ_Point.
Definition at line 174 of file GQ_Edge.h.
const void* GQ_Edge::org |
( |
| ) |
const |
|
inline |
void*& GQ_Edge::right |
( |
| ) |
|
|
inline |
Get the face on the right of an edge. Needs to be cast to a GQ_Face.
Definition at line 198 of file GQ_Edge.h.
const void* GQ_Edge::right |
( |
| ) |
const |
|
inline |
GQ_Face* GQ_Edge::rightFace |
( |
| ) |
const |
|
inline |
const GQ_Edge* GQ_Edge::rnext |
( |
| ) |
const |
|
inline |
const GQ_Edge* GQ_Edge::root |
( |
| ) |
const |
|
inline |
const GQ_Edge* GQ_Edge::rot |
( |
| ) |
const |
|
inline |
const GQ_Edge* GQ_Edge::rprev |
( |
| ) |
const |
|
inline |
void* GQ_Edge::safeDest |
( |
| ) |
|
|
inline |
std::ostream& GQ_Edge::save |
( |
std::ostream & |
os | ) |
const |
void GQ_Edge::setFlags |
( |
unsigned |
mask | ) |
|
|
inline |
Given the current quad edge a=this and b, splice affects the topology of the 2 quad edge rings a->org() and b->org() as follows:
- if 2 rings are distinct, they will be combined.
- if 2 rings are exactly the same, it will be broken into 2 separate pieces. The cuts will occur immediately after a and b in counterclockwise order. (Envision a wagon wheel with the spokes as the edges and the centre of the wheel as their common origin. For spokes (edges) a and b on the wheel, the divisions will occur between spoke a and the edge to its left, and spoke b and the edge to its left. Each of the two resulting pieces now forms a ring.)
Note that a->org() and b->org() should be equal for a splice to make sense. This method does not alter a->org() and b->org().
Definition at line 218 of file GQ_Edge.h.
Swap the connecting edge
--- --- |
From / TO \ | — — |
For example, if we have two triangles: b +---—+ +---—+ | /| b|\ | | _/ | L| _ | | e/| | n| ||aLnext | / | -> swap e| \ | | / | x| \ | |/ a | t| | +---—+ +---—+
Get opposite orientation of this edge (symmetry). Returns an edge pointing in the opposite direction.
Definition at line 149 of file GQ_Edge.h.
const GQ_Edge* GQ_Edge::sym |
( |
| ) |
const |
|
inline |
std::ostream& operator<< |
( |
std::ostream & |
os, |
|
|
const GQ_Edge & |
e |
|
) |
| |
|
friend |
The documentation for this class was generated from the following file: