shape_doc 0.1
|
#include <cell2d_list.hpp>
Definition at line 36 of file cell2d_list.hpp.
typedef cell<C,V>::BoundingBox BoundingBox |
Reimplemented from cell2d< C, V >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 38 of file cell2d_list.hpp.
Reimplemented in cell2d_algebraic_curve< C, V >, cell2d_parametric_curve< C, V >, and cell2d_voronoi_site2d< C, V >.
Definition at line 65 of file cell2d.hpp.
Reimplemented in cell2d_algebraic_curve< C, V >, cell2d_voronoi_diagram< C, V >, and cell2d_voronoi_site2d< C, V >.
Definition at line 63 of file cell2d.hpp.
Reimplemented from cell2d< C, V >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 39 of file cell2d_list.hpp.
Reimplemented from cell2d< C, V >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 40 of file cell2d_list.hpp.
cell2d_list | ( | void | ) |
Definition at line 140 of file cell2d_list.hpp.
: m_intersected(false) {}
cell2d_list | ( | double | xmin, |
double | xmax | ||
) |
cell2d_list | ( | double | xmin, |
double | xmax, | ||
double | ymin, | ||
double | ymax | ||
) |
Definition at line 143 of file cell2d_list.hpp.
: cell2d<C,V>(xmin, xmax, ymin, ymax), m_intersected(false) {}
cell2d_list | ( | double | xmin, |
double | xmax, | ||
double | ymin, | ||
double | ymax, | ||
bool | itr | ||
) |
Definition at line 146 of file cell2d_list.hpp.
: cell2d<C,V>(xmin, xmax, ymin, ymax), m_intersected(itr) {}
cell2d_list | ( | const BoundingBox & | bx | ) |
Definition at line 149 of file cell2d_list.hpp.
: cell2d<C,V>(bx), m_intersected(false) {};
~cell2d_list | ( | void | ) | [virtual] |
Definition at line 152 of file cell2d_list.hpp.
BoundingBox boundingBox | ( | ) | const [inline, inherited] |
Definition at line 88 of file cell.hpp.
{ return (BoundingBox)*this; }
virtual Point center | ( | void | ) | const [inline, virtual, inherited] |
Definition at line 281 of file cell2d.hpp.
References mmx::shape::check_overlap(), and SELF.
{ int i; bool flag; //copy horizontally b->e_neighbors= this->e_neighbors ; foreach(SELF* cl,b->e_neighbors) { i= cl->w_neighbors.search(this); cl->w_neighbors[i]= b; } a->w_neighbors= this->w_neighbors ; foreach(SELF* cl,a->w_neighbors) { i= cl->e_neighbors.search(this); cl->e_neighbors[i]= a; } //update vertically foreach(SELF* cl,this->s_neighbors) { flag=false; if ( check_overlap(cl,a,0)) { //assert( cl->ymax()== a->ymin() ); a->s_neighbors<< cl; i= cl->n_neighbors.search(this); cl->n_neighbors[i]= a; flag=true; } if ( check_overlap(cl,b,0) ) { //assert( cl->ymax()== b->ymin() ); b->s_neighbors<< cl; if (!flag) { i= cl->n_neighbors.search(this); cl->n_neighbors[i]= b; } else cl->n_neighbors << b; } } foreach(SELF* cl,this->n_neighbors) { flag=false; if ( check_overlap(cl,a,0)) { a->n_neighbors<< cl; i= cl->s_neighbors.search(this); cl->s_neighbors[i]= a; flag=true; } if ( check_overlap(cl,b,0) ) { b->n_neighbors<< cl; if (!flag) { i= cl->s_neighbors.search(this); cl->s_neighbors[i]= b; } else cl->s_neighbors << b; } } }
Definition at line 346 of file cell2d.hpp.
References mmx::shape::check_overlap(), and SELF.
{ int i; bool flag; //copy vertically a->s_neighbors= this->s_neighbors ; foreach(SELF* cl,a->s_neighbors) { i= cl->n_neighbors.search(this); cl->n_neighbors[i]= a; } b->n_neighbors= this->n_neighbors ; foreach(SELF* cl,b->n_neighbors) { i= cl->s_neighbors.search(this); cl->s_neighbors[i]= b; } //update horizontally foreach(SELF* cl,this->w_neighbors) { flag=false; if ( check_overlap(cl,a,1)) { //assert( cl->xmax()== a->xmin() ); a->w_neighbors<< cl; i= cl->e_neighbors.search(this); cl->e_neighbors[i]= a; flag=true; } if ( check_overlap(cl,b,1) ) { //assert( cl->xmax()== b->xmin() ); b->w_neighbors<< cl; if (!flag) { i= cl->e_neighbors.search(this); cl->e_neighbors[i]= b; } else cl->e_neighbors << b; } } foreach(SELF* cl,this->e_neighbors) { flag=false; if ( check_overlap(cl,a,1)) { a->e_neighbors<< cl; i= cl->w_neighbors.search(this); cl->w_neighbors[i]= a; flag=true; } if ( check_overlap(cl,b,1) ) { b->e_neighbors<< cl; if (!flag) { i= cl->w_neighbors.search(this); cl->w_neighbors[i]= b; } else cl->w_neighbors << b; } } }
bool contains | ( | double | x, |
bool | strict = false |
||
) | [inherited] |
bool contains | ( | double | x, |
double | y, | ||
bool | strict = false |
||
) | [inherited] |
bool contains | ( | double | x, |
double | y, | ||
double | z, | ||
bool | strict = false |
||
) | [inherited] |
int count | ( | void | ) | [inline] |
Definition at line 85 of file cell2d_list.hpp.
References cell2d_list< C, V >::m_objects.
{ return m_objects.size() ; }
void disconnect | ( | ) | [inline, inherited] |
Definition at line 422 of file cell2d.hpp.
{ this->e_neighbors.clear(); this->w_neighbors.clear(); this->n_neighbors.clear(); this->s_neighbors.clear(); }
bool insert_regular | ( | Topology * | s | ) | [virtual] |
Implements cell< C, REF_OF(V) >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 185 of file cell2d_list.hpp.
References cell< C, V >::insert_regular(), and topology< C, V >::insert_singular().
{ foreach(Cell* m, this->m_objects) m->insert_regular(s); if (this->m_singular.size() > 0) foreach(Point* p, this->m_singular) s->insert_singular(p); return true; }
bool insert_singular | ( | Topology * | s | ) | [virtual] |
Implements cell< C, REF_OF(V) >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 193 of file cell2d_list.hpp.
References cell< C, V >::insert_singular().
bounding_box<C,REF_OF(V) >* intersect | ( | const bounding_box< C, REF_OF(V) > & | other | ) | [inherited] |
void intersected | ( | bounding_box< C, REF_OF(V) > * | other | ) | [inherited] |
virtual Seq<Point *> intersections | ( | int | i | ) | const [inline, virtual] |
Reimplemented from cell2d< C, V >.
Definition at line 71 of file cell2d_list.hpp.
References Cell2dAlgebraicCurve, and cell2d_list< C, V >::m_objects.
{ Seq<Point*> l; Cell2dAlgebraicCurve* c; foreach(Cell*m, this->m_objects) { c = dynamic_cast<Cell2dAlgebraicCurve*>(m); l<< c->intersections(i); } return l; }
Seq< typename mmx::shape::cell2d< C, V >::Point * > intersections | ( | ) | const [virtual] |
Reimplemented from cell2d< C, V >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 450 of file cell2d_list.hpp.
References Cell2d.
{ Seq<Point *> s,e,n,w,r; Cell2d* cl; foreach (Cell* m, m_objects) { cl = dynamic_cast<Cell2d*>(m); s<< cl->s_intersections; e<< cl->e_intersections; n<< cl->n_intersections; w<< cl->w_intersections; } s.sort(this->coord<0>); e.sort(this->coord<1>); n.sort(this->coord<0>); w.sort(this->coord<1>); r<<s; r<<e; r<<n.reversed(); r<<w.reversed(); return ( r ); }
bool intersects | ( | bounding_box< C, REF_OF(V) > * | other, |
bool | strict = true |
||
) | [inherited] |
bool is0D | ( | void | ) | const [inline, inherited] |
Definition at line 80 of file bounding_box.hpp.
{ return ((m_xmin == m_xmax) && (m_ymin == m_ymax) && (m_zmin == m_zmax)) ; }
bool is1D | ( | void | ) | const [inline, inherited] |
Definition at line 81 of file bounding_box.hpp.
{ return ((m_xmin != m_xmax) && (m_ymin == m_ymax) && (m_zmin == m_zmax)) ; }
bool is2D | ( | void | ) | const [inline, inherited] |
Definition at line 82 of file bounding_box.hpp.
{ return ((m_xmin != m_xmax) && (m_ymin != m_ymax) && (m_zmin == m_zmax)) ; }
bool is3d | ( | void | ) | const [inline, inherited] |
Definition at line 83 of file bounding_box.hpp.
{ return ((m_xmin != m_xmax) && (m_ymin != m_ymax) && (m_zmin != m_zmax)) ; }
bool is_active | ( | void | ) | [virtual] |
Implements cell< C, REF_OF(V) >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 264 of file cell2d_list.hpp.
References cell< C, V >::is_active().
bool is_border | ( | void | ) | const [inline, inherited] |
Definition at line 121 of file cell2d.hpp.
Referenced by voronoi2d< C, V >::run(), topology2d< C, V >::run(), semialgebraic2d< C, V >::run(), and arrangement2d< C, V >::run().
{ return ( this->s_neighbors.size()==0 || this->e_neighbors.size()==0 || this->n_neighbors.size()==0 || this->w_neighbors.size()==0 ); }
bool is_corner | ( | void | ) | const [inherited] |
Definition at line 431 of file cell2d.hpp.
Referenced by voronoi2d< C, V >::run(), semialgebraic2d< C, V >::run(), and arrangement2d< C, V >::run().
{ if (this->s_neighbors.size()==0 && this->e_neighbors.size()==0 ) return true; else if (this->e_neighbors.size()==0 && this->n_neighbors.size()==0 ) return true; else if (this->n_neighbors.size()==0 && this->w_neighbors.size()==0 ) return true; else if (this->w_neighbors.size()==0 && this->s_neighbors.size()==0 ) return true; return false; }
bool is_intersected | ( | void | ) | [virtual] |
Implements cell< C, REF_OF(V) >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 169 of file cell2d_list.hpp.
{ if(this->m_objects.size() >1 && !m_intersected) { //std::cout<<"Intersecting inside box "<< this <<std::endl; for(unsigned i=0; i<this->m_objects.size();i++) for(unsigned j=i+1; j<this->m_objects.size(); j++) Intersection2dFactory::instance()->compute(this->m_singular, (Shape*)this->m_objects[i], (Shape*)this->m_objects[j], (BoundingBox)*this); m_intersected = true; } if (this->m_singular.size() > 0) return true; return false; }
bool is_regular | ( | void | ) | [virtual] |
Implements cell< C, REF_OF(V) >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 157 of file cell2d_list.hpp.
{ foreach (Cell* m, this->m_objects) if(!m-> is_regular()) return false; if ( is_intersected() ) return ( (this->m_singular.size()<2) && (this->nb_intersect()<5) ); else return (this->nb_intersect()<3) ; }
virtual bool is_touching | ( | void | ) | [inline, virtual] |
Reimplemented in cell2d_intersection< C, V >.
Definition at line 63 of file cell2d_list.hpp.
{return true; };
void join0 | ( | cell2d< C, V > * | b | ) | [inline, inherited] |
Definition at line 267 of file cell2d.hpp.
{ this->e_neighbors << b; b->w_neighbors << this; }
void join1 | ( | cell2d< C, V > * | b | ) | [inline, inherited] |
Definition at line 274 of file cell2d.hpp.
{ b->s_neighbors << this; this->n_neighbors << b; }
unsigned nb_intersect | ( | void | ) | const [virtual] |
Reimplemented from cell2d< C, V >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 271 of file cell2d_list.hpp.
References Cell2d.
Reimplemented from cell2d< C, V >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 421 of file cell2d_list.hpp.
References Cell2d.
{ //Cell2d* cl; foreach( Cell2d *c, this->s_neighbors ) if ( c->intersections(2).member(p) ) { return c; } foreach( Cell2d *c, this->e_neighbors ) if ( c->intersections(3).member(p) ) { return c; } foreach( Cell2d *c, this->n_neighbors ) if ( c->intersections(0).member(p) ) { return c; } foreach( Cell2d *c, this->w_neighbors ) if ( c->intersections(1).member(p) ) { return c; } //std::cout<<"Point ("<<p->x()<<","<<p->y()<<") not found on neighbors of "<< this<<"("<<this->neighbors().size() <<")"<<std::endl; return NULL; }
virtual Seq<cell2d *> neighbors | ( | ) | [inline, virtual, inherited] |
Definition at line 162 of file cell2d.hpp.
Referenced by voronoi2d< C, V >::run(), semialgebraic2d< C, V >::run(), and arrangement2d< C, V >::run().
{ Seq<cell2d *> r; r<< this->s_neighbors; r<< this->e_neighbors; r<< this->n_neighbors; r<< this->w_neighbors; return ( r ); }
double operator() | ( | unsigned | v, |
unsigned | s | ||
) | const [inherited] |
double& operator() | ( | unsigned | v, |
unsigned | s | ||
) | [inherited] |
bounding_box<C,REF_OF(V) >* operator* | ( | const bounding_box< C, REF_OF(V) > & | other | ) | [inline, inherited] |
Definition at line 103 of file bounding_box.hpp.
{ return intersect(other) ; }
bounding_box<C,REF_OF(V) >* operator+ | ( | const bounding_box< C, REF_OF(V) > & | other | ) | [inline, inherited] |
Definition at line 104 of file bounding_box.hpp.
{ return unite(other) ; }
cell2d_list< C, V >::Point * pair | ( | Point * | p, |
int & | sgn | ||
) | [virtual] |
Implements cell2d< C, V >.
Definition at line 300 of file cell2d_list.hpp.
References Cell2d, and Cell2dAlgebraicCurve.
{ if ( this->is_intersected() ) { // //std::cout<<"Reached intersection cell "<< *this<<std::endl; // std::cout<<"p= "<< *p <<std::endl; //foreach (Point*q, this->intersections() ) //std::cout<<"q= "<< *q <<std::endl; Seq<Point*> l0,l1,l2,l3; Cell2dAlgebraicCurve* c, *v(NULL); double ev(0); int i, u(0); foreach (Cell* m, m_objects) { c = dynamic_cast<Cell2dAlgebraicCurve*>(m); int * sz = c->m_polynomial.rep().szs(); int * st = c->m_polynomial.rep().str(); l0<< c->s_intersections; if (c->s_intersections.member(p)) {u=0; ev= (c->m_polynomial[0] >0 ? 1:-1); v=c;} l1<< c->e_intersections; if (c->e_intersections.member(p)) {u=1; ev= (c->m_polynomial[(sz[0]-1)*st[0]] >0 ? 1:-1); v=c;} l2<< c->n_intersections; if (c->n_intersections.member(p)) {u=2;ev=(c->m_polynomial[sz[0]*sz[1]-1]>0 ? 1:-1); v=c;} l3<< c->w_intersections; if (c->w_intersections.member(p)) {u=3;ev=(c->m_polynomial[(sz[1]-1)*st[1]] >0 ? 1:-1); v=c;} } // std::cout<<"IN: u="<<u<<", ev="<<ev<<std::endl; l0.sort(this->coord<0>); l1.sort(this->coord<1>); l2.sort(this->coord<0>); l3.sort(this->coord<1>); l0<<l1; l0<<l2.reversed(); l0<<l3.reversed(); foreach (Point*q, v->intersections(u) ) { if (q==p) break; ev*=-1; } i=l0.search(p); int a=l0.size(); Point *q; if (ev*sgn>0) q=l0[(i!=0 ?i-1:a-1)]; else q= l0[(i!=a-1 ?i+1:0)]; //std::cout<<"res="<< *q <<std::endl; int ev2(444); foreach (Cell* m, m_objects) { c = dynamic_cast<Cell2dAlgebraicCurve*>(m); int * sz = c->m_polynomial.rep().szs(); int * st = c->m_polynomial.rep().str(); if (c->s_intersections.member(q)) {u=0; ev2= (c->m_polynomial[0] >0 ? 1:-1); v=c;} if (c->e_intersections.member(q)) {u=1; ev2= (c->m_polynomial[(sz[0]-1)*st[0]] >0 ? 1:-1); v=c;} if (c->n_intersections.member(q)) {u=2;ev2=(c->m_polynomial[sz[0]*sz[1]-1]>0 ? 1:-1); v=c;} if (c->w_intersections.member(q)) {u=3;ev2=(c->m_polynomial[(sz[1]-1)*st[1]] >0 ? 1:-1); v=c;} } foreach (Point*w, v->intersections(u) ) { if (q==w) break; ev2*=-1; } // std::cout<<"Entered from branch "<<sgn<<std::endl; if (ev*sgn>0) sgn=-ev2; else sgn=ev2; // std::cout<<"exiting to "<<sgn<<std::endl; // std::cout<<"OUT: u="<<u<<", ev2="<<ev2<<std::endl; return q; } else { Cell2d* c; foreach (Cell* m, m_objects) { c = dynamic_cast<Cell2d*>(m); if ( c->intersections().member(p) ) return c->pair(p,sgn); } } std::cout<<"... Cell list pair trouble"<<std::endl; return NULL; }
void push_back | ( | cell< C, V > * | cv | ) | [inline] |
Definition at line 84 of file cell2d_list.hpp.
References cell2d_list< C, V >::m_objects.
{ m_objects.push_back(cv); };
void set_xmax | ( | double | x | ) | [inline, inherited] |
Definition at line 74 of file bounding_box.hpp.
{ this->m_xmax = x ; }
void set_xmin | ( | double | x | ) | [inline, inherited] |
Definition at line 73 of file bounding_box.hpp.
{ this->m_xmin = x ; }
void set_ymax | ( | double | y | ) | [inline, inherited] |
Definition at line 76 of file bounding_box.hpp.
{ this->m_ymax = y ; }
void set_ymin | ( | double | y | ) | [inline, inherited] |
Definition at line 75 of file bounding_box.hpp.
{ this->m_ymin = y ; }
void set_zmax | ( | double | z | ) | [inline, inherited] |
Definition at line 78 of file bounding_box.hpp.
{ this->m_zmax = z ; }
void set_zmin | ( | double | z | ) | [inline, inherited] |
Definition at line 77 of file bounding_box.hpp.
{ this->m_zmin = z ; }
int side | ( | Point * | p | ) | [inline, inherited] |
Definition at line 140 of file cell2d.hpp.
{ Seq<Point*> all; int s,i,a; s = s_intersections.size(); all = this->intersections(); a = all.size(); i = all.search(p); if (i==-1) return (-1); else return ( i<s ? 0 : ( i<s+(int)e_intersections.size() ? 1 : ( i<a-(int)w_intersections.size() ? 2 : 3 ))); }
double size | ( | void | ) | [inherited] |
void split_position | ( | int & | v, |
double & | t | ||
) | [virtual] |
Reimplemented from cell2d< C, V >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 199 of file cell2d_list.hpp.
cell2d_list< C, V >::Point * starting_point | ( | int | sgn | ) | [virtual] |
Implements cell2d< C, V >.
Reimplemented in cell2d_intersection< C, V >.
Definition at line 406 of file cell2d_list.hpp.
References Cell2d, and cell< C, V >::is_active().
Reimplemented in cell2d_intersection< C, V >.
Definition at line 212 of file cell2d_list.hpp.
References Cell2dList, cell< C, V >::is_active(), mmx::shape_ssi::left(), mmx::shape_ssi::right(), cell< C, V >::subdivide(), point< C, V, N >::x(), and point< C, V, N >::y().
{ typedef Cell2dList Cell_t; if(v==1) { left =(Cell*)new Cell_t(this->xmin(), this->xmax(), this->ymin(), c, m_intersected) ; right=(Cell*)new Cell_t(this->xmin(), this->xmax(), c, this->ymax(), m_intersected) ; foreach(Point * p, this->m_singular) { if(p->y() <= c) ((Cell_t*) left)->m_singular << p ; else ((Cell_t*)right)->m_singular << p ; } /* Update neighbors */ this->connect1( (Cell_t*)left, (Cell_t*)right); ((Cell_t*)left)->join1((Cell_t*)right); } else {//v==0 left = (Cell*)new Cell_t(this->xmin(), c, this->ymin(), this->ymax(), m_intersected) ; right= (Cell*)new Cell_t(c, this->xmax(), this->ymin(), this->ymax(), m_intersected) ; foreach(Point * p, this->m_singular) { if(p->x() <= c ) ((Cell_t*)left)->m_singular << p ; else ((Cell_t*)right)->m_singular << p ; } /* Update neighbors */ this->connect0((Cell_t*)left, (Cell_t*)right); ((Cell_t*)left)->join0((Cell_t*)right); } /* disconnect parent */ this->disconnect( ); Cell * cv_left, * cv_right; foreach(Cell* cv, this->m_objects) { cv->subdivide( cv_left, cv_right); if(cv_left->is_active()) ((Cell_t*)left)->m_objects<<cv_left; if(cv_right->is_active()) ((Cell_t*)right)->m_objects<<cv_right; } }
virtual int subdivide | ( | cell< C, REF_OF(V) > *& | left, |
cell< C, REF_OF(V) > *& | right | ||
) | [virtual, inherited] |
virtual void subdivide | ( | cell< C, REF_OF(V) > *& | left, |
cell< C, REF_OF(V) > *& | right, | ||
int | v, | ||
double | s | ||
) | [pure virtual, inherited] |
bounding_box<C,REF_OF(V) >* unite | ( | bounding_box< C, REF_OF(V) > * | other | ) | [inherited] |
void united | ( | bounding_box< C, REF_OF(V) > * | other | ) | [inherited] |
bool unites | ( | bounding_box< C, REF_OF(V) > * | other, |
bool | strict = true |
||
) | [inherited] |
double xmax | ( | void | ) | const [inline, inherited] |
Definition at line 63 of file bounding_box.hpp.
{ return m_xmax ; }
double xmax | ( | void | ) | [inline, inherited] |
Definition at line 56 of file bounding_box.hpp.
Referenced by cell2d_voronoi_diagram< C, V >::compute_boundary().
{ return m_xmax ; }
double xmin | ( | void | ) | const [inline, inherited] |
Definition at line 62 of file bounding_box.hpp.
{ return m_xmin ; }
double xmin | ( | void | ) | [inline, inherited] |
Definition at line 55 of file bounding_box.hpp.
Referenced by cell2d_voronoi_diagram< C, V >::compute_boundary().
{ return m_xmin ; }
double xsize | ( | void | ) | const [inline, inherited] |
Definition at line 69 of file bounding_box.hpp.
double ymax | ( | void | ) | [inline, inherited] |
Definition at line 58 of file bounding_box.hpp.
Referenced by cell2d_voronoi_diagram< C, V >::compute_boundary().
{ return m_ymax ; }
double ymax | ( | void | ) | const [inline, inherited] |
Definition at line 65 of file bounding_box.hpp.
{ return m_ymax ; }
double ymin | ( | void | ) | const [inline, inherited] |
Definition at line 64 of file bounding_box.hpp.
{ return m_ymin ; }
double ymin | ( | void | ) | [inline, inherited] |
Definition at line 57 of file bounding_box.hpp.
Referenced by cell2d_voronoi_diagram< C, V >::compute_boundary().
{ return m_ymin ; }
double ysize | ( | void | ) | const [inline, inherited] |
Definition at line 70 of file bounding_box.hpp.
double zmax | ( | void | ) | [inline, inherited] |
Definition at line 60 of file bounding_box.hpp.
{ return m_zmax ; }
double zmax | ( | void | ) | const [inline, inherited] |
Definition at line 67 of file bounding_box.hpp.
{ return m_zmax ; }
double zmin | ( | void | ) | [inline, inherited] |
Definition at line 59 of file bounding_box.hpp.
{ return m_zmin ; }
double zmin | ( | void | ) | const [inline, inherited] |
Definition at line 66 of file bounding_box.hpp.
{ return m_zmin ; }
double zsize | ( | void | ) | const [inline, inherited] |
Definition at line 71 of file bounding_box.hpp.
Seq<Point *> e_intersections [inherited] |
Definition at line 130 of file cell2d.hpp.
Referenced by cell2d< C, REF_OF(V) >::intersections(), cell2d< C, REF_OF(V) >::nb_intersect(), cell2d< C, REF_OF(V) >::neighbor(), and cell2d< C, REF_OF(V) >::side().
Seq<cell2d *> e_neighbors [inherited] |
Definition at line 171 of file cell2d.hpp.
Referenced by cell2d_voronoi_diagram< C, V >::compute_boundary(), cell2d< C, REF_OF(V) >::is_border(), cell2d< C, REF_OF(V) >::neighbor(), cell2d< C, REF_OF(V) >::neighbors(), voronoi2d< C, V >::run(), topology2d< C, V >::run(), semialgebraic2d< C, V >::run(), and arrangement2d< C, V >::run().
Definition at line 138 of file cell2d.hpp.
Referenced by voronoi2d< C, V >::run(), and topology2d< C, V >::run().
bool m_intersected [protected] |
Definition at line 91 of file cell2d_list.hpp.
Definition at line 88 of file cell2d_list.hpp.
Referenced by cell2d_list< C, V >::count(), cell2d_list< C, V >::intersections(), and cell2d_list< C, V >::push_back().
Seq<Point *> m_singular [inherited] |
Definition at line 133 of file cell2d.hpp.
double m_xmax [protected, inherited] |
Definition at line 107 of file bounding_box.hpp.
double m_xmin [protected, inherited] |
Definition at line 107 of file bounding_box.hpp.
double m_ymax [protected, inherited] |
Definition at line 108 of file bounding_box.hpp.
double m_ymin [protected, inherited] |
Definition at line 108 of file bounding_box.hpp.
double m_zmax [protected, inherited] |
Definition at line 109 of file bounding_box.hpp.
double m_zmin [protected, inherited] |
Definition at line 109 of file bounding_box.hpp.
Seq<Point *> n_intersections [inherited] |
Definition at line 131 of file cell2d.hpp.
Referenced by cell2d< C, REF_OF(V) >::intersections(), cell2d< C, REF_OF(V) >::nb_intersect(), and cell2d< C, REF_OF(V) >::neighbor().
Seq<cell2d *> n_neighbors [inherited] |
Definition at line 172 of file cell2d.hpp.
Referenced by cell2d_voronoi_diagram< C, V >::compute_boundary(), cell2d< C, REF_OF(V) >::is_border(), cell2d< C, REF_OF(V) >::neighbor(), cell2d< C, REF_OF(V) >::neighbors(), voronoi2d< C, V >::run(), topology2d< C, V >::run(), semialgebraic2d< C, V >::run(), and arrangement2d< C, V >::run().
Seq<Point *> s_intersections [inherited] |
Definition at line 129 of file cell2d.hpp.
Referenced by cell2d< C, REF_OF(V) >::intersections(), cell2d< C, REF_OF(V) >::nb_intersect(), cell2d< C, REF_OF(V) >::neighbor(), and cell2d< C, REF_OF(V) >::side().
Seq<cell2d *> s_neighbors [inherited] |
Definition at line 170 of file cell2d.hpp.
Referenced by cell2d_voronoi_diagram< C, V >::compute_boundary(), cell2d< C, REF_OF(V) >::is_border(), cell2d< C, REF_OF(V) >::neighbor(), cell2d< C, REF_OF(V) >::neighbors(), voronoi2d< C, V >::run(), topology2d< C, V >::run(), semialgebraic2d< C, V >::run(), and arrangement2d< C, V >::run().
Seq<Point *> w_intersections [inherited] |
Definition at line 132 of file cell2d.hpp.
Referenced by cell2d< C, REF_OF(V) >::intersections(), cell2d< C, REF_OF(V) >::nb_intersect(), cell2d< C, REF_OF(V) >::neighbor(), and cell2d< C, REF_OF(V) >::side().
Seq<cell2d *> w_neighbors [inherited] |
Definition at line 173 of file cell2d.hpp.
Referenced by cell2d_voronoi_diagram< C, V >::compute_boundary(), cell2d< C, REF_OF(V) >::is_border(), cell2d< C, REF_OF(V) >::neighbor(), cell2d< C, REF_OF(V) >::neighbors(), voronoi2d< C, V >::run(), topology2d< C, V >::run(), semialgebraic2d< C, V >::run(), and arrangement2d< C, V >::run().