//Das séries com a opção de progressive_show mostra o ponto no indice ind, se existir void DataPlot::showInd(int ind){ if(ind > current_progressive_show_ind){ //Este for trata do caso em que se avança mais que um indice de uma vez for(int j=current_progressive_show_ind+1;j<=ind;j++){ //Percorre as séries incompletas for (int i=0;i<incomplete_series.size();i++){ QList<QPointF*>*v = incomplete_series[i]; if(j < v->size()){ //É uma série do tipo pontos if(incomplete_series_isPointSeries[i]){ paintPoint(j,incomplete_series_colors[i],v); } else{//É uma série do tipo linha paintLineSeg(j,incomplete_series_colors[i],v); } } } } current_progressive_show_ind=ind; } }
/*! Draw the shape in response to an update event. */ void QgsHighlight::paint( QPainter* p ) { if ( !mGeometry ) { return; } p->setPen( mPen ); p->setBrush( mBrush ); switch ( mGeometry->wkbType() ) { case QGis::WKBPoint: case QGis::WKBPoint25D: { paintPoint( p, mGeometry->asPoint() ); } break; case QGis::WKBMultiPoint: case QGis::WKBMultiPoint25D: { QgsMultiPoint m = mGeometry->asMultiPoint(); for ( int i = 0; i < m.size(); i++ ) { paintPoint( p, m[i] ); } } break; case QGis::WKBLineString: case QGis::WKBLineString25D: { paintLine( p, mGeometry->asPolyline() ); } break; case QGis::WKBMultiLineString: case QGis::WKBMultiLineString25D: { QgsMultiPolyline m = mGeometry->asMultiPolyline(); for ( int i = 0; i < m.size(); i++ ) { paintLine( p, m[i] ); } } break; case QGis::WKBPolygon: case QGis::WKBPolygon25D: { paintPolygon( p, mGeometry->asPolygon() ); } break; case QGis::WKBMultiPolygon: case QGis::WKBMultiPolygon25D: { QgsMultiPolygon m = mGeometry->asMultiPolygon(); for ( int i = 0; i < m.size(); i++ ) { paintPolygon( p, m[i] ); } } break; case QGis::WKBUnknown: default: return; } }