From b073a2356b7c1a4e57ad7f1d2da6a91e9f18b557 Mon Sep 17 00:00:00 2001 From: Andreas Fabri Date: Mon, 1 Sep 2008 13:50:09 +0000 Subject: [PATCH] Incorporated reviewers remarks --- .../Qt/ConstrainedTriangulationGraphicsItem.h | 45 +++++++++++++------ GraphicsView/include/CGAL/Qt/Converter.h | 2 +- .../CGAL/Qt/TriangulationGraphicsItem.h | 4 +- 3 files changed, 34 insertions(+), 17 deletions(-) diff --git a/GraphicsView/include/CGAL/Qt/ConstrainedTriangulationGraphicsItem.h b/GraphicsView/include/CGAL/Qt/ConstrainedTriangulationGraphicsItem.h index c68052c8c50..366ff76436a 100644 --- a/GraphicsView/include/CGAL/Qt/ConstrainedTriangulationGraphicsItem.h +++ b/GraphicsView/include/CGAL/Qt/ConstrainedTriangulationGraphicsItem.h @@ -17,7 +17,7 @@ class ConstrainedTriangulationGraphicsItem : public TriangulationGraphicsItem typedef typename T::Geom_traits Geom_traits; public: ConstrainedTriangulationGraphicsItem(T * t_) - : TriangulationGraphicsItem(t_) + : TriangulationGraphicsItem(t_), visible_constraints(true) { constraints_pen = this->edgesPen(); constraints_pen.setColor(::Qt::red); @@ -35,10 +35,25 @@ public: constraints_pen = pen; } + bool visibleConstraints() const + { + return visible_constraints; + } + + void setvisibleConstraints(const bool b) + { + visible_constraints = b; + update(); + } + protected: void drawAll(QPainter *painter); QPen constraints_pen; + +private: + bool visible_constraints; + }; template @@ -46,18 +61,19 @@ void ConstrainedTriangulationGraphicsItem::drawAll(QPainter *painter) { this->painterostream = PainterOstream(painter); - if(this->drawEdges()) { - for(typename T::Finite_edges_iterator eit = this->t->finite_edges_begin(); - eit != this->t->finite_edges_end(); - ++eit){ - if(this->t->is_constrained(*eit)){ - painter->setPen(constraintsPen()); - } else { - painter->setPen(this->edgesPen()); - } + for(typename T::Finite_edges_iterator eit = this->t->finite_edges_begin(); + eit != this->t->finite_edges_end(); + ++eit){ + if(this->t->is_constrained(*eit)){ + painter->setPen(constraintsPen()); + } else { + painter->setPen(this->edgesPen()); + } + if(this->visibleEdges() || this->visibleConstraints()){ this->painterostream << this->t->segment(*eit); } } + this->paintVertices(painter); } @@ -66,16 +82,17 @@ void ConstrainedTriangulationGraphicsItem::operator()(typename T::Face_handle fh) { for (int i=0; i<3; i++) { - if (this->drawEdges() && - ( fh < fh->neighbor(i) || this->t->is_infinite(fh->neighbor(i)) ) ) { + if ( fh < fh->neighbor(i) || this->t->is_infinite(fh->neighbor(i)) ) { if(this->t->is_constrained(typename T::Edge(fh,i))){ this->m_painter->setPen(constraintsPen()); } else { this->m_painter->setPen(this->edgesPen()); } - this->painterostream << this->t->segment(fh,i); + if(this->visibleEdges() || this->visibleConstraints()){ + this->painterostream << this->t->segment(fh,i); + } } - if(this->drawVertices()) { + if(this->visibleVertices()) { paintOneVertex(fh->vertex(i)->point()); } } diff --git a/GraphicsView/include/CGAL/Qt/Converter.h b/GraphicsView/include/CGAL/Qt/Converter.h index ee23518b30d..8d08d0a4524 100644 --- a/GraphicsView/include/CGAL/Qt/Converter.h +++ b/GraphicsView/include/CGAL/Qt/Converter.h @@ -103,7 +103,7 @@ public: if(const Segment_2 *s = CGAL::object_cast(&o)){ return this->operator()(*s); } else if(const Point_2 *p = CGAL::object_cast(&o)){ - return QLineF(operator()(p), operator()(p)); + return QLineF(operator()(*p), operator()(*p)); } return QLineF(); } diff --git a/GraphicsView/include/CGAL/Qt/TriangulationGraphicsItem.h b/GraphicsView/include/CGAL/Qt/TriangulationGraphicsItem.h index 091cb731a2c..1e7739ccb40 100644 --- a/GraphicsView/include/CGAL/Qt/TriangulationGraphicsItem.h +++ b/GraphicsView/include/CGAL/Qt/TriangulationGraphicsItem.h @@ -143,7 +143,7 @@ void TriangulationGraphicsItem::drawAll(QPainter *painter) { painterostream = PainterOstream(painter); - if(drawEdges()) { + if(visibleEdges()) { for(typename T::Finite_edges_iterator eit = t->finite_edges_begin(); eit != t->finite_edges_end(); ++eit){ @@ -157,7 +157,7 @@ template void TriangulationGraphicsItem::paintVertices(QPainter *painter) { - if(drawVertices()) { + if(visibleVertices()) { Converter convert; painter->setPen(verticesPen());